Viewing file: change_theme.cgi (1.16 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/perl # change_theme.cgi # Change the current webmin theme
require './webmin-lib.pl'; &ReadParse();
&ui_print_header(undef, $text{'themes_title'}, "");
($gtheme, @others) = split(/\s+/, $gconfig{'theme'});
# Call pre-change function if ($in{'theme'} ne $gtheme) { if (defined(&theme_pre_change_theme)) { &theme_pre_change_theme(); } }
&lock_file("$config_directory/config"); if ($in{'theme'}) { $gconfig{'theme'} = join(" ", $in{'theme'}, @others); } else { delete($gconfig{'theme'}); } &write_file("$config_directory/config", \%gconfig); &unlock_file("$config_directory/config");
&lock_file($ENV{'MINISERV_CONFIG'}); &get_miniserv_config(\%miniserv); if ($in{'theme'}) { $miniserv{'preroot'} = join(" ", $in{'theme'}, @others); } else { delete($miniserv{'preroot'}); } &put_miniserv_config(\%miniserv); &unlock_file($ENV{'MINISERV_CONFIG'}); &reload_miniserv();
print "$text{'themes_ok'}<p>\n";
# Call post-change function if ($in{'theme'} ne $gtheme) { if (defined(&theme_post_change_theme)) { &theme_post_change_theme(); } }
print &js_redirect("/", "top");
&webmin_log('theme', undef, undef, \%in); &ui_print_footer("", $text{'index_return'});
|