summaryrefslogtreecommitdiffstats
path: root/install/ui/sudo.js
diff options
context:
space:
mode:
Diffstat (limited to 'install/ui/sudo.js')
-rw-r--r--install/ui/sudo.js783
1 files changed, 275 insertions, 508 deletions
diff --git a/install/ui/sudo.js b/install/ui/sudo.js
index 83467773a..14bc8d5af 100644
--- a/install/ui/sudo.js
+++ b/install/ui/sudo.js
@@ -168,7 +168,7 @@ IPA.sudocmd_member_sudocmdgroup_table_widget = function(spec) {
if (!that.values.length) return;
var batch = IPA.batch_command({
- 'name': that.entity_name+'_'+that.name+'_show',
+ 'name': that.entity.name+'_'+that.name+'_show',
'on_success': on_success,
'on_error': on_error
});
@@ -197,12 +197,12 @@ IPA.sudocmd_member_sudocmdgroup_table_widget = function(spec) {
if (!values.length) return;
var batch = IPA.batch_command({
- 'name': that.entity_name+'_'+that.name+'_add',
+ 'name': that.entity.name+'_'+that.name+'_add',
'on_success': on_success,
'on_error': on_error
});
- var pkey = IPA.nav.get_state(that.entity_name+'-pkey');
+ var pkey = IPA.nav.get_state(that.entity.name+'-pkey');
for (var i=0; i<values.length; i++) {
var value = values[i];
@@ -226,12 +226,12 @@ IPA.sudocmd_member_sudocmdgroup_table_widget = function(spec) {
if (!values.length) return;
var batch = IPA.batch_command({
- 'name': that.entity_name+'_'+that.name+'_remove',
+ 'name': that.entity.name+'_'+that.name+'_remove',
'on_success': on_success,
'on_error': on_error
});
- var pkey = IPA.nav.get_state(that.entity_name+'-pkey');
+ var pkey = IPA.nav.get_state(that.entity.name+'-pkey');
for (var i=0; i<values.length; i++) {
var value = values[i];
@@ -263,108 +263,129 @@ IPA.sudorule_details_facet = function(spec) {
var that = IPA.details_facet(spec);
- var section = IPA.sudo.rule_details_general_section({
- 'name': 'general',
- 'label': IPA.messages.details.general
- });
- that.add_section(section);
-
- section.text({name: 'cn', read_only: true});
- section.textarea({name: 'description'});
- section.radio({name: 'ipaenabledflag'});
-
- section = that.add_section(IPA.sudo.options_section({
- name: 'options',
- label: IPA.messages.objects.sudorule.options,
- facet: that
- }));
+ function general_section(){
+ var section = IPA.details_list_section({
+ name: 'general',
+ label: IPA.messages.details.general,
+ entity: that.entity,
+ facet: that
+ });
- var param_info = IPA.get_entity_param('sudorule', 'usercategory');
-
- section = IPA.rule_details_section({
- 'name': 'user',
- 'label': IPA.messages.objects.sudorule.user,
- text: param_info.doc+':',
- 'field_name': 'usercategory',
- 'options': [
- { 'value': 'all', 'label': IPA.messages.objects.sudorule.anyone },
- { 'value': '', 'label': IPA.messages.objects.sudorule.specified_users }
- ],
- 'tables': [
- { 'field_name': 'memberuser_user' },
- { 'field_name': 'memberuser_group' }
- ]
- });
- that.add_section(section);
-
- var category = section.add_field(IPA.radio_widget({
- name: 'usercategory'
- }));
- section.add_field(IPA.sudorule_association_table_widget({
- 'id': that.entity_name+'-memberuser_user',
- 'name': 'memberuser_user', 'category': category,
- 'other_entity': 'user', 'add_method': 'add_user', 'remove_method': 'remove_user',
- 'external': 'externaluser'
- }));
- section.add_field(IPA.sudorule_association_table_widget({
- 'id': that.entity_name+'-memberuser_group',
- 'name': 'memberuser_group', 'category': category,
- 'other_entity': 'group', 'add_method': 'add_user', 'remove_method': 'remove_user'
- }));
+ section.text({name: 'cn', read_only: true});
+ section.textarea({name: 'description'});
+ section.radio({
+ name: 'ipaenabledflag',
+ options:[
+ {'value': 'TRUE',label: IPA.messages['true']},
+ {'value': 'FALSE',label:IPA.messages['false']}
+ ]});
+ return section;
+ }
+
+ function options_section(){
+ var section = IPA.sudo.options_section({
+ name: 'options',
+ label: IPA.messages.objects.sudorule.options,
+ entity: that.entity,
+ facet: that
+ });
+ return section;
+ }
+
+
+ function user_section(){
+ var param_info = IPA.get_entity_param('sudorule', 'usercategory');
+
+ var section = IPA.rule_details_section({
+ name: 'user',
+ label: IPA.messages.objects.sudorule.user,
+ text: param_info.doc+':',
+ field_name: 'usercategory',
+ entity: that.entity,
+ options: [
+ { value: 'all',
+ label: IPA.messages.objects.sudorule.anyone },
+ { value: '',
+ label: IPA.messages.objects.sudorule.specified_users }
+ ],
+ tables: [
+ { field_name: 'memberuser_user' },
+ { field_name: 'memberuser_group' }
+ ]
+ });
- param_info = IPA.get_entity_param('sudorule', 'hostcategory');
-
- section = IPA.rule_details_section({
- 'name': 'host',
- 'label': IPA.messages.objects.sudorule.host,
- text: param_info.doc+':',
- 'field_name': 'hostcategory',
- 'options': [
- { 'value': 'all', 'label': IPA.messages.objects.sudorule.any_host },
- { 'value': '', 'label': IPA.messages.objects.sudorule.specified_hosts }
- ],
- 'tables': [
- { 'field_name': 'memberhost_host' },
- { 'field_name': 'memberhost_hostgroup' }
- ]
- });
- that.add_section(section);
-
- category = section.add_field(IPA.radio_widget({
- name: 'hostcategory'
- }));
- section.add_field(IPA.sudorule_association_table_widget({
- 'id': that.entity_name+'-memberhost_host',
- 'name': 'memberhost_host', 'category': category,
- 'other_entity': 'host', 'add_method': 'add_host', 'remove_method': 'remove_host',
- 'external': 'externalhost'
- }));
- section.add_field(IPA.sudorule_association_table_widget({
- 'id': that.entity_name+'-memberhost_hostgroup',
- 'name': 'memberhost_hostgroup', 'category': category,
- 'other_entity': 'hostgroup', 'add_method': 'add_host', 'remove_method': 'remove_host'
- }));
+ var category = section.add_field(IPA.radio_widget({
+ entity: that.entity,
+ name: 'usercategory'
+ }));
+ section.add_field(IPA.sudorule_association_table_widget({
+ 'id': that.entity.name+'-memberuser_user',
+ entity: that.entity,
+ 'name': 'memberuser_user', 'category': category,
+ 'other_entity': 'user',
+ 'add_method': 'add_user',
+ 'remove_method': 'remove_user',
+ 'external': 'externaluser'
+ }));
+ section.add_field(IPA.sudorule_association_table_widget({
+ 'id': that.entity.name+'-memberuser_group',
+ entity: that.entity,
+ 'name': 'memberuser_group', 'category': category,
+ 'other_entity': 'group',
+ 'add_method': 'add_user',
+ 'remove_method': 'remove_user'
+ }));
+ return section;
+ }
+
+ function host_section(){
+ var param_info = IPA.get_entity_param('sudorule', 'hostcategory');
+
+ var section = IPA.rule_details_section({
+ 'name': 'host',
+ entity: that.entity,
+ 'label': IPA.messages.objects.sudorule.host,
+ text: param_info.doc+':',
+ 'field_name': 'hostcategory',
+ 'options': [
+ { 'value': 'all', 'label': IPA.messages.objects.sudorule.any_host },
+ { 'value': '', 'label': IPA.messages.objects.sudorule.specified_hosts }
+ ],
+ 'tables': [
+ { 'field_name': 'memberhost_host' },
+ { 'field_name': 'memberhost_hostgroup' }
+ ]
+ });
- section = IPA.sudo.rule_details_command_section({
- 'name': 'command',
- 'label': IPA.messages.objects.sudorule.command
- });
- that.add_section(section);
+ var category = section.add_field(IPA.radio_widget({
+ entity: that.entity,
+ name: 'hostcategory'
+ }));
+ section.add_field(IPA.sudorule_association_table_widget({
+ 'id': that.entity.name+'-memberhost_host',
+ entity: that.entity,
+ 'name': 'memberhost_host', 'category': category,
+ 'other_entity': 'host', 'add_method': 'add_host', 'remove_method': 'remove_host',
+ 'external': 'externalhost'
+ }));
+ section.add_field(IPA.sudorule_association_table_widget({
+ 'id': that.entity.name+'-memberhost_hostgroup',
+ entity: that.entity,
+ 'name': 'memberhost_hostgroup', 'category': category,
+ 'other_entity': 'hostgroup', 'add_method': 'add_host', 'remove_method': 'remove_host'
+ }));
+ return section;
+ }
- section = IPA.sudo.rule_details_runas_section({
- 'name': 'runas',
- 'label': IPA.messages.objects.sudorule.runas
- });
- that.add_section(section);
that.update = function(on_success, on_error) {
- var pkey = IPA.nav.get_state(that.entity_name+'-pkey');
+ var pkey = IPA.nav.get_state(that.entity.name+'-pkey');
var modify_operation = {
'execute': false,
'command': IPA.command({
- entity: that.entity_name,
+ entity: that.entity.name,
method: 'mod',
args: [pkey],
options: {all: true, rights: true}
@@ -394,7 +415,7 @@ IPA.sudorule_details_facet = function(spec) {
'category': 'usercategory',
'has_values': false,
'command': IPA.command({
- entity: that.entity_name,
+ entity: that.entity.name,
method: 'remove_user',
args: [pkey],
options: {all: true, rights: true}
@@ -404,7 +425,7 @@ IPA.sudorule_details_facet = function(spec) {
'category': 'hostcategory',
'has_values': false,
'command': IPA.command({
- entity: that.entity_name,
+ entity: that.entity.name,
method: 'remove_host',
args: [pkey],
options: {all: true, rights: true}
@@ -414,7 +435,7 @@ IPA.sudorule_details_facet = function(spec) {
'category': 'cmdcategory',
'has_values': false,
'command': IPA.command({
- entity: that.entity_name,
+ entity: that.entity.name,
method: 'remove_allow_command',
args: [pkey],
options: {all: true, rights: true}
@@ -424,7 +445,7 @@ IPA.sudorule_details_facet = function(spec) {
'category': 'ipasudorunasusercategory',
'has_values': false,
'command': IPA.command({
- entity: that.entity_name,
+ entity: that.entity.name,
method: 'remove_runasuser',
args: [pkey],
options: {all: true, rights: true}
@@ -434,7 +455,7 @@ IPA.sudorule_details_facet = function(spec) {
'category': 'ipasudorunasgroupcategory',
'has_values': false,
'command': IPA.command({
- entity: that.entity_name,
+ entity: that.entity.name,
method: 'remove_runasgroup',
args: [pkey],
options: {all: true, rights: true}
@@ -445,7 +466,7 @@ IPA.sudorule_details_facet = function(spec) {
var enable_operation = {
'execute': false,
'command': IPA.command({
- entity: that.entity_name,
+ entity: that.entity.name,
method: 'enable',
args: [pkey],
options: {all: true, rights: true}
@@ -464,7 +485,7 @@ IPA.sudorule_details_facet = function(spec) {
var values = field.save();
if (!values) continue;
- var param_info = IPA.get_entity_param(that.entity_name, field.name);
+ var param_info = IPA.get_entity_param(that.entity.name, field.name);
// skip primary key
if (param_info && param_info['primary_key']) continue;
@@ -553,6 +574,23 @@ IPA.sudorule_details_facet = function(spec) {
batch.execute();
};
+ /*initialization*/
+ that.add_section(general_section());
+ that.add_section(options_section());
+ that.add_section(user_section());
+ that.add_section(host_section());
+ that.add_section( IPA.sudo.rule_details_command_section({
+ name: 'command',
+ entity: that.entity,
+ label: IPA.messages.objects.sudorule.command
+ }));
+ that.add_section( IPA.sudo.rule_details_runas_section({
+ name: 'runas',
+ entity: that.entity,
+ label: IPA.messages.objects.sudorule.runas
+ }));
+
+
return that;
};
@@ -564,8 +602,8 @@ IPA.sudo.options_section = function(spec) {
that.facet = spec.facet;
- that.init = function() {
+ function setup_table(){
that.table = that.add_field(IPA.table_widget({
name: 'ipasudoopt',
show_buttons: true
@@ -574,6 +612,7 @@ IPA.sudo.options_section = function(spec) {
that.table.create_column({
name: 'ipasudoopt',
label: IPA.get_method_option('sudorule_add_option', 'ipasudoopt').label,
+ entity_name:that.entity.name,
primary_key: true
});
@@ -601,9 +640,7 @@ IPA.sudo.options_section = function(spec) {
}
}).appendTo(that.table.buttons);
};
-
- that.section_init();
- };
+ }
that.add_handler = function() {
if (that.facet.is_dirty()) {
@@ -614,8 +651,6 @@ IPA.sudo.options_section = function(spec) {
dialog.callback = function() {
that.show_add_dialog();
};
-
- dialog.init();
dialog.open(that.container);
} else {
@@ -632,8 +667,6 @@ IPA.sudo.options_section = function(spec) {
dialog.callback = function() {
that.show_remove_dialog();
};
-
- dialog.init();
dialog.open(that.container);
} else {
@@ -661,7 +694,7 @@ IPA.sudo.options_section = function(spec) {
dialog.add_button(IPA.messages.buttons.add, function() {
var value = ipasudoopt.save()[0];
- var pkey = IPA.nav.get_state(that.entity_name+'-pkey');
+ var pkey = IPA.nav.get_state(that.entity.name+'-pkey');
var command = IPA.command({
entity: 'sudorule',
@@ -687,8 +720,6 @@ IPA.sudo.options_section = function(spec) {
dialog.close();
});
- dialog.init();
-
dialog.open(that.container);
};
@@ -703,7 +734,7 @@ IPA.sudo.options_section = function(spec) {
return;
}
- var pkey = IPA.nav.get_state(that.entity_name+'-pkey');
+ var pkey = IPA.nav.get_state(that.entity.name+'-pkey');
var title = IPA.messages.dialogs.remove_title;
title = title.replace('${entity}', label);
@@ -741,186 +772,78 @@ IPA.sudo.options_section = function(spec) {
batch.execute();
};
- dialog.init();
-
dialog.open(that.container);
};
- return that;
-};
-
-IPA.sudo.rule_details_general_section = function(spec) {
-
- spec = spec || {};
-
- var that = IPA.details_section(spec);
-
- that.create = function(container) {
-
- var table = $('<table/>', {
- 'style': 'width: 100%;'
- }).appendTo(container);
-
- var param_info = IPA.get_entity_param(that.entity_name, 'cn');
-
- var tr = $('<tr/>').appendTo(table);
-
- var td = $('<td/>', {
- style: 'width: 100px; text-align: right;',
- html: param_info.label+':',
- title: param_info ? param_info.doc : 'cn'
- }).appendTo(tr);
-
- td = $('<td/>').appendTo(tr);
-
- var field = that.get_field('cn');
-
- var span = $('<span/>', {
- name: 'cn',
- title: param_info ? param_info.doc : 'cn',
- 'class': 'details-field'
- }).appendTo(td);
-
- $('<label/>', {
- name: 'cn',
- style: 'display: none;'
- }).appendTo(span);
-
- $('<input/>', {
- 'type': 'text',
- 'name': 'cn',
- 'size': 30
- }).appendTo(span);
-
- span.append(' ');
-
- field.create_undo(span);
-
- param_info = IPA.get_entity_param(that.entity_name, 'description');
-
- tr = $('<tr/>').appendTo(table);
-
- td = $('<td/>', {
- style: 'text-align: right; vertical-align: top;',
- html: param_info.label+':',
- title: param_info ? param_info.doc : 'description'
- }).appendTo(tr);
-
- td = $('<td/>').appendTo(tr);
-
- field = that.get_field('description');
-
- span = $('<span/>', {
- name: 'description',
- title: param_info ? param_info.doc : 'description',
- 'class': 'details-field'
- }).appendTo(td);
-
- $('<textarea/>', {
- 'name': 'description',
- 'rows': 5,
- 'style': 'width: 100%'
- }).appendTo(span);
-
- span.append(' ');
-
- field.create_undo(span);
-
- param_info = IPA.get_entity_param(that.entity_name, 'ipaenabledflag');
- var label = IPA.messages.objects.sudorule.ipaenabledflag;
-
- tr = $('<tr/>').appendTo(table);
-
- td = $('<td/>', {
- style: 'text-align: right; vertical-align: top;',
- html: label+':',
- title: label
- }).appendTo(tr);
-
- td = $('<td/>').appendTo(tr);
-
- field = that.get_field('ipaenabledflag');
-
- span = $('<span/>', {
- name: 'ipaenabledflag',
- title: label,
- 'class': 'details-field'
- }).appendTo(td);
-
- $('<input/>', {
- 'type': 'radio',
- 'name': 'ipaenabledflag',
- 'value': 'TRUE'
- }).appendTo(span);
-
- span.append(' ');
-
- span.append(IPA.messages.objects.sudorule.active);
-
- span.append(' ');
-
- $('<input/>', {
- 'type': 'radio',
- 'name': 'ipaenabledflag',
- 'value': 'FALSE'
- }).appendTo(span);
-
- span.append(' ');
-
- span.append(IPA.messages.objects.sudorule.inactive);
-
- span.append(' ');
-
- field.create_undo(span);
- };
+ /*initialization*/
+ setup_table();
return that;
};
+
IPA.sudo.rule_details_command_section = function(spec) {
spec = spec || {};
var that = IPA.details_section(spec);
- that.init = function() {
-
- var category = that.add_field(IPA.radio_widget({
- name: 'cmdcategory'
- }));
+ function setup_fields(){
+ that.category = that.add_field(
+ IPA.radio_widget({
+ name: 'cmdcategory',
+ options:[
+ {
+ value:'all',
+ label:IPA.messages.objects.sudorule.any_command
+ },
+ {
+ value:'',
+ label:IPA.messages.objects.sudorule.specified_commands
+ }
+ ]
+ }));
that.add_field(IPA.rule_association_table_widget({
- 'id': that.entity_name+'-memberallowcmd_sudocmd',
+ 'id': that.entity.name+'-memberallowcmd_sudocmd',
'name': 'memberallowcmd_sudocmd',
- 'category': category,
- 'other_entity': 'sudocmd', 'add_method': 'add_allow_command', 'remove_method': 'remove_allow_command'
+ 'category': that.category,
+ 'other_entity': 'sudocmd',
+ 'add_method': 'add_allow_command',
+ 'remove_method': 'remove_allow_command'
}));
that.add_field(IPA.rule_association_table_widget({
- 'id': that.entity_name+'-memberallowcmd_sudocmdgroup',
+ 'id': that.entity.name+'-memberallowcmd_sudocmdgroup',
'name': 'memberallowcmd_sudocmdgroup',
- 'category': category,
- 'other_entity': 'sudocmdgroup', 'add_method': 'add_allow_command', 'remove_method': 'remove_allow_command'
+ 'category': that.category,
+ 'other_entity': 'sudocmdgroup',
+ 'add_method': 'add_allow_command',
+ 'remove_method': 'remove_allow_command'
}));
that.add_field(IPA.rule_association_table_widget({
- 'id': that.entity_name+'-memberdenycmd_sudocmd',
+ 'id': that.entity.name+'-memberdenycmd_sudocmd',
'name': 'memberdenycmd_sudocmd',
- 'other_entity': 'sudocmd', 'add_method': 'add_deny_command', 'remove_method': 'remove_deny_command'
+ 'other_entity': 'sudocmd',
+ 'add_method': 'add_deny_command',
+ 'remove_method': 'remove_deny_command'
}));
that.add_field(IPA.rule_association_table_widget({
- 'id': that.entity_name+'-memberdenycmd_sudocmdgroup',
+ 'id': that.entity.name+'-memberdenycmd_sudocmdgroup',
'name': 'memberdenycmd_sudocmdgroup',
- 'other_entity': 'sudocmdgroup', 'add_method': 'add_deny_command', 'remove_method': 'remove_deny_command'
+ 'other_entity': 'sudocmdgroup',
+ 'add_method': 'add_deny_command',
+ 'remove_method': 'remove_deny_command'
}));
-
- that.section_init();
- };
+ }
that.create = function(container) {
+ that.container = container;
+
var field = that.get_field('cmdcategory');
- var param_info = IPA.get_entity_param(that.entity_name, 'cmdcategory');
+ var param_info = IPA.get_entity_param(that.entity.name, 'cmdcategory');
var span = $('<span/>', {
name: 'cmdcategory',
@@ -933,36 +856,12 @@ IPA.sudo.rule_details_command_section = function(spec) {
title: IPA.messages.objects.sudorule.allow
}).appendTo(span);
- span.append(param_info.doc);
- span.append(': ');
-
- $('<input/>', {
- type: 'radio',
- name: 'cmdcategory',
- value: 'all'
- }).appendTo(span);
-
- span.append(' ');
-
- span.append(IPA.messages.objects.sudorule.any_command);
-
- span.append(' ');
-
- $('<input/>', {
- type: 'radio',
- name: 'cmdcategory',
- value: ''
- }).appendTo(span);
+ span.append(param_info.doc+": ");
- span.append(' ');
+ that.category.create(span);
- span.append(IPA.messages.objects.sudorule.specified_commands);
-
- span.append(' ');
-
- field.create_undo(span);
-
- param_info = IPA.get_entity_param(that.entity_name, 'memberallowcmd_sudocmd');
+ param_info = IPA.get_entity_param(
+ that.entity.name, 'memberallowcmd_sudocmd');
var table_span = $('<span/>', {
name: 'memberallowcmd_sudocmd',
@@ -973,7 +872,8 @@ IPA.sudo.rule_details_command_section = function(spec) {
field = that.get_field('memberallowcmd_sudocmd');
field.create(table_span);
- param_info = IPA.get_entity_param(that.entity_name, 'memberallowcmd_sudocmdgroup');
+ param_info = IPA.get_entity_param(
+ that.entity.name, 'memberallowcmd_sudocmdgroup');
table_span = $('<span/>', {
name: 'memberallowcmd_sudocmdgroup',
@@ -989,7 +889,8 @@ IPA.sudo.rule_details_command_section = function(spec) {
title: IPA.messages.objects.sudorule.deny
}).appendTo(span);
- param_info = IPA.get_entity_param(that.entity_name, 'memberdenycmd_sudocmd');
+ param_info = IPA.get_entity_param(
+ that.entity.name, 'memberdenycmd_sudocmd');
table_span = $('<span/>', {
name: 'memberdenycmd_sudocmd',
@@ -1000,7 +901,8 @@ IPA.sudo.rule_details_command_section = function(spec) {
field = that.get_field('memberdenycmd_sudocmd');
field.create(table_span);
- param_info = IPA.get_entity_param(that.entity_name, 'memberdenycmd_sudocmdgroup');
+ param_info = IPA.get_entity_param(
+ that.entity.name, 'memberdenycmd_sudocmdgroup');
table_span = $('<span/>', {
name: 'memberdenycmd_sudocmdgroup',
@@ -1010,11 +912,6 @@ IPA.sudo.rule_details_command_section = function(spec) {
field = that.get_field('memberdenycmd_sudocmdgroup');
field.create(table_span);
- };
-
- that.setup = function(container) {
-
- that.section_setup(container);
function update_tables(value) {
@@ -1044,6 +941,9 @@ IPA.sudo.rule_details_command_section = function(spec) {
});
};
+ /*initialization*/
+ setup_fields();
+
return that;
};
@@ -1054,79 +954,80 @@ IPA.sudo.rule_details_runas_section = function(spec) {
var that = IPA.details_section(spec);
- that.init = function() {
-
- var category = that.add_field(IPA.radio_widget({
- name: 'ipasudorunasusercategory'
- }));
+ function add_extra_fields(){
+ var category = that.add_field(
+ IPA.radio_widget({
+ name: 'ipasudorunasusercategory',
+ options:[
+ {
+ value:'all',
+ label:IPA.messages.objects.sudorule.anyone},
+ {
+ value:'',
+ label:IPA.messages.objects.sudorule.specified_users
+ }
+ ]
+ }));
that.add_field(IPA.sudorule_association_table_widget({
- 'id': that.entity_name+'-runasruser_user',
- 'name': 'ipasudorunas_user', 'category': category,
- 'other_entity': 'user', 'add_method': 'add_runasuser', 'remove_method': 'remove_runasuser'
+ id: that.entity.name+'-runasruser_user',
+ name: 'ipasudorunas_user',
+ category: category,
+ other_entity: 'user',
+ add_method: 'add_runasuser',
+ remove_method: 'remove_runasuser'
}));
that.add_field(IPA.sudorule_association_table_widget({
- 'id': that.entity_name+'-runasuser_group',
- 'name': 'ipasudorunas_group', 'category': category,
- 'other_entity': 'group', 'add_method': 'add_runasuser', 'remove_method': 'remove_runasuser'
+ id: that.entity.name+'-runasuser_group',
+ name: 'ipasudorunas_group',
+ category: category,
+ other_entity: 'group',
+ add_method: 'add_runasuser',
+ remove_method: 'remove_runasuser'
}));
- category = that.add_field(IPA.radio_widget({
- name: 'ipasudorunasgroupcategory'
- }));
+ category = that.add_field(
+ IPA.radio_widget({
+ name: 'ipasudorunasgroupcategory',
+ options:[
+ {
+ value:'all',
+ label:IPA.messages.objects.sudorule.any_group
+ },
+ {
+ value:'',
+ label:IPA.messages.objects.sudorule.specified_groups
+ }
+ ]
+ }));
that.add_field(IPA.sudorule_association_table_widget({
- 'id': that.entity_name+'-runasgroup_group',
- 'name': 'ipasudorunasgroup_group', 'category': category,
- 'other_entity': 'group', 'add_method': 'add_runasgroup', 'remove_method': 'remove_runasgroup'
+ id: that.entity.name+'-runasgroup_group',
+ name: 'ipasudorunasgroup_group',
+ category: category,
+ other_entity: 'group',
+ add_method: 'add_runasgroup',
+ remove_method: 'remove_runasgroup'
}));
-
- that.section_init();
- };
+ }
that.create = function(container) {
+ that.container = container;
var field = that.get_field('ipasudorunasusercategory');
- var param_info = IPA.get_entity_param(that.entity_name, 'ipasudorunasusercategory');
+ var param_info = IPA.get_entity_param(
+ that.entity.name, 'ipasudorunasusercategory');
var span = $('<span/>', {
name: 'ipasudorunasusercategory',
title: param_info.doc,
'class': 'details-field'
}).appendTo(container);
-
- span.append(param_info.doc);
- span.append(': ');
-
- $('<input/>', {
- 'type': 'radio',
- 'name': 'ipasudorunasusercategory',
- 'value': 'all'
- }).appendTo(span);
-
- span.append(' ');
-
- span.append(IPA.messages.objects.sudorule.anyone);
-
- span.append(' ');
-
- $('<input/>', {
- 'type': 'radio',
- 'name': 'ipasudorunasusercategory',
- 'value': ''
- }).appendTo(span);
-
- span.append(' ');
-
- span.append(IPA.messages.objects.sudorule.specified_users);
-
- span.append(' ');
-
- field.create_undo(span);
-
+ span.append(param_info.doc+": ");
+ field.create(span);
span.append('<br/>');
- param_info = IPA.get_entity_param(that.entity_name, 'ipasudorunas_user');
+ param_info = IPA.get_entity_param(that.entity.name, 'ipasudorunas_user');
var table_span = $('<span/>', {
name: 'ipasudorunas_user',
@@ -1137,7 +1038,7 @@ IPA.sudo.rule_details_runas_section = function(spec) {
field = that.get_field('ipasudorunas_user');
field.create(table_span);
- param_info = IPA.get_entity_param(that.entity_name, 'ipasudorunas_group');
+ param_info = IPA.get_entity_param(that.entity.name, 'ipasudorunas_group');
table_span = $('<span/>', {
name: 'ipasudorunas_group',
@@ -1149,7 +1050,8 @@ IPA.sudo.rule_details_runas_section = function(spec) {
field.create(table_span);
field = that.get_field('ipasudorunasgroupcategory');
- param_info = IPA.get_entity_param(that.entity_name, 'ipasudorunasgroupcategory');
+ param_info = IPA.get_entity_param(
+ that.entity.name, 'ipasudorunasgroupcategory');
span = $('<span/>', {
name: 'ipasudorunasgroupcategory',
@@ -1157,38 +1059,12 @@ IPA.sudo.rule_details_runas_section = function(spec) {
'class': 'details-field'
}).appendTo(container);
- span.append(param_info.doc);
- span.append(': ');
-
- $('<input/>', {
- 'type': 'radio',
- 'name': 'ipasudorunasgroupcategory',
- 'value': 'all'
- }).appendTo(span);
-
- span.append(' ');
-
- span.append(IPA.messages.objects.sudorule.any_group);
-
- span.append(' ');
-
- $('<input/>', {
- 'type': 'radio',
- 'name': 'ipasudorunasgroupcategory',
- 'value': ''
- }).appendTo(span);
-
- span.append(' ');
-
- span.append(IPA.messages.objects.sudorule.specified_groups);
-
- span.append(' ');
-
- field.create_undo(span);
-
+ span.append(param_info.doc+": ");
+ field.create(span);
span.append('<br/>');
- param_info = IPA.get_entity_param(that.entity_name, 'ipasudorunasgroup_group');
+ param_info = IPA.get_entity_param(
+ that.entity.name, 'ipasudorunasgroup_group');
table_span = $('<span/>', {
name: 'ipasudorunasgroup_group',
@@ -1198,11 +1074,6 @@ IPA.sudo.rule_details_runas_section = function(spec) {
field = that.get_field('ipasudorunasgroup_group');
field.create(table_span);
- };
-
- that.setup = function(container) {
-
- that.section_setup(container);
function user_update_tables(value) {
@@ -1256,6 +1127,9 @@ IPA.sudo.rule_details_runas_section = function(spec) {
});
};
+ /*initialization*/
+ add_extra_fields();
+
return that;
};
@@ -1270,19 +1144,19 @@ IPA.sudorule_association_table_widget = function(spec) {
that.create_add_dialog = function() {
- var pkey = IPA.nav.get_state(that.entity_name+'-pkey');
+ var pkey = IPA.nav.get_state(that.entity.name+'-pkey');
var title = IPA.messages.association.add;
title = title.replace('${other_entity}', IPA.metadata.objects[that.other_entity].label);
- title = title.replace('${entity}', IPA.metadata.objects[that.entity_name].label_singular);
+ title = title.replace('${entity}', IPA.metadata.objects[that.entity.name].label_singular);
title = title.replace('${primary_key}', pkey);
return IPA.sudo.rule_association_adder_dialog({
- 'title': title,
- 'entity_name': that.entity_name,
- 'pkey': pkey,
- 'other_entity': that.other_entity,
- 'external': that.external
+ title: title,
+ pkey: pkey,
+ other_entity: that.other_entity,
+ entity:that.entity,
+ external: that.external
});
};
@@ -1307,131 +1181,22 @@ IPA.sudo.rule_association_adder_dialog = function(spec) {
that.external = spec.external;
- that.init = function() {
+ function setup_table(){
if (!that.columns.length) {
var pkey_name = IPA.metadata.objects[that.other_entity].primary_key;
that.create_column({
+ entity:that.entity,
name: pkey_name,
label: IPA.metadata.objects[that.other_entity].label,
primary_key: true,
width: '200px'
});
}
-
- that.available_table = IPA.table_widget({
- name: 'available'
- });
-
- var columns = that.columns.values;
- that.available_table.set_columns(columns);
-
- that.available_table.init();
-
- that.selected_table = IPA.table_widget({
- name: 'selected'
- });
-
- that.selected_table.set_columns(columns);
-
- that.selected_table.init();
-
- that.association_adder_dialog_init();
- };
+ }
that.create = function() {
-
- // do not call that.dialog_create();
-
- var search_panel = $('<div/>', {
- 'class': 'adder-dialog-filter'
- }).appendTo(that.container);
-
- $('<input/>', {
- type: 'text',
- name: 'filter',
- style: 'width: 244px'
- }).appendTo(search_panel);
-
- search_panel.append(' ');
-
- $('<input/>', {
- type: 'button',
- name: 'find',
- value: IPA.messages.buttons.find
- }).appendTo(search_panel);
-
- var results_panel = $('<div/>', {
- 'class': 'adder-dialog-results'
- }).appendTo(that.container);
-
- var class_name = that.external ? 'adder-dialog-internal' : 'adder-dialog-available';
-
- var available_panel = $('<div/>', {
- name: 'available',
- 'class': class_name
- }).appendTo(results_panel);
-
- $('<div/>', {
- html: IPA.messages.dialogs.available,
- 'class': 'ui-widget-header'
- }).appendTo(available_panel);
-
- that.available_table.create(available_panel);
-
- var buttons_panel = $('<div/>', {
- name: 'buttons',
- 'class': 'adder-dialog-buttons'
- }).appendTo(results_panel);
-
- var p = $('<p/>').appendTo(buttons_panel);
- $('<input />', {
- type: 'button',
- name: 'remove',
- value: '<<'
- }).appendTo(p);
-
- p = $('<p/>').appendTo(buttons_panel);
- $('<input />', {
- type: 'button',
- name: 'add',
- value: '>>'
- }).appendTo(p);
-
- var selected_panel = $('<div/>', {
- name: 'selected',
- 'class': 'adder-dialog-selected'
- }).appendTo(results_panel);
-
- $('<div/>', {
- html: IPA.messages.dialogs.prospective,
- 'class': 'ui-widget-header'
- }).appendTo(selected_panel);
-
- that.selected_table.create(selected_panel);
-
- if (that.external) {
- var external_panel = $('<div/>', {
- name: 'external',
- 'class': 'adder-dialog-external'
- }).appendTo(results_panel);
-
- $('<div/>', {
- html: IPA.messages.objects.sudorule.external,
- 'class': 'ui-widget-header'
- }).appendTo(external_panel);
-
- $('<input/>', {
- type: 'text',
- name: 'external',
- style: 'width: 244px'
- }).appendTo(external_panel);
- }
- };
-
- that.setup = function() {
- that.association_adder_dialog_setup();
- if (that.external) that.external_field = $('input[name=external]', that.container);
+ that.adder_dialog_create();
};
that.add = function() {
@@ -1450,5 +1215,7 @@ IPA.sudo.rule_association_adder_dialog = function(spec) {
}
};
+ setup_table();
+
return that;
};