diff options
-rw-r--r-- | admin/plugins_list.php | 21 |
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); } } |