#!/usr/bin/perl # edit_dir.cgi # Display information about a protected directory require './htaccess-lib.pl'; &foreign_require($apachemod, "apache-lib.pl"); &ReadParse(); $can_create || &error($text{'dir_ecannotcreate'}); if ($in{'new'}) { &ui_print_header(undef, $text{'dir_title1'}, ""); } else { &ui_print_header(undef, $text{'dir_title2'}, ""); @dirs = &list_directories(); ($dir) = grep { $_->[0] eq $in{'dir'} } @dirs; &can_access_dir($dir->[0]) || &error($text{'dir_ecannot'}); } print &ui_form_start("save_dir.cgi"); print &ui_hidden("new", $in{'new'}); print &ui_hidden_table_start($text{'dir_header'}, "width=100%", 2, "main", 1, [ "width=30%" ]); # Directory to protect if ($in{'new'}) { print &ui_table_row($text{'dir_dir'}, &ui_textbox("dir", $dir->[0], 50)." ". &file_chooser_button("dir", 1)); } else { print &ui_table_row($text{'dir_dir'}, "<tt>".&html_escape($dir->[0])."</tt>"); print &ui_hidden("dir", $in{'dir'}); } # File containing users if ($can_htpasswd) { # Allow choice of users file if ($in{'new'}) { $ufile = &ui_radio("auto", 1, [ [ 1, $text{'dir_auto'}."<br>" ], [ 0, $text{'dir_sel'} ] ]); } $ufile .= &ui_textbox("file", $dir->[1], 50)." ". &file_chooser_button("file", 0); } else { # Always automatic if ($in{'new'}) { $ufile = $text{'dir_auto'}; } else { $ufile = "<tt>".&html_escape($dir->[1])."</tt>"; } } print &ui_table_row($text{'dir_file'}, $ufile); # File containing groups if ($can_htgroups) { @opts = ( [ 2, "$text{'dir_none'}<br>" ] ); if ($in{'new'}) { push(@opts, [ 1, "$text{'dir_auto'}<br>" ]); } push(@opts, [ 0, $text{'dir_sel'}." ". &ui_textbox("gfile", $dir->[4], 50)." ". &file_chooser_button("gfile", 0) ]); print &ui_table_row($text{'dir_gfile'}, &ui_radio("gauto", $dir->[4] ? 0 : 2, \@opts)); } # If MD5 encryption is available, show option for it @crypts = ( 0 ); push(@crypts, 1) if ($config{'md5'}); push(@crypts, 2) if ($config{'sha1'}); push(@crypts, 3) if ($config{'digest'}); if (@crypts > 1) { print &ui_table_row($text{'dir_crypt'}, &ui_radio("crypt", int($dir->[2]), [ map { [ $_, $text{'dir_crypt'.$_} ] } @crypts ])); } else { print &ui_hidden("crypt", $crypts[0]); } # Authentication realm if (!$in{'new'}) { &switch_user(); $conf = &foreign_call($apachemod, "get_htaccess_config", "$dir->[0]/$config{'htaccess'}"); &switch_back(); $realm = &foreign_call($apachemod, "find_directive", "AuthName", $conf, 1); } print &ui_table_row($text{'dir_realm'}, &ui_textbox("realm", $realm, 50)); # Users and groups to allow if (!$in{'new'}) { $require = &foreign_call($apachemod, "find_directive_struct", "require", $conf); ($rmode, @rwho) = @{$require->{'words'}} if ($require); } else { $rmode = "valid-user"; } print &ui_table_row($text{'dir_require'}, &ui_radio("require_mode", $rmode, [ [ "valid-user", $text{'dir_requirev'}."<br>" ], [ "user", $text{'dir_requireu'}." ". &ui_textbox("require_user", $rmode eq "user" ? join(" ", @rwho) : "", 40)."<br>" ], [ "group", $text{'dir_requireg'}." ". &ui_textbox("require_group", $rmode eq "group" ? join(" ", @rwho) : "", 40)."<br>" ] ])); print &ui_hidden_table_end(); # Webmin synchronization mode if ($can_sync) { print &ui_hidden_table_start($text{'dir_header2'}, "width=100%", 2, "sync", 0, [ "width=30%" ]); %sync = map { $_, 1 } split(/,/, $dir->[3]); foreach $s ('create', 'update', 'delete') { print &ui_table_row($text{'dir_sync_'.$s}, &ui_yesno_radio("sync_$s", $sync{$s} ? 1 : 0)); } print &ui_hidden_table_end(); } if ($in{'new'}) { print &ui_form_end([ [ undef, $text{'create'} ] ]); } else { if (&foreign_available("apache")) { %aaccess = &get_module_acl(undef, "apache"); if ($aaccess{'global'}) { @abutton = ( undef, [ 'apache', $text{'dir_apache'} ] ); } } print &ui_form_end([ [ undef, $text{'save'} ], [ 'delete', $text{'dir_delete'} ], [ 'remove', $dir->[4] ? $text{'dir_delete2'} : $text{'dir_delete3'} ], @abutton ]); } &ui_print_footer("", $text{'index_return'});
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
CHANGELOG | File | 1.76 KB | 0644 |
|
acl_security.pl | File | 1.19 KB | 0755 |
|
cgi_args.pl | File | 838 B | 0755 |
|
config | File | 104 B | 0644 |
|
config-windows | File | 104 B | 0644 |
|
config.info | File | 404 B | 0644 |
|
config.info.bg | File | 736 B | 0644 |
|
config.info.ca | File | 464 B | 0644 |
|
config.info.cs | File | 438 B | 0644 |
|
config.info.de | File | 520 B | 0644 |
|
config.info.es | File | 377 B | 0644 |
|
config.info.fi | File | 0 B | 0644 |
|
config.info.fr | File | 510 B | 0644 |
|
config.info.hu | File | 378 B | 0644 |
|
config.info.ja | File | 521 B | 0644 |
|
config.info.ko | File | 387 B | 0644 |
|
config.info.ms | File | 0 B | 0644 |
|
config.info.nl | File | 451 B | 0644 |
|
config.info.no | File | 435 B | 0644 |
|
config.info.tr | File | 352 B | 0644 |
|
config.info.zh_TW | File | 169 B | 0644 |
|
defaultacl | File | 32 B | 0644 |
|
delete.cgi | File | 1.17 KB | 0755 |
|
edit_dir.cgi | File | 4.02 KB | 0755 |
|
edit_group.cgi | File | 1.3 KB | 0755 |
|
edit_user.cgi | File | 1.58 KB | 0755 |
|
htaccess-lib.pl | File | 3.88 KB | 0755 |
|
htpasswd-file-lib.pl | File | 6.27 KB | 0755 |
|
index.cgi | File | 4.49 KB | 0755 |
|
log_parser.pl | File | 475 B | 0755 |
|
md5-lib.pl | File | 7.58 KB | 0755 |
|
module.info | File | 215 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 149 B | 0644 |
|
module.info.ar | File | 0 B | 0644 |
|
module.info.ar.auto | File | 197 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 210 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 224 B | 0644 |
|
module.info.ca | File | 126 B | 0644 |
|
module.info.ca.auto | File | 24 B | 0644 |
|
module.info.cs | File | 36 B | 0644 |
|
module.info.cs.auto | File | 125 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 142 B | 0644 |
|
module.info.de | File | 146 B | 0644 |
|
module.info.de.auto | File | 25 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 314 B | 0644 |
|
module.info.es | File | 35 B | 0644 |
|
module.info.es.auto | File | 127 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 150 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 249 B | 0644 |
|
module.info.fi | File | 33 B | 0644 |
|
module.info.fi.auto | File | 117 B | 0644 |
|
module.info.fr | File | 36 B | 0644 |
|
module.info.fr.auto | File | 135 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 197 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 155 B | 0644 |
|
module.info.hu | File | 40 B | 0644 |
|
module.info.hu.auto | File | 140 B | 0644 |
|
module.info.it | File | 0 B | 0644 |
|
module.info.it.auto | File | 142 B | 0644 |
|
module.info.ja | File | 45 B | 0644 |
|
module.info.ja.auto | File | 161 B | 0644 |
|
module.info.ko | File | 32 B | 0644 |
|
module.info.ko.auto | File | 136 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 178 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 170 B | 0644 |
|
module.info.ms | File | 119 B | 0644 |
|
module.info.ms.auto | File | 22 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 152 B | 0644 |
|
module.info.nl | File | 35 B | 0644 |
|
module.info.nl.auto | File | 122 B | 0644 |
|
module.info.no | File | 33 B | 0644 |
|
module.info.no.auto | File | 126 B | 0644 |
|
module.info.pl | File | 0 B | 0644 |
|
module.info.pl.auto | File | 149 B | 0644 |
|
module.info.pt | File | 0 B | 0644 |
|
module.info.pt.auto | File | 158 B | 0644 |
|
module.info.pt_BR | File | 0 B | 0644 |
|
module.info.pt_BR.auto | File | 167 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 155 B | 0644 |
|
module.info.ru | File | 0 B | 0644 |
|
module.info.ru.auto | File | 208 B | 0644 |
|
module.info.sk | File | 0 B | 0644 |
|
module.info.sk.auto | File | 156 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 154 B | 0644 |
|
module.info.sv | File | 0 B | 0644 |
|
module.info.sv.auto | File | 161 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 274 B | 0644 |
|
module.info.tr | File | 0 B | 0644 |
|
module.info.tr.auto | File | 160 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 208 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 220 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 180 B | 0644 |
|
module.info.zh | File | 0 B | 0644 |
|
module.info.zh.auto | File | 128 B | 0644 |
|
module.info.zh_TW | File | 30 B | 0644 |
|
module.info.zh_TW.auto | File | 101 B | 0644 |
|
prefs.info | File | 28 B | 0644 |
|
save_dir.cgi | File | 8.16 KB | 0755 |
|
save_group.cgi | File | 1.28 KB | 0755 |
|
save_user.cgi | File | 1.69 KB | 0755 |
|
search.cgi | File | 1.81 KB | 0755 |
|
useradmin_update.pl | File | 1.75 KB | 0755 |
|