Skip to content

Commit

Permalink
MDL-41245 prevent notices during plugin uninstall
Browse files Browse the repository at this point in the history
  • Loading branch information
skodak committed Aug 26, 2013
1 parent 835f58e commit a3cbc19
Showing 1 changed file with 33 additions and 5 deletions.
38 changes: 33 additions & 5 deletions admin/plugins.php
Expand Up @@ -38,23 +38,37 @@
require_once($CFG->libdir . '/pluginlib.php');
require_once($CFG->libdir . '/filelib.php');

admin_externalpage_setup('pluginsoverview');
require_capability('moodle/site:config', context_system::instance());

$fetchremote = optional_param('fetchremote', false, PARAM_BOOL);
$updatesonly = optional_param('updatesonly', false, PARAM_BOOL);
$contribonly = optional_param('contribonly', false, PARAM_BOOL);
$uninstall = optional_param('uninstall', '', PARAM_COMPONENT);
$delete = optional_param('delete', '', PARAM_COMPONENT);
$confirmed = optional_param('confirm', false, PARAM_BOOL);

/** @var core_admin_renderer $output */
$output = $PAGE->get_renderer('core', 'admin');
// NOTE: do not use admin_externalpage_setup() here because it loads
// full admin tree which is not possible during uninstallation.

require_login();
$syscontext = context_system::instance();
require_capability('moodle/site:config', $syscontext);

$pluginman = plugin_manager::instance();

if ($uninstall) {
require_sesskey();

if (!$confirmed) {
admin_externalpage_setup('pluginsoverview');
} else {
$PAGE->set_url('/admin/plugins.php');
$PAGE->set_context($syscontext);
$PAGE->set_pagelayout('maintenance');
$PAGE->set_popup_notification_allowed(false);
}

/** @var core_admin_renderer $output */
$output = $PAGE->get_renderer('core', 'admin');

$pluginfo = $pluginman->get_plugin_info($uninstall);

// Make sure we know the plugin.
Expand Down Expand Up @@ -105,6 +119,15 @@

if ($delete and $confirmed) {
require_sesskey();

$PAGE->set_url('/admin/plugins.php');
$PAGE->set_context($syscontext);
$PAGE->set_pagelayout('maintenance');
$PAGE->set_popup_notification_allowed(false);

/** @var core_admin_renderer $output */
$output = $PAGE->get_renderer('core', 'admin');

$pluginfo = $pluginman->get_plugin_info($delete);

// Make sure we know the plugin.
Expand Down Expand Up @@ -148,6 +171,11 @@
redirect(new moodle_url('/admin/index.php'));
}

admin_externalpage_setup('pluginsoverview');

/** @var core_admin_renderer $output */
$output = $PAGE->get_renderer('core', 'admin');

$checker = available_update_checker::instance();

// Filtering options.
Expand Down

0 comments on commit a3cbc19

Please sign in to comment.