aboutsummaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
Diffstat (limited to 'admin')
-rw-r--r--admin/plugins_list.php21
1 files changed, 14 insertions, 7 deletions
diff --git a/admin/plugins_list.php b/admin/plugins_list.php
index 0a8d77f9f..21e8ec3f2 100644
--- a/admin/plugins_list.php
+++ b/admin/plugins_list.php
@@ -38,17 +38,24 @@ $plugins = new plugins();
//--------------------------------------------------perform requested actions
if (isset($_GET['action']) and isset($_GET['plugin']))
{
- check_pwg_token();
+ if (in_array($_GET['action'], array('install', 'uninstall')) AND !is_webmaster())
+ {
+ array_push($page['errors'], l10n('Webmaster status is required.'));
+ }
+ else
+ {
+ check_pwg_token();
- $page['errors'] = $plugins->perform_action($_GET['action'], $_GET['plugin']);
+ $page['errors'] = $plugins->perform_action($_GET['action'], $_GET['plugin']);
- if (empty($page['errors']))
- {
- if ($_GET['action'] == 'activate' or $_GET['action'] == 'deactivate')
+ if (empty($page['errors']))
{
- $template->delete_compiled_templates();
+ if ($_GET['action'] == 'activate' or $_GET['action'] == 'deactivate')
+ {
+ $template->delete_compiled_templates();
+ }
+ redirect($base_url);
}
- redirect($base_url);
}
}