diff options
Diffstat (limited to 'install/static/group.js')
-rw-r--r-- | install/static/group.js | 76 |
1 files changed, 46 insertions, 30 deletions
diff --git a/install/static/group.js b/install/static/group.js index 1d1e9b5ce..97f498ae2 100644 --- a/install/static/group.js +++ b/install/static/group.js @@ -20,6 +20,52 @@ /* REQUIRES: ipa.js, details.js, search.js, add.js, entity.js */ +function ipa_group() { + + var that = ipa_entity({ + 'name': 'group' + }); + + that.super_init = that.super('init'); + + that.init = function() { + + var dialog = ipa_group_add_dialog({ + 'name': 'add', + 'title': 'Add New Group' + }); + that.add_dialog(dialog); + dialog.init(); + + that.super_init(); + }; + + return that; +} + +IPA.add_entity(ipa_group()); + +function ipa_group_add_dialog(spec) { + + spec = spec || {}; + + var that = ipa_add_dialog(spec); + + that.super_init = that.super('init'); + + that.init = function() { + + this.super_init(); + + this.add_field(ipa_text_widget({name:'cn', label:'Name'})); + this.add_field(ipa_text_widget({name:'description', label:'Description'})); + this.add_field(ipa_checkbox_widget({name:'posix', label:'Is this a POSIX group?'})); + this.add_field(ipa_text_widget({name:'gidnumber', label:'GID'})); + }; + + return that; +} + ipa_entity_set_search_definition('group', [ ['cn', 'Name', null], ['gidnumber', 'GID', null], @@ -27,15 +73,6 @@ ipa_entity_set_search_definition('group', [ ['quick_links', 'Quick Links', ipa_entity_quick_links] ]); -ipa_entity_set_add_definition('group', [ - 'dialog-add-group', 'Add New Group', [ - ['cn', 'Name', null], - ['description', 'Description', null], - ['posix', 'Is this a POSIX group?', f_posix], - ['gidnumber', 'GID', null] - ] -]); - ipa_entity_set_details_definition('group',[ ipa_stanza({name:'identity', label:'Group Details'}). input({name:'cn', label:'Group Name'}). @@ -48,24 +85,3 @@ ipa_entity_set_association_definition('group', { 'rolegroup': { associator: 'serial' }, 'taskgroup': { associator: 'serial' } }); - -function f_posix(dlg, mode) -{ - function checkbox_on_click() { - var jobj = $(this); - if (jobj.attr('checked')) - jobj.attr('checked', false); - else - jobj.attr('checked', true); - }; - - if (mode == IPA_ADD_POPULATE) { - dlg.append('<label>Is this a POSIX group?</label>'); - dlg.append('<input type="checkbox" name="posix" />'); - dlg.children().last().click(checkbox_on_click); - } else { - if (dlg.find('input:checkbox[name=posix]').attr('checked')) - return (true); - return (false); - } -} |