Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorThomas Steur <thomas.steur@gmail.com>2015-11-16 23:25:51 +0300
committerThomas Steur <thomas.steur@gmail.com>2015-11-17 00:12:34 +0300
commitea30714acff275cff51930d6f4312722e4cb2916 (patch)
treef7e82e14e3185f6f10680fae2e97cd42334fcfc2 /core
parente90d8e45336809867bb84b1efd297e5dc748f96f (diff)
show an error message if installing a plugin fails
Diffstat (limited to 'core')
-rw-r--r--core/Plugin/Manager.php10
-rw-r--r--core/Plugin/PluginException.php24
2 files changed, 21 insertions, 13 deletions
diff --git a/core/Plugin/Manager.php b/core/Plugin/Manager.php
index 010838acf8..150151ee3e 100644
--- a/core/Plugin/Manager.php
+++ b/core/Plugin/Manager.php
@@ -440,16 +440,10 @@ class Manager
public function installLoadedPlugins()
{
Log::debug("Loaded plugins: " . implode(", ", array_keys($this->getLoadedPlugins())));
- $messages = array();
+
foreach ($this->getLoadedPlugins() as $plugin) {
- try {
- $this->installPluginIfNecessary($plugin);
- } catch (\Exception $e) {
- $messages[] = $e->getMessage();
- }
+ $this->installPluginIfNecessary($plugin);
}
-
- return $messages;
}
/**
diff --git a/core/Plugin/PluginException.php b/core/Plugin/PluginException.php
index 90aa03a342..83816ca365 100644
--- a/core/Plugin/PluginException.php
+++ b/core/Plugin/PluginException.php
@@ -8,14 +8,28 @@
namespace Piwik\Plugin;
+use Piwik\Common;
+
class PluginException extends \Exception
{
public function __construct($pluginName, $message)
{
- parent::__construct("There was a problem installing the plugin " . $pluginName . ": " . $message . "
- If this plugin has already been installed, and if you want to hide this message</b>, you must add the following line under the
- [PluginsInstalled]
- entry in your config/config.ini.php file:
- PluginsInstalled[] = $pluginName");
+ $pluginName = Common::sanitizeInputValue($pluginName);
+ $message = Common::sanitizeInputValue($message);
+
+ parent::__construct("There was a problem installing the plugin $pluginName: <br /><br />
+ $message
+ <br /><br />
+ If you want to hide this message you must remove the following line under the [Plugins] entry in your
+ 'config/config.ini.php' file to disable this plugin.<br />
+ Plugins[] = $pluginName
+ <br /><br />If this plugin has already been installed, you must add the following line under the
+ [PluginsInstalled] entry in your 'config/config.ini.php' file:<br />
+ PluginsInstalled[] = $pluginName");
+ }
+
+ public function isHtmlMessage()
+ {
+ return true;
}
}