summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--install/ui/field.js6
-rw-r--r--install/ui/policy.js15
-rw-r--r--install/ui/test/data/ipa_init.json4
-rw-r--r--install/ui/user.js9
-rw-r--r--install/ui/widget.js15
-rw-r--r--ipalib/plugins/internal.py4
6 files changed, 44 insertions, 9 deletions
diff --git a/install/ui/field.js b/install/ui/field.js
index 84ec0c4df..fb292ff2a 100644
--- a/install/ui/field.js
+++ b/install/ui/field.js
@@ -35,6 +35,7 @@ IPA.field = function(spec) {
that.param = spec.param || spec.name;
that.label = spec.label;
that.tooltip = spec.tooltip;
+ that.measurement_unit = spec.measurement_unit;
that.formatter = spec.formatter;
that.widget = null;
@@ -348,8 +349,9 @@ IPA.field = function(spec) {
that.set_widget_flags = function() {
if (that.widget) {
- if(that.label) that.widget.label = that.label;
- if(that.title) that.widget.title = that.title;
+ if (that.label) that.widget.label = that.label;
+ if (that.title) that.widget.title = that.title;
+ if (that.measurement_unit) that.widget.measurement_unit = that.measurement_unit;
that.widget.undo = that.undo;
that.widget.writable = that.writable;
that.widget.read_only = that.read_only;
diff --git a/install/ui/policy.js b/install/ui/policy.js
index 604664f12..acad0c8c2 100644
--- a/install/ui/policy.js
+++ b/install/ui/policy.js
@@ -48,12 +48,21 @@ IPA.pwpolicy.entity = function(spec) {
},
'krbmaxpwdlife',
'krbminpwdlife',
- 'krbpwdhistorylength',
+ {
+ name: 'krbpwdhistorylength',
+ measurement_unit: 'number_of_passwords'
+ },
'krbpwdmindiffchars',
'krbpwdminlength',
'krbpwdmaxfailure',
- 'krbpwdfailurecountinterval',
- 'krbpwdlockoutduration',
+ {
+ name: 'krbpwdfailurecountinterval',
+ measurement_unit: 'seconds'
+ },
+ {
+ name: 'krbpwdlockoutduration',
+ measurement_unit: 'seconds'
+ },
'cospriority'
]
}]}).
diff --git a/install/ui/test/data/ipa_init.json b/install/ui/test/data/ipa_init.json
index 85ff9366c..527d09163 100644
--- a/install/ui/test/data/ipa_init.json
+++ b/install/ui/test/data/ipa_init.json
@@ -138,6 +138,10 @@
"password": "Password",
"username": "Username"
},
+ "measurement_units": {
+ "number_of_passwords": "number of passwords",
+ "seconds": "seconds"
+ },
"objects": {
"aci": {
"attribute": "Attribute"
diff --git a/install/ui/user.js b/install/ui/user.js
index 02f6f73e4..24873ecf5 100644
--- a/install/ui/user.js
+++ b/install/ui/user.js
@@ -149,7 +149,8 @@ IPA.user.entity = function(spec) {
{
name: 'krbpwdhistorylength',
label: IPA.get_entity_param('pwpolicy', 'krbpwdhistorylength').label,
- read_only: true
+ read_only: true,
+ measurement_unit: 'number_of_passwords'
},
{
name: 'krbpwdmindiffchars',
@@ -169,12 +170,14 @@ IPA.user.entity = function(spec) {
{
name: 'krbpwdfailurecountinterval',
label: IPA.get_entity_param('pwpolicy', 'krbpwdfailurecountinterval').label,
- read_only: true
+ read_only: true,
+ measurement_unit: 'seconds'
},
{
name: 'krbpwdlockoutduration',
label: IPA.get_entity_param('pwpolicy', 'krbpwdlockoutduration').label,
- read_only: true
+ read_only: true,
+ measurement_unit: 'seconds'
}
]
},
diff --git a/install/ui/widget.js b/install/ui/widget.js
index a55cc347f..64547da7d 100644
--- a/install/ui/widget.js
+++ b/install/ui/widget.js
@@ -36,6 +36,7 @@ IPA.widget = function(spec) {
that.id = spec.id;
that.label = spec.label;
that.tooltip = spec.tooltip;
+ that.measurement_unit = spec.measurement_unit;
that.entity = IPA.get_entity(spec.entity); //some old widgets still need it
that.facet = spec.facet;
@@ -2688,10 +2689,12 @@ IPA.table_layout = function(spec) {
title: widget.label
}).appendTo(tr);
+ var label_text = widget.label + that.get_measurement_unit_text(widget) + ':';
+
$('<label/>', {
name: widget.name,
'class': that.label_class,
- text: widget.label+':'
+ text: label_text
}).appendTo(td);
if(widget.create_required) {
@@ -2713,6 +2716,16 @@ IPA.table_layout = function(spec) {
return table;
};
+
+ that.get_measurement_unit_text = function(widget) {
+
+ if (widget.measurement_unit) {
+ var unit = IPA.messages.measurement_units[widget.measurement_unit];
+ return ' (' + unit + ')';
+ }
+ return '';
+ };
+
return that;
};
diff --git a/ipalib/plugins/internal.py b/ipalib/plugins/internal.py
index a4d87b1d7..eb48b3bfa 100644
--- a/ipalib/plugins/internal.py
+++ b/ipalib/plugins/internal.py
@@ -273,6 +273,10 @@ class i18n_messages(Command):
"password": _("Password"),
"username": _("Username"),
},
+ "measurement_units": {
+ "number_of_passwords": _("number of passwords"),
+ "seconds": _("seconds"),
+ },
"objects": {
"aci": {
"attribute": _("Attribute"),