MDL-23167 fixed regression with cancel url or when referers not available (firewalled)

This commit is contained in:
Petr Skoda
2010-07-25 13:46:27 +00:00
parent 78bfb562a0
commit 87635e7d66
+8 -2
View File
@@ -33,16 +33,22 @@ admin_externalpage_setup('purgecaches');
require_login();
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
$return = new moodle_url('/');
if (isset($_SERVER['HTTP_REFERER']) and !empty($_SERVER['HTTP_REFERER'])) {
if ($_SERVER['HTTP_REFERER'] !== "$CFG->wwwroot/$CFG->admin/purgecaches.php") {
$return = $_SERVER['HTTP_REFERER'];
}
}
if ($confirm) {
require_sesskey();
purge_all_caches();
redirect($_SERVER['HTTP_REFERER'], get_string('purgecachesfinished', 'admin'));
redirect($return, get_string('purgecachesfinished', 'admin'));
} else {
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('purgecaches', 'admin'));
$url = new moodle_url('/admin/purgecaches.php', array('sesskey'=>sesskey(), 'confirm'=>1));
$return = $_SERVER['HTTP_REFERER'];
echo $OUTPUT->confirm(get_string('purgecachesconfirm', 'admin'), $url, $return);
echo $OUTPUT->footer();