diff options
author | Petr Vobornik <pvoborni@redhat.com> | 2014-05-29 14:27:08 +0200 |
---|---|---|
committer | Petr Vobornik <pvoborni@redhat.com> | 2014-06-12 09:56:49 +0200 |
commit | f1b83198da67b6cbf49209371b8a96536a13703e (patch) | |
tree | 9e63878a5a0ef62ff87f58d7186ac8185f427bb7 /install/ui/src/freeipa/rule.js | |
parent | f0c19f907e27f2cd80b68ae32d20befe847ba443 (diff) | |
download | freeipa-f1b83198da67b6cbf49209371b8a96536a13703e.tar.gz freeipa-f1b83198da67b6cbf49209371b8a96536a13703e.tar.xz freeipa-f1b83198da67b6cbf49209371b8a96536a13703e.zip |
webui: control sudo rule deny command tables by category switch
`memberdenycmd_sudocmd` and `memberdenycmd_sudocmdgroup` tables are now
enabled/disabled based on `cmdcategory` as well.
https://fedorahosted.org/freeipa/ticket/4361
Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
Diffstat (limited to 'install/ui/src/freeipa/rule.js')
-rw-r--r-- | install/ui/src/freeipa/rule.js | 54 |
1 files changed, 26 insertions, 28 deletions
diff --git a/install/ui/src/freeipa/rule.js b/install/ui/src/freeipa/rule.js index f8d182b38..7ad08e1f2 100644 --- a/install/ui/src/freeipa/rule.js +++ b/install/ui/src/freeipa/rule.js @@ -43,9 +43,10 @@ IPA.rule_details_widget = function(spec) { that.init = function() { - that.enable_radio = IPA.radio_widget({ + that.enable_radio = IPA.rule_radio_widget({ name: that.radio_name, - options: that.options + options: that.options, + entity: that.entity }); that.widgets.add_widget(that.enable_radio); @@ -65,41 +66,38 @@ IPA.rule_details_widget = function(spec) { } }; - that.create = function(container) { - - that.container = container; + that.init(); - //enable radios - var param_info = IPA.get_entity_param(that.entity.name, that.radio_name); - var title = param_info ? param_info.doc : that.radio_name; - var enable_radio_container = $('<div/>', { - name: that.radio_name, - title: title, - 'class': 'field' - }).appendTo(container); + return that; +}; - enable_radio_container.append(title+': '); - that.enable_radio.create(enable_radio_container); +/** + * Rule radio widget + * + * Intended to be used especially by rule widget. + * + * @class IPA.rule_radio_widget + * @extends IPA.radio_widget + */ +IPA.rule_radio_widget = function(spec) { - //tables - for (var j=0; j<that.tables.length; j++) { - var table = that.tables[j]; + spec = spec || {}; + var that = IPA.radio_widget(spec); - var metadata = IPA.get_entity_param(that.entity.name, table.name); + /** @inheritDoc */ + that.create = function(container) { - var table_container = $('<div/>', { - name: table.name, - title: metadata ? metadata.doc : table.name, - 'class': 'field' - }).appendTo(container); + var param_info = IPA.get_entity_param(that.entity.name, that.name); + var title = param_info ? param_info.doc : that.name; - var widget = that.widgets.get_widget(table.name); - widget.create(table_container); + container.append(title + ': '); + that.widget_create(container); + that.owb_create(container); + if (that.undo) { + that.create_undo(container); } }; - that.init(); - return that; }; |