/usr/share/usermin/gray-theme
NameSizeModeActions
acl/-0755rm
adsl-client/-0755rm
apache/-0755rm
at/-0755rm
backup-config/-0755rm
bandwidth/-0755rm
bind8/-0755rm
bsdfdisk/-0755rm
burner/-0755rm
cfengine/-0755rm
change-user/-0755rm
cluster-copy/-0755rm
cluster-cron/-0755rm
cluster-passwd/-0755rm
cluster-shell/-0755rm
cluster-software/-0755rm
cluster-useradmin/-0755rm
cluster-webmin/-0755rm
cpan/-0755rm
cron/-0755rm
custom/-0755rm
dhcpd/-0755rm
dhcpd-2.0/-0755rm
dnsadmin/-0755rm
dovecot/-0755rm
download/-0755rm
escputil/-0755rm
exports/-0755rm
fdisk/-0755rm
fetchmail/-0755rm
file/-0755rm
firewall/-0755rm
frox/-0755rm
fsdump/-0755rm
generate-acls/-0755rm
gnupg/-0755rm
grub/-0755rm
heartbeat/-0755rm
help/-0755rm
htaccess-htpasswd/-0755rm
htpasswd-file/-0755rm
idmapd/-0755rm
images/-0755rm
inetd/-0755rm
init/-0755rm
inittab/-0755rm
ipchains/-0755rm
ipsec/-0755rm
iptables/-0755rm
iscsi-client/-0755rm
iscsi-server/-0755rm
iscsi-target/-0755rm
jabber/-0755rm
jsample/-0755rm
krb5/-0755rm
lang/-0755rm
ldap-useradmin/-0755rm
lilo/-0755rm
logrotate/-0755rm
lpadmin/-0755rm
lvm/-0755rm
lvs/-0755rm
mailbox/-0755rm
mailboxes/-0755rm
majordomo/-0755rm
man/-0755rm
mon/-0755rm
mount/-0755rm
mysql/-0755rm
net/-0755rm
nettools/-0755rm
nis/-0755rm
openslp/-0755rm
pam/-0755rm
pap/-0755rm
passwd/-0755rm
phpini/-0755rm
postfix/-0755rm
postgresql/-0755rm
ppp-client/-0755rm
pptp-client/-0755rm
pptp-server/-0755rm
proc/-0755rm
procmail/-0755rm
procyonguide/-0755rm
proftpd/-0755rm
pserver/-0755rm
qmailadmin/-0755rm
quota/-0755rm
raid/-0755rm
samba/-0755rm
sarg/-0755rm
sargreports/-0755rm
sendmail/-0755rm
sentry/-0755rm
servers/-0755rm
shell/-0755rm
shorewall/-0755rm
simple-firewall/-0755rm
smart-status/-0755rm
software/-0755rm
spam/-0755rm
squid/-0755rm
squidguard/-0755rm
squidinfo/-0755rm
squidreports/-0755rm
squidstat/-0755rm
ssh/-0755rm
sshd/-0755rm
status/-0755rm
stunnel/-0755rm
swell-wizard/-0755rm
sysgraph/-0755rm
sysinfo/-0755rm
syslog/-0755rm
sysstats/-0755rm
telnet/-0755rm
template/-0755rm
time/-0755rm
tsunamiguide/-0755rm
tunnel/-0755rm
unauthenticated/-0755rm
updown/-0755rm
useradmin/-0755rm
usermin/-0755rm
vgetty/-0755rm
webalizer/-0755rm
webfetch/-0755rm
webmin/-0755rm
webmin-iptables/-0755rm
webminguide/-0755rm
webminlog/-0755rm
wpad-wizard/-0755rm
wuftpd/-0755rm
xinetd/-0755rm
zones/-0755rm
config3370644editdlrm
config.cgi37370755editdlrm
config_save.cgi17540755editdlrm
edit_overlay.cgi7830755editdlrm
edit_right.cgi38650755editdlrm
favicon.ico11500644editdlrm
gray-theme-lib.pl47410755editdlrm
index.cgi43280755editdlrm
left.cgi103570755editdlrm
pngfix.html950644editdlrm
pngfix.js12350644editdlrm
recollect.cgi2770755editdlrm
right.cgi560190755editdlrm
save_overlay.cgi9020755editdlrm
save_right.cgi15900755editdlrm
theme.info1510644editdlrm
theme.pl357330755editdlrm
top.cgi3460755editdlrm
uconfig.cgi30490755editdlrm
uconfig_save.cgi14220755editdlrm
Edit: /usr/share/usermin/gray-theme/gray-theme-lib.pl (4741B)
# Functions used by theme CGIs eval "use WebminCore;"; if ($@) { do '../web-lib.pl'; do '../ui-lib.pl'; } &init_config(); &load_theme_library(); %text = &load_language($current_theme); $right_frame_sections_file = "$config_directory/$current_theme/sections"; $default_domains_to_show = 10; # get_left_frame_width() # Returns the width of the left frame in pixels sub get_left_frame_width { local $sects = &get_right_frame_sections(); return $sects->{'fsize'} ? $sects->{'fsize'} : &get_product_name() eq 'usermin' ? 200 : &foreign_available("server-manager") && &foreign_available("virtual-server") ? 280 : 260; } # list_virtualmin_theme_overlays() # Returns a list of overlay themes suitable for this theme sub list_virtualmin_theme_overlays { &foreign_require("webmin", "webmin-lib.pl"); local @rv; foreach my $tinfo (&webmin::list_themes()) { if ($tinfo->{'overlay'} && (!$tinfo->{'overlays'} || &indexof($current_theme, split(/\s+/, $tinfo->{'overlays'})) >= 0)) { push(@rv, $tinfo); } } return @rv; } sub get_virtualmin_docs { local ($level) = @_; return $level == 0 ? "http://www.virtualmin.com/documentation" : $level == 1 ? "http://www.virtualmin.com/documentation/users/reseller" : $level == 2 ? "http://www.virtualmin.com/documentation/users/server-owner" : "http://www.virtualmin.com/documentation"; } sub get_vm2_docs { local ($level) = @_; return "http://www.virtualmin.com/documentation/cloudmin"; } # get_right_frame_sections() # Returns a hash containg details of visible right-frame sections sub get_right_frame_sections { local %sects; &read_file($right_frame_sections_file, \%sects); if ($sects{'global'}) { # Force use of global settings return \%sects; } else { # Can try personal settings, but fall back to global local %usersects; if (&read_file($right_frame_sections_file.".".$remote_user, \%usersects)) { return \%usersects; } else { return \%sects; } } } # save_right_frame_sections(§s) sub save_right_frame_sections { local ($sects) = @_; &make_dir("$config_directory/$current_theme", 0700); if ($sects->{'global'}) { # Update global settings, for all users &write_file($right_frame_sections_file, $sects); } else { # Save own, and turn off global flag (if this is the master admin) if (&foreign_check("virtual-server")) { &foreign_require("virtual-server", "virtual-server-lib.pl"); if (&virtual_server::master_admin()) { local %globalsect; &read_file($right_frame_sections_file, \%globalsect); $globalsect{'global'} = 0; &write_file($right_frame_sections_file, \%globalsect); } } &write_file($right_frame_sections_file.".".$remote_user, $sects); } } # list_right_frame_sections() # Returns a list of possible sections for the current user, as hash refs sub list_right_frame_sections { local ($hasvirt, $level, $hasvm2) = &get_virtualmin_user_level(); local @rv; if ($level == 0) { # Master admin if ($hasvirt) { push(@rv, 'updates', 'status', 'newfeatures', 'quotas', 'bw', 'ips', 'sysinfo'); } if ($hasvm2) { push(@rv, 'vm2servers'); } } elsif ($level == 2) { # Domain owner push(@rv, 'virtualmin'); } elsif ($level == 1) { # Reseller push(@rv, 'reseller', 'quotas', 'bw'); } elsif ($level == 4) { # Cloudmin system owner push(@rv, 'owner', 'vm2servers'); } else { # Usermin push(@rv, 'system'); } @rv = map { { 'name' => $_, 'title' => $virtual_server::text{'right_'.$_.'header'} } } @rv; # Add plugin-defined sections if (($level == 0 || $level == 1 || $level == 2) && $hasvirt && defined(&virtual_server::list_plugin_sections)) { push(@rv, &virtual_server::list_plugin_sections($level)); } if (($level == 0 || $level == 4) && $hasvm2 && defined(&server_manager::list_plugin_sections)) { push(@rv, &server_manager::list_plugin_sections($level)); } return @rv; } # get_virtualmin_user_level() # Returns three numbers - the first being a flag if virtualmin is installed, # the second a user type (3=usermin, 2=domain, 1=reseller, 0=master, 4=system # owner), the third a flag for Cloudmin sub get_virtualmin_user_level { local ($hasvirt, $hasvm2, $level); $hasvm2 = &foreign_available("server-manager"); $hasvirt = &foreign_available("virtual-server"); if ($hasvm2) { &foreign_require("server-manager", "server-manager-lib.pl"); } if ($hasvirt) { &foreign_require("virtual-server", "virtual-server-lib.pl"); } if ($hasvm2) { $level = $server_manager::access{'owner'} ? 4 : 0; } elsif ($hasvirt) { $level = &virtual_server::master_admin() ? 0 : &virtual_server::reseller_admin() ? 1 : 2; } elsif (&get_product_name() eq "usermin") { $level = 3; } else { $level = 0; } return ($hasvirt, $level, $hasvm2); } 1;