summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/plugins.required.php10
-rw-r--r--lib/plugins/extension/helper/extension.php5
2 files changed, 9 insertions, 6 deletions
diff --git a/conf/plugins.required.php b/conf/plugins.required.php
index 26eb8888b..078f6d56d 100644
--- a/conf/plugins.required.php
+++ b/conf/plugins.required.php
@@ -4,8 +4,8 @@
* from changes by the extention manager. These settings will override any local settings.
* It is not recommended to change this file, as it is overwritten on DokuWiki upgrades.
*/
-$plugins['acl'] = 1;
-$plugins['plugin'] = 1;
-$plugins['config'] = 1;
-$plugins['usermanager'] = 1;
-$plugins['revert'] = 1;
+$plugins['acl'] = 1;
+$plugins['plugin'] = 1;
+$plugins['config'] = 1;
+$plugins['usermanager'] = 1;
+$plugins['template:dokuwiki'] = 1; // not a plugin, but this should not be uninstalled either
diff --git a/lib/plugins/extension/helper/extension.php b/lib/plugins/extension/helper/extension.php
index 4eedb2a25..e3cb8a410 100644
--- a/lib/plugins/extension/helper/extension.php
+++ b/lib/plugins/extension/helper/extension.php
@@ -107,7 +107,10 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin {
* @return bool if the extension is protected
*/
public function isProtected() {
- return in_array($this->id, array('acl', 'config', 'info', 'plugin', 'revert', 'usermanager', 'template:dokuwiki'));
+ /** @var Doku_Plugin_Controller $plugin_controller */
+ global $plugin_controller;
+ $cascade = $plugin_controller->getCascade();
+ return (isset($cascade['protected'][$this->id]) && $cascade['protected'][$this->id]);
}
/**