public function uninstall()
{
$this->user->restrict('Admin.Extensions.Access');
$this->user->restrict('Admin.Extensions.Manage');
$extension_name = $this->input->get('name') ? $this->input->get('name') : $this->uri->rsegment(4);
if ($this->Extensions_model->extensionExists($extension_name)) {
$config = $this->extension->loadConfig($extension_name, FALSE, TRUE);
$extension_title = isset($config['extension_meta']['title']) ? $config['extension_meta']['title'] : '';
$extension_type = isset($config['extension_meta']['type']) ? $config['extension_meta']['type'] : '';
if ($this->Extensions_model->uninstall($this->uri->rsegment(3), $extension_name)) {
log_activity($this->user->getStaffId(), 'uninstalled', 'extensions', get_activity_message('activity_custom_no_link', array('{staff}', '{action}', '{context}', '{item}'), array($this->user->getStaffName(), 'uninstalled', $extension_type . ' extension', $extension_title)));
$this->alert->set('success', sprintf($this->lang->line('alert_success'), "Extension {$extension_title} uninstalled "));
} else {
$this->alert->danger_now($this->lang->line('alert_error_try_again'));
}
}
redirect(referrer_url());
}