Added an option to reinstall a plugin/theme already installed #984

This commit is contained in:
Flavio Copes
2017-02-19 19:16:03 +01:00
parent 063c501ca5
commit 0c91ca5757
12 changed files with 165 additions and 48 deletions

View File

@@ -966,7 +966,7 @@ class AdminController extends AdminBaseController
return true;
}
protected function taskInstallPackage()
protected function taskInstallPackage($reinstall = false)
{
$data = $this->post;
$package = isset($data['package']) ? $data['package'] : '';
@@ -994,12 +994,16 @@ class AdminController extends AdminBaseController
'status' => 'success',
'message' => $this->admin->translate(is_string($result)
? $result
: sprintf($this->admin->translate('PLUGIN_ADMIN.PACKAGE_X_INSTALLED_SUCCESSFULLY', null), $package))
: sprintf($this->admin->translate(
$reinstall ? 'PLUGIN_ADMIN.PACKAGE_X_REINSTALLED_SUCCESSFULLY' : 'PLUGIN_ADMIN.PACKAGE_X_INSTALLED_SUCCESSFULLY'
, null), $package))
];
} else {
$this->admin->json_response = [
'status' => 'error',
'message' => $this->admin->translate('PLUGIN_ADMIN.INSTALLATION_FAILED')
'message' => $this->admin->translate(
$reinstall ? 'PLUGIN_ADMIN.REINSTALLATION_FAILED' : 'PLUGIN_ADMIN.INSTALLATION_FAILED'
)
];
}
@@ -1066,6 +1070,17 @@ class AdminController extends AdminBaseController
return true;
}
/**
* Handle reinstalling a package
*
* @return bool
*/
protected function taskReinstallPackage()
{
$reinstall = true;
$this->taskInstallPackage($reinstall);
}
/**
* Handle the email password recovery procedure.
*