summaryrefslogtreecommitdiffstats
path: root/install/ui/src/freeipa/FieldBinder.js
diff options
context:
space:
mode:
authorPetr Vobornik <pvoborni@redhat.com>2014-07-31 10:14:32 +0200
committerPetr Vobornik <pvoborni@redhat.com>2014-09-11 17:55:17 +0200
commit7e7fe57fc9098e81ce90f4d56b1a3154abfa6123 (patch)
tree33279df63d761453e5381e25d8fd1436b7944783 /install/ui/src/freeipa/FieldBinder.js
parent2b2f37981147e7cd74a2e42f5802c717b01b6ca8 (diff)
downloadfreeipa-7e7fe57fc9098e81ce90f4d56b1a3154abfa6123.tar.gz
freeipa-7e7fe57fc9098e81ce90f4d56b1a3154abfa6123.tar.xz
freeipa-7e7fe57fc9098e81ce90f4d56b1a3154abfa6123.zip
webui: hide non-readable fields
hide widgets if associated field had received attribute level rights without 'r' right. Explicit rights are required to avoid hiding of special widgets which are not associated with any LDAP attribute. https://fedorahosted.org/freeipa/ticket/4402 Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
Diffstat (limited to 'install/ui/src/freeipa/FieldBinder.js')
-rw-r--r--install/ui/src/freeipa/FieldBinder.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/install/ui/src/freeipa/FieldBinder.js b/install/ui/src/freeipa/FieldBinder.js
index ed05d2531..7ee8e5874 100644
--- a/install/ui/src/freeipa/FieldBinder.js
+++ b/install/ui/src/freeipa/FieldBinder.js
@@ -121,6 +121,7 @@ define(['dojo/_base/declare',
this.handle(field, 'require-change', this.on_field_require_change);
this.handle(field, 'writable-change', this.on_field_writable_change);
this.handle(field, 'readonly-change', this.on_field_readonly_change);
+ this.handle(field, 'acl-rights-change', this.on_field_acl_rights_change);
this.handle(field, 'reset', this.on_field_reset);
this.handle(widget, 'value-change', this.on_widget_value_change);
@@ -241,6 +242,18 @@ define(['dojo/_base/declare',
},
/**
+ * Field acl rights change handler
+ * @protected
+ */
+ on_field_acl_rights_change: function(event) {
+
+ var readable= event.rights.indexOf('r') > -1;
+ if (this.widget.set_readable) {
+ this.widget.set_readable(readable);
+ }
+ },
+
+ /**
* Field reset handler
*
* @param {Object} event