public function get_plugin_toggle()
{
$extract = $_GET->filter_keys('plugin_id', 'action');
foreach ($extract as $key => $value) {
${$key} = $value;
}
$plugins = Plugins::list_all();
foreach ($plugins as $file) {
if (Plugins::id_from_file($file) == $plugin_id) {
switch (strtolower($action)) {
case 'activate':
if (Plugins::activate_plugin($file)) {
$plugins = Plugins::get_active();
Session::notice(_t("Activated plugin '@plugin'", array('@plugin' => $plugins[Plugins::id_from_file($file)]->info->name)), $plugins[Plugins::id_from_file($file)]->plugin_id);
}
break;
case 'deactivate':
if (Plugins::deactivate_plugin($file)) {
$plugins = Plugins::get_active();
Session::notice(_t("Deactivated plugin '@plugin'", array('@plugin' => $plugins[Plugins::id_from_file($file)]->info->name)), $plugins[Plugins::id_from_file($file)]->plugin_id);
}
break;
default:
Plugins::act('adminhandler_get_plugin_toggle_action', $action, $file, $plugin_id, $plugins);
break;
}
}
}
Utils::redirect(URL::get('display_plugins'));
}