#!/usr/local/bin/perl # edit_upgrade.cgi # Display a form for upgrading all of webmin from a tarfile require './webmin-lib.pl'; &ReadParse(); &ui_print_header(undef, $text{'upgrade_title'}, ""); if (&shared_root_directory()) { &ui_print_endpage($text{'upgrade_eroot'}); } # what kind of install was this? $mode = &get_install_type(); # was the install to a target directory? if (open(DIR, "$config_directory/install-dir")) { chop($dir =
"; print ui_form_start("upgrade.cgi", "form-data"); print ui_hidden("mode", $mode); print ui_hidden("dir", $dir); print ui_table_start($text{'upgrade_title'}, undef, 1); print "
\n";
if (!$mode && !$dir) {
# Checkbox to delete original directory
print " ",
"$text{'upgrade_delete'}
\n";
}
if ((!$mode || $mode eq "rpm") && &foreign_check("proc")) {
# Checkbox to check signature
($ec, $emsg) = &gnupg_setup();
printf " %s
\n",
$ec ? "" : "checked", $text{'upgrade_sig'};
}
if (!$mode) {
# Checkbox to not install missing modules
printf " %s
\n",
-r "$root_directory/minimal-install" ? "checked" : "",
$text{'upgrade_only'};
}
printf " %s
\n",
$text{'upgrade_force'};
if ($main::session_id) {
# Checkbox to disconnect other sessions
printf " %s
\n",
$text{'upgrade_disc'};
}
print ui_table_end();
print "\n";
print "\n";
print ui_tabs_end_tab();
}
# Display new module grants form
print ui_tabs_start_tab("mode", "grants");
print "$text{'newmod_desc'}
\n";
print ui_form_start("save_newmod.cgi", "post");
print ui_table_start($text{'newmod_header'});
$newmod = &get_newmodule_users();
printf " %s
\n",
$newmod ? "" : "checked", $text{'newmod_def'};
printf " %s\n",
$newmod ? "checked" : "", $text{'newmod_users'};
printf "
\n",
join(" ", @$newmod);
print ui_table_end();
print "\n";
print ui_tabs_end_tab();
# Display module update form
print ui_tabs_start_tab("mode", "update");
print "$text{'update_desc1'}
\n"; print ui_form_start("update.cgi", "post"); print ui_table_start($text{'update_header1'}); print "
$text{'update_user'} | \n"; print "",&ui_textbox("upuser", $config{'upuser'}, 30)," |
$text{'update_pass'} | \n"; print "",&ui_password("uppass", $config{'uppass'}, 30)," |
\n"; print ui_form_start("update_sched.cgi", "post"); print ui_table_start($text{'update_header2'}); print "
\n",
$config{'update'} ? 'checked' : '', $text{'update_enabled'};
printf " %s
\n",
$config{'upsource'} ? "" : "checked", $text{'update_webmin'};
printf " %s
\n",
$config{'upsource'} ? "checked" : "", $text{'update_other'};
print " " x 4;
print &ui_textarea("other", join("\n", split(/\t+/, $config{'upsource'})),
2, 50),"
\n";
if ($config{'cron_mode'} == 0) {
$upmins = sprintf "%2.2d", $config{'upmins'};
print &text('update_sched2',
"",
"",
""),"
\n";
}
else {
&foreign_require("cron", "cron-lib.pl");
@jobs = &cron::list_cron_jobs();
$job = &find_cron_job(\@jobs);
$job ||= { 'mins' => 0,
'hours' => $config{'uphour'},
'days' => "*/$config{'updays'}",
'months' => '*',
'weekdays' => '*' };
print "
$text{'update_email'} | \n"; print "",&ui_textbox("email", $config{'upemail'}, 30)," |
$text{'update_user'} | \n"; print "",&ui_textbox("upuser", $config{'upuser'}, 30)," |
$text{'update_pass'} | \n"; print "",&ui_password("uppass", $config{'uppass'}, 30)," |