Expand the getFieldHeader() utility function to accept arbitrary field names.
@@ -73,8 +73,10 @@ angular.module('form').directive('guacFormField', [function formField() {
var fieldContent = $element.find('.form-field');
/**
- * Produces the translation string for the header of the current
- * field. The translation string will be of the form:
+ * Produces the translation string for the header of the field with
+ * the given name. If no name is supplied, then the name of the
+ * current field will be used. The translation string will be of
+ * the form:
*
* <code>NAMESPACE.FIELD_HEADER_NAME<code>
*
@@ -82,18 +84,24 @@ angular.module('form').directive('guacFormField', [function formField() {
* directive and <code>NAME</code> is the field name transformed
* via translationStringService.canonicalize().
*
+ * @param {String} [name]
+ * The name of the field to produce the translation header
+ * string for. If omitted, the name of the current field will
+ * be used.
+ *
* @returns {String}
* The translation string which produces the translated header
* of the field.
*/
- $scope.getFieldHeader = function getFieldHeader() {
+ $scope.getFieldHeader = function getFieldHeader(name) {
// If no field, or no name, then no header
- if (!$scope.field || !$scope.field.name)
+ name = name || ($scope.field && $scope.field.name);
+ if (!name)
return '';
return translationStringService.canonicalize($scope.namespace || 'MISSING_NAMESPACE')
- + '.FIELD_HEADER_' + translationStringService.canonicalize($scope.field.name);
+ + '.FIELD_HEADER_' + translationStringService.canonicalize(name);
};
