mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-07 05:31:22 +00:00
GUACAMOLE-470: Make getFieldOption() available to all field types.
This commit is contained in:
@@ -24,44 +24,10 @@
|
|||||||
angular.module('form').controller('selectFieldController', ['$scope', '$injector',
|
angular.module('form').controller('selectFieldController', ['$scope', '$injector',
|
||||||
function selectFieldController($scope, $injector) {
|
function selectFieldController($scope, $injector) {
|
||||||
|
|
||||||
// Required services
|
|
||||||
var translationStringService = $injector.get('translationStringService');
|
|
||||||
|
|
||||||
// Interpret undefined/null as empty string
|
// Interpret undefined/null as empty string
|
||||||
$scope.$watch('model', function setModel(model) {
|
$scope.$watch('model', function setModel(model) {
|
||||||
if (!model && model !== '')
|
if (!model && model !== '')
|
||||||
$scope.model = '';
|
$scope.model = '';
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
|
||||||
* Produces the translation string for the given field option
|
|
||||||
* value. The translation string will be of the form:
|
|
||||||
*
|
|
||||||
* <code>NAMESPACE.FIELD_OPTION_NAME_VALUE<code>
|
|
||||||
*
|
|
||||||
* where <code>NAMESPACE</code> is the namespace provided to the
|
|
||||||
* directive, <code>NAME</code> is the field name transformed
|
|
||||||
* via translationStringService.canonicalize(), and
|
|
||||||
* <code>VALUE</code> is the option value transformed via
|
|
||||||
* translationStringService.canonicalize()
|
|
||||||
*
|
|
||||||
* @param {String} value
|
|
||||||
* The name of the option value.
|
|
||||||
*
|
|
||||||
* @returns {String}
|
|
||||||
* The translation string which produces the translated name of the
|
|
||||||
* value specified.
|
|
||||||
*/
|
|
||||||
$scope.getFieldOption = function getFieldOption(value) {
|
|
||||||
|
|
||||||
// If no field, or no value, then no corresponding translation string
|
|
||||||
if (!$scope.field || !$scope.field.name || !value)
|
|
||||||
return '';
|
|
||||||
|
|
||||||
return translationStringService.canonicalize($scope.namespace || 'MISSING_NAMESPACE')
|
|
||||||
+ '.FIELD_OPTION_' + translationStringService.canonicalize($scope.field.name)
|
|
||||||
+ '_' + translationStringService.canonicalize(value || 'EMPTY');
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
}]);
|
}]);
|
||||||
|
@@ -97,6 +97,37 @@ angular.module('form').directive('guacFormField', [function formField() {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Produces the translation string for the given field option
|
||||||
|
* value. The translation string will be of the form:
|
||||||
|
*
|
||||||
|
* <code>NAMESPACE.FIELD_OPTION_NAME_VALUE<code>
|
||||||
|
*
|
||||||
|
* where <code>NAMESPACE</code> is the namespace provided to the
|
||||||
|
* directive, <code>NAME</code> is the field name transformed
|
||||||
|
* via translationStringService.canonicalize(), and
|
||||||
|
* <code>VALUE</code> is the option value transformed via
|
||||||
|
* translationStringService.canonicalize()
|
||||||
|
*
|
||||||
|
* @param {String} value
|
||||||
|
* The name of the option value.
|
||||||
|
*
|
||||||
|
* @returns {String}
|
||||||
|
* The translation string which produces the translated name of the
|
||||||
|
* value specified.
|
||||||
|
*/
|
||||||
|
$scope.getFieldOption = function getFieldOption(value) {
|
||||||
|
|
||||||
|
// If no field, or no value, then no corresponding translation string
|
||||||
|
if (!$scope.field || !$scope.field.name || !value)
|
||||||
|
return '';
|
||||||
|
|
||||||
|
return translationStringService.canonicalize($scope.namespace || 'MISSING_NAMESPACE')
|
||||||
|
+ '.FIELD_OPTION_' + translationStringService.canonicalize($scope.field.name)
|
||||||
|
+ '_' + translationStringService.canonicalize(value || 'EMPTY');
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether the current field should be displayed.
|
* Returns whether the current field should be displayed.
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user