fixed serious breakage during upgrades caused by double redirects

This commit is contained in:
skodak
2006-09-07 20:33:03 +00:00
parent df8ac6d2e6
commit faafe84561
2 changed files with 17 additions and 3 deletions
+13 -2
View File
@@ -3,6 +3,8 @@
require_once('../config.php');
$installing = optional_param('installing', 0, PARAM_BOOL);
$focus = '';
if ($site = get_site()) { // If false then this is a new installation
@@ -63,8 +65,16 @@
}
}
}
redirect('index.php', get_string('changessaved'), 1);
exit;
if ($installing) {
print_header();
notify(get_string('changessaved'), 'notifysuccess');
print_continue('index.php');
exit;
} else {
// the following redirect was randomly breaking upgrades because it did double redirects,
// we must not use it during install/upgrade
redirect('index.php', get_string('changessaved'), 1);
}
} else {
foreach ($err as $key => $value) {
@@ -143,6 +153,7 @@
}
echo '<center>';
echo '<input type="hidden" name="installing" value="'.$installing.'" />';
echo '<input type="hidden" name="sesskey" value="'.$sesskey.'" />';
echo '<input type="submit" value="'.get_string('savechanges').'" />';
echo '</center>';
+4 -1
View File
@@ -222,7 +222,7 @@
/// If any new configurations were found then send to the config page to check
if (!empty($configchange)) {
redirect("config.php");
redirect("config.php?installing=1");
}
/// Find and check all main modules and load them up or upgrade them if necessary
@@ -323,6 +323,9 @@
print_simple_box(get_string('globalsquoteswarning', 'admin'), 'center', '60%');
}
if (is_dataroot_insecure()) {
print_simple_box(get_string('datarootsecuritywarning', 'admin', $CFG->dataroot), 'center', '60%');
}
/// If no recently cron run
$lastcron = get_field_sql('SELECT max(lastcron) FROM ' . $CFG->prefix . 'modules');