diff options
Diffstat (limited to 'plugins/CorePluginsAdmin/angularjs/form-field/form-field.directive.js')
-rw-r--r-- | plugins/CorePluginsAdmin/angularjs/form-field/form-field.directive.js | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/plugins/CorePluginsAdmin/angularjs/form-field/form-field.directive.js b/plugins/CorePluginsAdmin/angularjs/form-field/form-field.directive.js index f3d9680819..821404e9e2 100644 --- a/plugins/CorePluginsAdmin/angularjs/form-field/form-field.directive.js +++ b/plugins/CorePluginsAdmin/angularjs/form-field/form-field.directive.js @@ -244,11 +244,34 @@ return field.availableValues; } + function formatPrettyDefaultValue(defaultValue, availableOptions) { + + if (!angular.isArray(availableOptions)) { + return defaultValue; + } + + var prettyValues = []; + + if (!angular.isArray(defaultValue)) { + defaultValue = [defaultValue]; + } + + angular.forEach(availableOptions, function (value, key) { + if (defaultValue.indexOf(value.key) !== -1) { + prettyValues.push(value.value); + } + }); + + return prettyValues.join(', '); + } + return function (scope, element, attrs) { var field = scope.piwikFormField; + var defaultValue = field.defaultValue; + if (angular.isArray(field.defaultValue)) { - field.defaultValue = field.defaultValue.join(','); + field.defaultValue = defaultValue.join(','); } if (field.type === 'boolean') { @@ -263,6 +286,8 @@ // availableValues and in the watch change availableValues could trigger lots of more watch events field.availableOptions = formatAvailableValues(field); + field.defaultValuePretty = formatPrettyDefaultValue(defaultValue, field.availableOptions); + field.showField = true; var inlineHelpNode; |