Differences Between: [Versions 310 and 403] [Versions 311 and 403] [Versions 39 and 403]
1 <?php 2 // This file is part of Moodle - http://moodle.org/ 3 // 4 // Moodle is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // Moodle is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 16 17 /** 18 * The administration and management interface for the cache setup and configuration. 19 * 20 * This file is part of Moodle's cache API, affectionately called MUC. 21 * 22 * @package core 23 * @category cache 24 * @copyright 2012 Sam Hemelryk 25 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 26 */ 27 28 require_once('../config.php'); 29 require_once($CFG->dirroot.'/lib/adminlib.php'); 30 require_once($CFG->dirroot.'/cache/locallib.php'); 31 require_once($CFG->dirroot.'/cache/forms.php'); 32 33 // The first time the user visits this page we are going to reparse the definitions. 34 // Just ensures that everything is up to date. 35 // We flag is session so that this only happens once as people are likely to hit 36 // this page several times if making changes. 37 if (empty($SESSION->cacheadminreparsedefinitions)) { 38 cache_helper::update_definitions(); 39 $SESSION->cacheadminreparsedefinitions = true; 40 } 41 42 $action = optional_param('action', null, PARAM_ALPHA); 43 44 admin_externalpage_setup('cacheconfig'); 45 $adminhelper = cache_factory::instance()->get_administration_display_helper(); 46 47 $notifications = array(); 48 // Empty array to hold any form information returned from actions. 49 $forminfo = []; 50 51 $PAGE->set_primary_active_tab('siteadminnode'); 52 $PAGE->navbar->add(get_string('cacheconfig', 'cache'), new moodle_url('/cache/admin.php')); 53 54 // Handle page actions in admin helper class. 55 if (!empty($action)) { 56 $forminfo = $adminhelper->perform_cache_actions($action, $forminfo); 57 } 58 59 // Add cache store warnings to the list of notifications. 60 // Obviously as these are warnings they are show as failures. 61 foreach (cache_helper::warnings(core_cache\administration_helper::get_store_instance_summaries()) as $warning) { 62 $notifications[] = array($warning, false); 63 } 64 65 // Decide on display mode based on returned forminfo. 66 $mform = array_key_exists('form', $forminfo) ? $forminfo['form'] : null; 67 $title = array_key_exists('title', $forminfo) ? $forminfo['title'] : new lang_string('cacheadmin', 'cache'); 68 69 $PAGE->set_title($title); 70 $PAGE->set_heading($SITE->fullname); 71 72 /** @var \core_cache\output\renderer $renderer */ 73 $renderer = $PAGE->get_renderer('core_cache'); 74 75 echo $renderer->header(); 76 echo $renderer->heading($title); 77 echo $renderer->notifications($notifications); 78 79 if ($mform instanceof moodleform) { 80 $mform->display(); 81 } else { 82 // Handle main page definition in admin helper class. 83 echo $adminhelper->generate_admin_page($renderer); 84 } 85 86 echo $renderer->footer();
title
Description
Body
title
Description
Body
title
Description
Body
title
Body