MDL-66119 core: Add check for uninstalling plugins from the admin gui
This commit is contained in:
@@ -620,6 +620,12 @@ $CFG->admin = 'admin';
|
||||
//
|
||||
// $CFG->debugsessionlock = 5;
|
||||
//
|
||||
// Uninstall plugins from CLI only. This stops admins from uninstalling plugins from the graphical admin
|
||||
// user interface, and forces plugins to be uninstalled from the Command Line tool only, found at
|
||||
// admin/cli/plugin_uninstall.php.
|
||||
//
|
||||
// $CFG->uninstallclionly = true;
|
||||
//
|
||||
//=========================================================================
|
||||
// 7. SETTINGS FOR DEVELOPMENT SERVERS - not intended for production use!!!
|
||||
//=========================================================================
|
||||
|
||||
@@ -2233,6 +2233,11 @@ class core_plugin_manager {
|
||||
* @return bool
|
||||
*/
|
||||
protected function common_uninstall_check(\core\plugininfo\base $pluginfo) {
|
||||
global $CFG;
|
||||
// Check if uninstall is allowed from the GUI.
|
||||
if (!empty($CFG->uninstallclionly) && (!CLI_SCRIPT)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!$pluginfo->is_uninstall_allowed()) {
|
||||
// The plugin's plugininfo class declares it should not be uninstalled.
|
||||
|
||||
Reference in New Issue
Block a user