Linux ns8.secondary29.go.th 2.6.32-754.28.1.el6.x86_64 #1 SMP Wed Mar 11 18:38:45 UTC 2020 x86_64
Apache/2.2.15 (CentOS)
: 122.154.134.11 | : 122.154.134.9
Cant Read [ /etc/named.conf ]
5.6.40
apache
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
libexec /
webmin /
apache /
[ HOME SHELL ]
Name
Size
Permission
Action
images
[ DIR ]
drwxr-xr-x
lang
[ DIR ]
drwxr-xr-x
CHANGELOG
4.06
KB
-rw-r--r--
acl_security.pl
5.44
KB
-rwxr-xr-x
allmanual_form.cgi
1.1
KB
-rwxr-xr-x
allmanual_save.cgi
881
B
-rwxr-xr-x
apache-lib.pl
52.72
KB
-rwxr-xr-x
auth-lib.pl
3.09
KB
-rwxr-xr-x
autoindex.pl
9.54
KB
-rwxr-xr-x
backup_config.pl
1.39
KB
-rwxr-xr-x
browsermatch.pl
2.15
KB
-rwxr-xr-x
cache.pl
3
KB
-rwxr-xr-x
cgi_args.pl
1.02
KB
-rwxr-xr-x
change_dir.cgi
1.29
KB
-rwxr-xr-x
change_files.cgi
1.07
KB
-rwxr-xr-x
config-Amazon-Linux-2-ALL
403
B
-rw-r--r--
config-CentOS-Linux-7.0-ALL
403
B
-rw-r--r--
config-Fedora-Linux-20-ALL
405
B
-rw-r--r--
config-Redhat-Enterprise-Linux...
403
B
-rw-r--r--
config-Scientific-Linux-7.0-AL...
403
B
-rw-r--r--
config-aix
284
B
-rw-r--r--
config-cobalt-linux
295
B
-rw-r--r--
config-coherent-linux
371
B
-rw-r--r--
config-corel-linux
396
B
-rw-r--r--
config-debian-linux
396
B
-rw-r--r--
config-debian-linux-3.1-6.9
591
B
-rw-r--r--
config-debian-linux-7.0-ALL
621
B
-rw-r--r--
config-freebsd
441
B
-rw-r--r--
config-freebsd-8.0-ALL
449
B
-rw-r--r--
config-generic-linux
305
B
-rw-r--r--
config-gentoo-linux
431
B
-rw-r--r--
config-hpux
305
B
-rw-r--r--
config-irix
305
B
-rw-r--r--
config-irix-6.5
343
B
-rw-r--r--
config-lfs-linux
487
B
-rw-r--r--
config-macos
517
B
-rw-r--r--
config-macos-1.3-8.1
366
B
-rw-r--r--
config-macos-9.2-ALL
331
B
-rw-r--r--
config-mandrake-linux
385
B
-rw-r--r--
config-msc-linux
285
B
-rw-r--r--
config-netbsd
405
B
-rw-r--r--
config-open-linux-2.3
361
B
-rw-r--r--
config-open-linux-2.3e
347
B
-rw-r--r--
config-open-linux-2.4
347
B
-rw-r--r--
config-open-linux-2.5
444
B
-rw-r--r--
config-open-linux-3.1e
455
B
-rw-r--r--
config-openbsd
367
B
-rw-r--r--
config-openmamba-linux
401
B
-rw-r--r--
config-openserver
445
B
-rw-r--r--
config-osf1
305
B
-rw-r--r--
config-pardus-linux
381
B
-rw-r--r--
config-redhat-linux
295
B
-rw-r--r--
config-redhat-linux-12.1-12.9
372
B
-rw-r--r--
config-redhat-linux-13.0-23.0
357
B
-rw-r--r--
config-redhat-linux-24.0-ALL
371
B
-rw-r--r--
config-redhat-linux-7.0-7.4
416
B
-rw-r--r--
config-redhat-linux-8.0
371
B
-rw-r--r--
config-redhat-linux-8.1
457
B
-rw-r--r--
config-redhat-linux-9.0-12.0
371
B
-rw-r--r--
config-slackware-linux
196
B
-rw-r--r--
config-slackware-linux-12.0-AL...
406
B
-rw-r--r--
config-slackware-linux-7.0-7.1
333
B
-rw-r--r--
config-slackware-linux-8.0-ALL
372
B
-rw-r--r--
config-sol-linux
317
B
-rw-r--r--
config-solaris
305
B
-rw-r--r--
config-solaris-10
309
B
-rw-r--r--
config-solaris-11-ALL
459
B
-rw-r--r--
config-solaris-9
309
B
-rw-r--r--
config-suse-linux
398
B
-rw-r--r--
config-suse-linux-7.1-8.0
396
B
-rw-r--r--
config-suse-linux-8.2
423
B
-rw-r--r--
config-suse-linux-9.0
455
B
-rw-r--r--
config-suse-linux-9.1-ALL
531
B
-rw-r--r--
config-syno-linux
305
B
-rw-r--r--
config-trustix-linux
356
B
-rw-r--r--
config-turbo-linux
295
B
-rw-r--r--
config-united-linux
388
B
-rw-r--r--
config-unixware
445
B
-rw-r--r--
config-windows
434
B
-rw-r--r--
config.info
1.96
KB
-rw-r--r--
config.info.bg
2.11
KB
-rw-r--r--
config.info.bg.UTF-8
3.3
KB
-rw-r--r--
config.info.ca
2.18
KB
-rw-r--r--
config.info.ca.UTF-8
2.22
KB
-rw-r--r--
config.info.cz
1.91
KB
-rw-r--r--
config.info.cz.UTF-8
2.03
KB
-rw-r--r--
config.info.da
483
B
-rw-r--r--
config.info.da.UTF-8
483
B
-rw-r--r--
config.info.de
2.28
KB
-rw-r--r--
config.info.de.UTF-8
2.28
KB
-rw-r--r--
config.info.es
1.88
KB
-rw-r--r--
config.info.es.UTF-8
1.88
KB
-rw-r--r--
config.info.fa
2.37
KB
-rw-r--r--
config.info.fr
1.84
KB
-rw-r--r--
config.info.fr.UTF-8
1.81
KB
-rw-r--r--
config.info.hr
0
B
-rw-r--r--
config.info.hu
732
B
-rw-r--r--
config.info.hu.UTF-8
775
B
-rw-r--r--
config.info.ja_JP.UTF-8
2.16
KB
-rw-r--r--
config.info.ja_JP.euc
1.68
KB
-rw-r--r--
config.info.ms_MY
2.14
KB
-rw-r--r--
config.info.ms_MY.UTF-8
2.14
KB
-rw-r--r--
config.info.nl
1.98
KB
-rw-r--r--
config.info.nl.UTF-8
1.98
KB
-rw-r--r--
config.info.no
2.09
KB
-rw-r--r--
config.info.no.UTF-8
2.09
KB
-rw-r--r--
config.info.pl
2.07
KB
-rw-r--r--
config.info.pl.UTF-8
2.12
KB
-rw-r--r--
config.info.pt_BR
2.73
KB
-rw-r--r--
config.info.pt_BR.UTF-8
2.73
KB
-rw-r--r--
config.info.ru.UTF-8
1.56
KB
-rw-r--r--
config.info.ru_RU
1.01
KB
-rw-r--r--
config.info.ru_RU.UTF-8
1.56
KB
-rw-r--r--
config.info.ru_SU
1.01
KB
-rw-r--r--
config.info.sv
710
B
-rw-r--r--
config.info.sv.UTF-8
710
B
-rw-r--r--
config.info.tr
1.81
KB
-rw-r--r--
config.info.uk_UA
1.03
KB
-rw-r--r--
config.info.uk_UA.UTF-8
1.55
KB
-rw-r--r--
config.info.zh_CN
469
B
-rw-r--r--
config.info.zh_CN.UTF-8
568
B
-rw-r--r--
config.info.zh_TW.Big5
1.02
KB
-rw-r--r--
config.info.zh_TW.UTF-8
1.23
KB
-rw-r--r--
config_solaris.txt.1.25
81
B
-rw-r--r--
core.pl
39.68
KB
-rwxr-xr-x
create_dir.cgi
1.17
KB
-rwxr-xr-x
create_files.cgi
949
B
-rwxr-xr-x
create_htaccess.cgi
1.49
KB
-rwxr-xr-x
create_virt.cgi
7.15
KB
-rwxr-xr-x
defaultacl
119
B
-rw-r--r--
delete_htaccess.cgi
552
B
-rwxr-xr-x
delete_vservs.cgi
802
B
-rwxr-xr-x
dir_index.cgi
1.94
KB
-rwxr-xr-x
edit_authgroup.cgi
1.52
KB
-rwxr-xr-x
edit_authuser.cgi
1.75
KB
-rwxr-xr-x
edit_defines.cgi
799
B
-rwxr-xr-x
edit_dir.cgi
1.03
KB
-rwxr-xr-x
edit_files.cgi
1.06
KB
-rwxr-xr-x
edit_global.cgi
1.62
KB
-rwxr-xr-x
edit_gmime_type.cgi
1
KB
-rwxr-xr-x
edit_htaccess.cgi
999
B
-rwxr-xr-x
edit_mods.cgi
1.04
KB
-rwxr-xr-x
edit_virt.cgi
1.46
KB
-rwxr-xr-x
feedback_files.pl
125
B
-rwxr-xr-x
files_index.cgi
1.68
KB
-rwxr-xr-x
find_htaccess.cgi
1.73
KB
-rwxr-xr-x
htaccess.cgi
1.28
KB
-rwxr-xr-x
htaccess_index.cgi
2.38
KB
-rwxr-xr-x
index.cgi
15.34
KB
-rwxr-xr-x
install_check.pl
450
B
-rwxr-xr-x
list_authgroups.cgi
1.42
KB
-rwxr-xr-x
list_authusers.cgi
1.88
KB
-rwxr-xr-x
log_parser.pl
3.7
KB
-rwxr-xr-x
manual_form.cgi
3.13
KB
-rwxr-xr-x
manual_save.cgi
2.19
KB
-rwxr-xr-x
mod_access.pl
3.18
KB
-rwxr-xr-x
mod_actions.pl
2.57
KB
-rwxr-xr-x
mod_alias.pl
5.7
KB
-rwxr-xr-x
mod_apachessl.pl
13.47
KB
-rwxr-xr-x
mod_asis.pl
125
B
-rwxr-xr-x
mod_auth.pl
1.88
KB
-rwxr-xr-x
mod_auth_basic.pl
983
B
-rwxr-xr-x
mod_auth_dbm.pl
1.79
KB
-rwxr-xr-x
mod_auth_digest.pl
1.56
KB
-rwxr-xr-x
mod_authn_dbm.pl
1.02
KB
-rwxr-xr-x
mod_authn_file.pl
838
B
-rwxr-xr-x
mod_authz_dbm.pl
1.38
KB
-rwxr-xr-x
mod_authz_groupfile.pl
863
B
-rwxr-xr-x
mod_authz_host.pl
314
B
-rwxr-xr-x
mod_authz_owner.pl
139
B
-rwxr-xr-x
mod_autoindex.pl
2.15
KB
-rwxr-xr-x
mod_bandwidth.pl
3.86
KB
-rwxr-xr-x
mod_browser.pl
274
B
-rwxr-xr-x
mod_cache.pl
2.73
KB
-rwxr-xr-x
mod_cern_meta.pl
1.13
KB
-rwxr-xr-x
mod_cgi.pl
1.26
KB
-rwxr-xr-x
mod_cgid.pl
1.26
KB
-rwxr-xr-x
mod_dav.pl
1.1
KB
-rwxr-xr-x
mod_dir.pl
1.06
KB
-rwxr-xr-x
mod_disk_cache.pl
1.03
KB
-rwxr-xr-x
mod_env.pl
2.03
KB
-rwxr-xr-x
mod_expires.pl.broken
3.22
KB
-rw-r--r--
mod_ext_filter.pl
2.63
KB
-rwxr-xr-x
mod_fastcgi.pl
181
B
-rwxr-xr-x
mod_fcgid.pl
169
B
-rwxr-xr-x
mod_imap.pl
2.35
KB
-rwxr-xr-x
mod_include.pl
601
B
-rwxr-xr-x
mod_info.pl
145
B
-rwxr-xr-x
mod_log_agent.pl
1.08
KB
-rwxr-xr-x
mod_log_common.pl
1.14
KB
-rwxr-xr-x
mod_log_config.pl
4.49
KB
-rwxr-xr-x
mod_log_referer.pl
1.59
KB
-rwxr-xr-x
mod_mem_cache.pl
1.1
KB
-rwxr-xr-x
mod_mime.pl
6.16
KB
-rwxr-xr-x
mod_mime_magic.pl
521
B
-rwxr-xr-x
mod_mpm_prefork.pl
820
B
-rwxr-xr-x
mod_negotiation.pl
1.25
KB
-rwxr-xr-x
mod_perl.pl
147
B
-rwxr-xr-x
mod_php.pl
93
B
-rwxr-xr-x
mod_php3.pl
147
B
-rwxr-xr-x
mod_php4.pl
2.89
KB
-rwxr-xr-x
mod_php5.pl
2.82
KB
-rwxr-xr-x
mod_php7.pl
2.82
KB
-rwxr-xr-x
mod_proxy.pl
8.42
KB
-rwxr-xr-x
mod_proxy_balancer.pl
173
B
-rwxr-xr-x
mod_rewrite.pl
121
B
-rwxr-xr-x
mod_ruby.pl
155
B
-rwxr-xr-x
mod_setenvif.pl
3.04
KB
-rwxr-xr-x
mod_speling.pl
565
B
-rwxr-xr-x
mod_ssl.pl
6.12
KB
-rwxr-xr-x
mod_status.pl
542
B
-rwxr-xr-x
mod_suexec.pl
1.24
KB
-rwxr-xr-x
mod_userdir.pl
2.58
KB
-rwxr-xr-x
mod_vhost_alias.pl
2.33
KB
-rwxr-xr-x
module.info
265
B
-rw-r--r--
module.info.ar
142
B
-rw-r--r--
module.info.bg
53
B
-rw-r--r--
module.info.bg.UTF-8
101
B
-rw-r--r--
module.info.ca
107
B
-rw-r--r--
module.info.ca.UTF-8
121
B
-rw-r--r--
module.info.cz
26
B
-rw-r--r--
module.info.cz.UTF-8
32
B
-rw-r--r--
module.info.da
25
B
-rw-r--r--
module.info.da.UTF-8
31
B
-rw-r--r--
module.info.de
92
B
-rw-r--r--
module.info.de.UTF-8
104
B
-rw-r--r--
module.info.es
28
B
-rw-r--r--
module.info.es.UTF-8
34
B
-rw-r--r--
module.info.fr
27
B
-rw-r--r--
module.info.fr.UTF-8
33
B
-rw-r--r--
module.info.hu
87
B
-rw-r--r--
module.info.hu.UTF-8
107
B
-rw-r--r--
module.info.ja_JP.UTF-8
37
B
-rw-r--r--
module.info.ja_JP.euc
32
B
-rw-r--r--
module.info.ko_KR.UTF-8
35
B
-rw-r--r--
module.info.ko_KR.euc
33
B
-rw-r--r--
module.info.ms_MY
114
B
-rw-r--r--
module.info.ms_MY.UTF-8
126
B
-rw-r--r--
module.info.nl
25
B
-rw-r--r--
module.info.nl.UTF-8
31
B
-rw-r--r--
module.info.no
25
B
-rw-r--r--
module.info.no.UTF-8
31
B
-rw-r--r--
module.info.pl
96
B
-rw-r--r--
module.info.pl.UTF-8
108
B
-rw-r--r--
module.info.pt
28
B
-rw-r--r--
module.info.pt.UTF-8
34
B
-rw-r--r--
module.info.pt_BR
31
B
-rw-r--r--
module.info.pt_BR.UTF-8
37
B
-rw-r--r--
module.info.ru.UTF-8
41
B
-rw-r--r--
module.info.ru_RU
29
B
-rw-r--r--
module.info.ru_RU.UTF-8
44
B
-rw-r--r--
module.info.ru_SU
29
B
-rw-r--r--
module.info.sv
25
B
-rw-r--r--
module.info.sv.UTF-8
31
B
-rw-r--r--
module.info.tr
28
B
-rw-r--r--
module.info.zh_CN
25
B
-rw-r--r--
module.info.zh_TW.Big5
34
B
-rw-r--r--
mpm_netware.pl
1.26
KB
-rwxr-xr-x
mpm_winnt.pl
801
B
-rwxr-xr-x
notes
1.12
KB
-rw-r--r--
perchild.pl
4.05
KB
-rwxr-xr-x
postinstall.pl
92
B
-rwxr-xr-x
prefork.pl
796
B
-rwxr-xr-x
reconfig.cgi
543
B
-rwxr-xr-x
reconfig_form.cgi
1.55
KB
-rwxr-xr-x
remove_vserv.pl
814
B
-rwxr-xr-x
restart.cgi
1019
B
-rwxr-xr-x
save_authgroup.cgi
1.09
KB
-rwxr-xr-x
save_authuser.cgi
1.17
KB
-rwxr-xr-x
save_defines.cgi
462
B
-rwxr-xr-x
save_dir.cgi
640
B
-rwxr-xr-x
save_files.cgi
745
B
-rwxr-xr-x
save_global.cgi
483
B
-rwxr-xr-x
save_gmime_type.cgi
742
B
-rwxr-xr-x
save_htaccess.cgi
671
B
-rwxr-xr-x
save_mods.cgi
883
B
-rwxr-xr-x
save_sync.cgi
488
B
-rwxr-xr-x
save_virt.cgi
990
B
-rwxr-xr-x
save_vserv.cgi
3.66
KB
-rwxr-xr-x
search_virt.cgi
4.12
KB
-rwxr-xr-x
show.cgi
3.63
KB
-rwxr-xr-x
show_dir.cgi
1.99
KB
-rwxr-xr-x
show_files.cgi
1.99
KB
-rwxr-xr-x
show_htaccess.cgi
2.02
KB
-rwxr-xr-x
show_virt.cgi
2.12
KB
-rwxr-xr-x
start.cgi
309
B
-rwxr-xr-x
stop.cgi
290
B
-rwxr-xr-x
syslog_logs.pl
452
B
-rwxr-xr-x
useradmin_update.pl
957
B
-rwxr-xr-x
virt_index.cgi
4.92
KB
-rwxr-xr-x
worker.pl
1.57
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : autoindex.pl
# autoindex.pl # Directives in both mod_dir.pl and mod_autoindex.pl @AddIcon_dirs = ("AddIcon", "AddIconByType", "AddIconByEncoding"); @AddIcon_descs = ("$text{'autoindex_fname'}", "$text{'autoindex_mime'}", "$text{'autoindex_enc'}"); sub edit_AddIcon_AddIconByType_AddIconByEncoding { local($rv, @all, $i, $j, $icon, $alt, $mode, $file); $rv = "<table border>\n". "<tr $tb> <td><b>$text{'autoindex_icon'}</b></td> <td><b>$text{'autoindex_alt'}</b></td>\n". "<td><b>$text{'autoindex_match'}</b></td> <td><b>$text{'autoindex_fte'}</b></td></tr>\n"; @all = (@{$_[0]}, @{$_[1]}, @{$_[2]}); for($i=0; $i<=@all; $i++) { $d = $all[$i]; if ($d) { if ($d->{'value'} =~ /^\((.*),(\S+)\)\s*(.*)$/) { $alt = $1; $icon = $2; $file = $3; } elsif ($d->{'value'} =~ /^(\S+)\s*(.*)$/) { $alt = ""; $icon = $1; $file = $2; } $mode = &indexof($d->{'name'}, @AddIcon_dirs); } else { $alt = $icon = $file = ""; $mode = 0; } $rv .="<tr $cb>\n"; $rv .="<td><input name=AddIcon_icon_$i size=25 value=\"$icon\"></td>\n"; $rv .="<td><input name=AddIcon_alt_$i size=10 value=\"$alt\"></td>\n"; $rv .="<td><select name=AddIcon_mode_$i>\n"; for($j=0; $j<@AddIcon_descs; $j++) { $rv .= sprintf "<option value=$j %s>%s</option>\n", $mode == $j ? "selected" : "", $AddIcon_descs[$j]; } $rv .="</select></td>\n"; $rv .="<td><input name=AddIcon_file_$i size=20 value=\"$file\"></td>\n"; $rv .="</tr>\n"; } $rv .= "</table>\n"; return (2, "$text{'autoindex_diricon'}", $rv); } sub save_AddIcon_AddIconByType_AddIconByEncoding { local($i, $icon, $alt, $file, $mode, $aref, @ai, @ait, @aie); for($i=0; defined($in{"AddIcon_icon_$i"}); $i++) { $icon = $in{"AddIcon_icon_$i"}; $alt = $in{"AddIcon_alt_$i"}; $mode = $in{"AddIcon_mode_$i"}; $file = $in{"AddIcon_file_$i"}; if ($icon !~ /\S/ && $file !~ /\S/) { next; } $icon =~ /^\S+$/ || &error(&text('autoindex_eiconurl', $icon)); $file =~ /\S/ || &error(&text('autoindex_emiss', $AddIcon_descs[$mode], $icon)); $aref = $mode==0 ? \@ai : $mode==1 ? \@ait : \@aie; if ($alt) { push(@$aref, "($alt,$icon) $file"); } else { push(@$aref, "$icon $file"); } } return ( \@ai, \@ait, \@aie ); } sub edit_DefaultIcon { return (1, "$text{'autoindex_deficon'}", &opt_input($_[0]->{'value'}, "DefaultIcon", "$text{'autoindex_default'}", 20)); } sub save_DefaultIcon { return &parse_opt("DefaultIcon", '^\S+$', "$text{'autoindex_edeficon'}"); } @AddAlt_dirs = ("AddAlt", "AddAltByType", "AddAltByEncoding"); @AddAlt_descs = ("Filename", "MIME type", "Encoding"); sub edit_AddAlt_AddAltByType_AddAltByEncoding { local($rv, @all, $i, $j, $alt, $mode, $file); $rv = "<table border>\n". "<tr $tb> <td><b>$text{'autoindex_alt'}</b></td>\n". "<td><b>$text{'autoindex_match'}</b></td> <td><b>$text{'autoindex_fte'}</b></td></tr>\n"; @all = (@{$_[0]}, @{$_[1]}, @{$_[2]}); for($i=0; $i<=@all; $i++) { $d = $all[$i]; if ($d->{'value'}) { $alt = $d->{'words'}->[0]; @w = @{$d->{'words'}}; $file = join(' ', @w[1..$#w]); $mode = &indexof($d->{'name'}, @AddAlt_dirs); } else { $alt = $file = ""; $mode = 0; } $rv .="<tr $cb>\n"; $rv .="<td><input name=AddAlt_alt_$i size=20 value=\"$alt\"></td>\n"; $rv .="<td><select name=AddAlt_mode_$i>\n"; for($j=0; $j<@AddAlt_descs; $j++) { $rv .= sprintf "<option value=$j %s>%s</option>\n", $mode == $j ? "selected" : "", $AddAlt_descs[$j]; } $rv .="</select></td>\n"; $rv .="<td><input name=AddAlt_file_$i size=20 value=\"$file\"></td>\n"; $rv .="</tr>\n"; } $rv .= "</table>\n"; return (2, "$text{'autoindex_diralt'}", $rv); } sub save_AddAlt_AddAltByType_AddAltByEncoding { local($i, $alt, $file, $mode, $aref, @ai, @ait, @aie); for($i=0; defined($alt = $in{"AddAlt_alt_$i"}); $i++) { $mode = $in{"AddAlt_mode_$i"}; $file = $in{"AddAlt_file_$i"}; if ($alt !~ /\S/ && $file !~ /\S/) { next; } $file =~ /\S/ || &error(&text('autoindex_emissquot', $AddAlt_descs[$mode], $alt)); $aref = $mode==0 ? \@ai : $mode==1 ? \@ait : \@aie; push(@$aref, "\"$alt\" $file"); } return ( \@ai, \@ait, \@aie ); } sub edit_AddDescription { local($rv, $i, $desc, $file); $rv = "<table border>\n". "<tr $tb> <td><b>$text{'autoindex_desc'}</b></td> <td><b>$text{'autoindex_fnames'}</b></td> </tr>\n"; for($i=0; $i<=@{$_[0]}; $i++) { if ($_[0]->[$i] && $_[0]->[$i]->{'value'} =~ /^"(.*)"\s*(.*)$/) { $desc = $1; $file = $2; } else { $desc = $file = ""; } $rv .= "<tr $cb> <td><input size=40 name=AddDescription_desc_$i ". "value=\"$desc\"></td>\n"; $rv .= "<td><input size=20 name=AddDescription_file_$i ". "value=\"$file\"></td> </tr>\n"; } $rv .= "</table>\n"; return (2, "$text{'autoindex_dirdesc'}", $rv); } sub save_AddDescription { local($i, $desc, $file, @rv); for($i=0; defined($in{"AddDescription_desc_$i"}); $i++) { $desc = $in{"AddDescription_desc_$i"}; $file = $in{"AddDescription_file_$i"}; if ($desc !~ /\S/ && $file !~ /\S/) { next; } $desc =~ /\S/ || &error(&text('autoindex_enodesc', $file)); $file =~ /\S/ || &error(&text('autoindex_enofile', $desc)); push(@rv, "\"$desc\" $file"); } return ( \@rv ); } @IndexOptions_v = ( "FancyIndexing", "ScanHTMLTitles", "IconHeight", "IconWidth", "SuppressColumnSorting", "SuppressDescription", "SuppressHTMLPreamble", "SuppressLastModified", "SuppressSize", "IconsAreLinks", "NameWidth", "DescriptionWidth", "FoldersFirst", "HTMLTable", "IgnoreClient", "SuppressIcon", "SuppressRules", "TrackModified", "VersionSort" ); @IndexOptions_d = ( $text{'autoindex_fancy'}, $text{'autoindex_htmltitle'}, $text{'autoindex_iheight'}, $text{'autoindex_iwidth'}, $text{'autoindex_sort'}, $text{'autoindex_fildesc'}, $text{'autoindex_htags'}, $text{'autoindex_mtime'}, $text{'autoindex_size'}, $text{'autoindex_iconlink'}, $text{'autoindex_fwidth'}, $text{'autoindex_dwidth'}, $text{'autoindex_dirfirst'}, $text{'autoindex_html'}, $text{'autoindex_client'}, $text{'autoindex_sicon'}, $text{'autoindex_srules'}, $text{'autoindex_track'}, $text{'autoindex_version'} ); @IndexOptions_i = ( 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0 ); @IndexOptions_n = ( 0, 0, 1.3, 1.3, 1.3, 0, 1.3, 0, 0, 1.302, 1.302, 1.310, 1.310, 2.023, 2.023, 2.023, 2.023, 2.023, 2.0 ); sub edit_IndexOptions_FancyIndexing { local($o, %opts, $i, $rv); $rv = &choice_input($_[0] || $_[1] ? 0 : 1, "IndexOptions_def", 1, "$text{'autoindex_default2'},1", "$text{'autoindex_select'},0"); foreach $o (split(/\s+/, $_[0]->{'value'})) { if ($o =~ /^(\S+)=(\S+)$/) { $opts{$1} = $2; } else { $opts{$o} = -1; } } if ($_[1]->{'value'} eq "on") { $opts{'FancyIndexing'} = -1; } $rv .= "<table border><tr><td><table cellpadding=0>\n"; local $sw = 0; for($i=0; $i<@IndexOptions_v; $i++) { $o = $IndexOptions_v[$i]; next if ($_[2]->{'version'} < $IndexOptions_n[$i]); $rv .= "<tr>\n" if (!$sw); if ($IndexOptions_i[$i]) { $opts{$o} = -$opts{$o}-1; } $rv .= sprintf "<td><input type=checkbox name=Index_$o value=1 %s> %s\n", $opts{$o} ? "checked" : "", $IndexOptions_d[$i]; if ($o =~ /IconWidth|IconHeight/) { $rv .= " "; $rv .= sprintf "<input type=radio name=Index_${o}_def value=1 %s> $text{'autoindex_default3'}\n", $opts{$o} < 0 ? "checked" : ""; $rv .= sprintf " <input type=radio name=Index_${o}_def value=0 %s>\n", $opts{$o} < 0 ? "" : "checked"; $rv .= sprintf "<input name=Index_${o}_wh size=5 value=\"%s\"> $text{'autoindex_pixels'}\n", $opts{$o} < 0 ? "" : $opts{$o}; } elsif ($o =~ /NameWidth|DescriptionWidth/) { $rv .= " "; $rv .= sprintf "<input name=Index_${o}_w size=5 value=\"%s\"> $text{'autoindex_chars'}\n", $opts{$o} < 0 ? "" : $opts{$o}; } $rv .= "</td>"; $rv .= "</tr>\n" if ($sw); $sw = !$sw; } $rv .= "</table></td></tr></table>\n"; return (2, "$text{'autoindex_diropt'}", $rv); } sub save_IndexOptions_FancyIndexing { local($i, $o, @rv, %opts); if ($in{'IndexOptions_def'}) { return ( [ ], [ ] ); } for($i=0; $i<@IndexOptions_v; $i++) { $o = $IndexOptions_v[$i]; next if ($_[0]->{'version'} < $IndexOptions_n[$i]); if ($in{"Index_$o"}) { $opts{$o} = -1; } if ($o =~ /IconWidth|IconHeight/ && $in{"Index_${o}"} && !$in{"Index_${o}_def"}) { $in{"Index_${o}_wh"} =~ /^[1-9]\d*$/ || &error(&text('autoindex_eiconsize', $in{"Index_${o}_wh"})); $opts{$o} = $in{"Index_${o}_wh"}; } elsif ($o =~ /NameWidth|DescriptionWidth/ && $in{"Index_${o}"}) { $in{"Index_${o}_w"} =~ /^[1-9]\d*$/ || $in{"Index_${o}_w"} eq '*' || &error(&text('autoindex_ewidth', $in{"Index_$(o)_h"})); $opts{$o} = $in{"Index_${o}_w"}; } if ($IndexOptions_i[$i]) { $opts{$o} = -$opts{$o}-1; } if ($opts{$o} < 0) { push(@rv, "$o"); } elsif ($opts{$o} > 0) { push(@rv, "$o=$opts{$o}"); } } return ( [ join(' ', @rv) ], [ ] ); } sub edit_HeaderName { return (1, "$text{'autoindex_dirhead'}", &opt_input($_[0]->{'value'}, "HeaderName", "$text{'autoindex_default4'}", 20)); } sub save_HeaderName { return &parse_opt("HeaderName", '^\S+$', "$text{'autoindex_edirhead'}"); } sub edit_ReadmeName { return (1, "$text{'autoindex_dirfoot'}", &opt_input($_[0]->{'value'}, "ReadmeName", "$text{'autoindex_default4'}", 20)); } sub save_ReadmeName { return &parse_opt("ReadmeName", '^\S+$', "$text{'autoindex_edirfoot'}"); } sub edit_IndexIgnore { local($rv, $i, @ii); foreach $i (@{$_[0]}) { push(@ii, split(/\s+/, $i->{'value'})); } $rv = join("\n", @ii); return (1, "$text{'autoindex_ignore'}", "<textarea name=IndexIgnore rows=5 cols=20>$rv</textarea>"); } sub save_IndexIgnore { local(@rv); @rv = split(/\s+/, $in{'IndexIgnore'}); if (!@rv) { return ( [ ] ); } else { return ( [ join(' ', @rv) ] ); } } 1;
Close