#!/usr/bin/perl # edit_group.cgi # Display a form for editing or creating a group require './ldap-useradmin-lib.pl'; &ReadParse(); $ldap = &ldap_connect(); if ($in{'new'}) { $access{'gcreate'} || &error($text{'gedit_ecreate'}); &ui_print_header(undef, $text{'gedit_title2'}, ""); } else { $rv = $ldap->search(base => $in{'dn'}, scope => 'base', filter => &group_filter()); ($ginfo) = $rv->all_entries; $group = $ginfo->get_value('cn'); $gid = $ginfo->get_value('gidNumber'); $pass = $ginfo->get_value('userPassword'); $desc = $ginfo->get_value('description'); @members = $ginfo->get_value('memberUid'); foreach $oc ($ginfo->get_value('objectClass')) { $oclass{$oc} = 1; } %ginfo = &dn_to_hash($ginfo); &can_edit_group(\%ginfo) || &error($text{'gedit_eedit'}); &ui_print_header(undef, $text{'gedit_title'}, ""); } # Build list of all possible users @ulist = &useradmin::list_users(); %ulistdone = map { $_->{'user'}, 1 } @ulist; push(@ulist, grep { !$ulistdone{$_->{'user'}} } &list_users()); # Start of form print &ui_form_start("save_group.cgi", "post"); print &ui_hidden("new", $in{'new'}); print &ui_hidden("dn", $in{'dn'}); print &ui_table_start($text{'gedit_details'}, "width=100%", 2, [ "width=30%" ]); # Current DN and classes if (!$in{'new'}) { print &ui_table_row($text{'gedit_dn'}, "<tt>$in{'dn'}</tt>"); print &ui_table_row($text{'uedit_classes'}, join(" , ", map { "<tt>$_</tt>" } $ginfo->get_value('objectClass'))); } # Group name print &ui_table_row($text{'gedit_group'}, &ui_textbox("group", $group, 20)); # Group ID if ($in{'new'}) { # Next GID comes from LDAP only $newgid = $mconfig{'base_gid'}; while(&check_gid_used($ldap, $newgid)) { $newgid++; } $gidfield = &ui_textbox("gid", $newgid, 10); } else { $gidfield = &ui_textbox("gid", $gid, 10); } print &ui_table_row($text{'gedit_gid'}, $gidfield); # Description print &ui_table_row($text{'gedit_desc'}, &ui_textbox("desc", $desc, 40)); # Group password (rarely used, but..) print &ui_table_row($text{'pass'}, &ui_radio_table("passmode", $pass eq "" ? 0 : 1, [ [ 0, $text{'none2'} ], [ 1, $text{'encrypted'}, &ui_textbox("encpass", $pass, 20) ], [ 2, $text{'clear'}, &ui_textbox("pass", undef, 15) ] ])); # Member chooser if ($config{'membox'} == 0) { # Nicer left/right chooser print &ui_table_row($text{'gedit_members'}, &ui_multi_select("members", [ map { [ $_, $_ ] } @members ], [ map { [ $_->{'user'}, $_->{'user'} ] } @ulist ], 10, 1, 0, $text{'gedit_allu'}, $text{'gedit_selu'}, 150)); } else { # Text box print &ui_table_row($text{'gedit_members'}, &ui_textarea("members", join("\n", @members), 5, 30)); } print &ui_table_end(); # Show extra fields (if any) &extra_fields_input($config{'group_fields'}, $ginfo, \@tds); # Show capabilties section print &ui_table_start($text{'gedit_cap'}, "width=100%", 4, [ "width=30%" ]); # Samba group? print &ui_table_row($text{'gedit_samba'}, &ui_yesno_radio("samba", $oclass{$samba_group_class})); print &ui_table_end(); # Show section for on-save or on-creation options if (!$in{'new'}) { print &ui_table_start($text{'onsave'}, "width=100%", 2, [ "width=30%" ]); # Change GID on save print &ui_table_row($text{'chgid'}, &ui_radio("chgid", 0, [ [ 0, $text{'no'} ], [ 1, $text{'gedit_homedirs'} ], [ 2, $text{'gedit_allfiles'} ] ])); # Update in other modules? print &ui_table_row($text{'gedit_mothers'}, &ui_radio("others", $mconfig{'default_other'}, [ [ 1, $text{'yes'} ], [ 0, $text{'no'} ] ])); print &ui_table_end(); } else { print &ui_table_start($text{'uedit_oncreate'}, "width=100%", 2, [ "width=30%" ]); # Create in other modules? print &ui_table_row($text{'gedit_cothers'}, &ui_radio("others", $mconfig{'default_other'}, [ [ 1, $text{'yes'} ], [ 0, $text{'no'} ] ])); print &ui_table_end(); } # Save/delete/create buttons if (!$in{'new'}) { print &ui_form_end([ [ undef, $text{'save'} ], [ 'raw', $text{'uedit_raw'} ], [ 'delete', $text{'delete'} ], ]); } else { print &ui_form_end([ [ undef, $text{'create'} ] ]); } &ui_print_footer("index.cgi?mode=groups", $text{'index_greturn'});
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
help | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
CHANGELOG | File | 6.18 KB | 0644 |
|
acl_security.pl | File | 7.55 KB | 0755 |
|
batch_exec.cgi | File | 15.72 KB | 0755 |
|
batch_form.cgi | File | 2.49 KB | 0755 |
|
cgi_args.pl | File | 501 B | 0755 |
|
config | File | 388 B | 0644 |
|
config-ALL-linux | File | 416 B | 0644 |
|
config-coherent-linux | File | 385 B | 0644 |
|
config-debian-linux | File | 406 B | 0644 |
|
config-debian-linux-3.1 | File | 395 B | 0644 |
|
config-debian-linux-4.0-ALL | File | 388 B | 0644 |
|
config-debian-squirrelmail-linux | File | 560 B | 0644 |
|
config-macos | File | 466 B | 0644 |
|
config-mandrake-linux | File | 385 B | 0644 |
|
config-openSUSE-Linux-15.0-ALL | File | 394 B | 0644 |
|
config-pardus-linux | File | 397 B | 0644 |
|
config-redhat-linux | File | 385 B | 0644 |
|
config-sol-linux | File | 385 B | 0644 |
|
config-suse-linux | File | 394 B | 0644 |
|
config-syno-linux | File | 452 B | 0644 |
|
config-trustix-linux | File | 394 B | 0644 |
|
config-united-linux | File | 394 B | 0644 |
|
config.info | File | 5.65 KB | 0644 |
|
config.info.ca | File | 6 KB | 0644 |
|
config.info.de | File | 6.47 KB | 0644 |
|
config.info.es | File | 4.93 KB | 0644 |
|
config.info.fr | File | 0 B | 0644 |
|
config.info.nl | File | 5.99 KB | 0644 |
|
config.info.no | File | 5.75 KB | 0644 |
|
config.info.pt_BR | File | 6.06 KB | 0644 |
|
cpan_modules.pl | File | 85 B | 0755 |
|
defaultacl | File | 318 B | 0644 |
|
edit_group.cgi | File | 4.17 KB | 0755 |
|
edit_user.cgi | File | 14.83 KB | 0755 |
|
index.cgi | File | 7.52 KB | 0755 |
|
install_check.pl | File | 612 B | 0755 |
|
ldap-useradmin-lib.pl | File | 33.58 KB | 0755 |
|
log_parser.pl | File | 1.55 KB | 0755 |
|
mass_delete_group.cgi | File | 2.04 KB | 0755 |
|
mass_delete_user.cgi | File | 7.17 KB | 0755 |
|
module.info | File | 261 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 172 B | 0644 |
|
module.info.ar | File | 0 B | 0644 |
|
module.info.ar.auto | File | 234 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 320 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 270 B | 0644 |
|
module.info.ca | File | 169 B | 0644 |
|
module.info.cs | File | 35 B | 0644 |
|
module.info.cs.auto | File | 126 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 155 B | 0644 |
|
module.info.de | File | 174 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 347 B | 0644 |
|
module.info.es | File | 31 B | 0644 |
|
module.info.es.auto | File | 142 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 186 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 284 B | 0644 |
|
module.info.fi | File | 0 B | 0644 |
|
module.info.fi.auto | File | 185 B | 0644 |
|
module.info.fr | File | 0 B | 0644 |
|
module.info.fr.auto | File | 190 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 194 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 183 B | 0644 |
|
module.info.hu | File | 0 B | 0644 |
|
module.info.hu.auto | File | 193 B | 0644 |
|
module.info.it | File | 0 B | 0644 |
|
module.info.it.auto | File | 157 B | 0644 |
|
module.info.ja | File | 0 B | 0644 |
|
module.info.ja.auto | File | 205 B | 0644 |
|
module.info.ko | File | 0 B | 0644 |
|
module.info.ko.auto | File | 174 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 184 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 176 B | 0644 |
|
module.info.ms | File | 172 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 168 B | 0644 |
|
module.info.nl | File | 35 B | 0644 |
|
module.info.nl.auto | File | 142 B | 0644 |
|
module.info.no | File | 32 B | 0644 |
|
module.info.no.auto | File | 126 B | 0644 |
|
module.info.pl | File | 0 B | 0644 |
|
module.info.pl.auto | File | 186 B | 0644 |
|
module.info.pt | File | 0 B | 0644 |
|
module.info.pt.auto | File | 163 B | 0644 |
|
module.info.pt_BR | File | 38 B | 0644 |
|
module.info.pt_BR.auto | File | 134 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 184 B | 0644 |
|
module.info.ru | File | 0 B | 0644 |
|
module.info.ru.auto | File | 279 B | 0644 |
|
module.info.sk | File | 0 B | 0644 |
|
module.info.sk.auto | File | 192 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 185 B | 0644 |
|
module.info.sv | File | 0 B | 0644 |
|
module.info.sv.auto | File | 166 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 303 B | 0644 |
|
module.info.tr | File | 0 B | 0644 |
|
module.info.tr.auto | File | 194 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 289 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 295 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 206 B | 0644 |
|
module.info.zh | File | 0 B | 0644 |
|
module.info.zh.auto | File | 130 B | 0644 |
|
module.info.zh_TW | File | 0 B | 0644 |
|
module.info.zh_TW.auto | File | 136 B | 0644 |
|
postinstall.pl | File | 224 B | 0755 |
|
prefs.info | File | 50 B | 0644 |
|
raw.cgi | File | 967 B | 0755 |
|
save_group.cgi | File | 9.38 KB | 0755 |
|
save_user.cgi | File | 24.6 KB | 0755 |
|
search_group.cgi | File | 1.31 KB | 0755 |
|
search_user.cgi | File | 1.46 KB | 0755 |
|