diff options
| author | 2015-01-14 21:38:35 +0100 | |
|---|---|---|
| committer | 2015-01-14 21:38:35 +0100 | |
| commit | 806b4de54ffd1dd682ec7b42a5be8343a464e5f0 (patch) | |
| tree | 05e74724c0c80d32c2073d51d06c3bc9cd4b2f33 /app/Controllers/extensionController.php | |
| parent | f1ffdd8b9d1f3d8742f1328dfa805664a66e34aa (diff) | |
Add mechanism at (un)install of an extension
Test if the install or uninstall has been successfully performed.
If these methods return true, all is ok but if a string is returned,
the string must explain the problem. This problem is stored in log file.
A feedback is given to explain to check log file.
This commit fix a problem in the english translation of
feedback.sub.feed.internal_problem.
Diffstat (limited to 'app/Controllers/extensionController.php')
| -rw-r--r-- | app/Controllers/extensionController.php | 40 |
1 files changed, 26 insertions, 14 deletions
diff --git a/app/Controllers/extensionController.php b/app/Controllers/extensionController.php index e013bb369..692595a4c 100644 --- a/app/Controllers/extensionController.php +++ b/app/Controllers/extensionController.php @@ -88,15 +88,21 @@ class FreshRSS_extension_Controller extends Minz_ActionController { $url_redirect); } - $ext->install(); + $res = $ext->install(); - $ext_list = $conf->extensions_enabled; - array_push_unique($ext_list, $ext_name); - $conf->extensions_enabled = $ext_list; - $conf->save(); + if ($res === true) { + $ext_list = $conf->extensions_enabled; + array_push_unique($ext_list, $ext_name); + $conf->extensions_enabled = $ext_list; + $conf->save(); - Minz_Request::good(_t('feedback.extensions.enabled', $ext_name), - $url_redirect); + Minz_Request::good(_t('feedback.extensions.enable.ok', $ext_name), + $url_redirect); + } else { + Minz_Log::warning('Can not enable extension ' . $ext_name . ': ' . $res); + Minz_Request::bad(_t('feedback.extensions.enable.ko', $ext_name, _url('index', 'logs')), + $url_redirect); + } } Minz_Request::forward($url_redirect, true); @@ -138,15 +144,21 @@ class FreshRSS_extension_Controller extends Minz_ActionController { $url_redirect); } - $ext->uninstall(); + $res = $ext->uninstall(); - $ext_list = $conf->extensions_enabled; - array_remove($ext_list, $ext_name); - $conf->extensions_enabled = $ext_list; - $conf->save(); + if ($res === true) { + $ext_list = $conf->extensions_enabled; + array_remove($ext_list, $ext_name); + $conf->extensions_enabled = $ext_list; + $conf->save(); - Minz_Request::good(_t('feedback.extensions.disabled', $ext_name), - $url_redirect); + Minz_Request::good(_t('feedback.extensions.disable.ok', $ext_name), + $url_redirect); + } else { + Minz_Log::warning('Can not unable extension ' . $ext_name . ': ' . $res); + Minz_Request::bad(_t('feedback.extensions.disable.ko', $ext_name, _url('index', 'logs')), + $url_redirect); + } } Minz_Request::forward($url_redirect, true); |
