diff options
author | mattab <matthieu.aubry@gmail.com> | 2013-05-24 15:23:17 +0400 |
---|---|---|
committer | mattab <matthieu.aubry@gmail.com> | 2013-05-24 15:23:17 +0400 |
commit | 58c88c1b2980ee1c02a47cb3d35de1480402e6ac (patch) | |
tree | b77a766fece69ee3888c4003799483da687b2619 /core/Tracker.php | |
parent | 4f4d377876adcf698c00ca2141f9cff26bf75a83 (diff) |
Refs #3612
* making tests pass!
* enabling DevicesDetection tests, even though DevicesDetection plugin is disabled by default.
Diffstat (limited to 'core/Tracker.php')
-rw-r--r-- | core/Tracker.php | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/core/Tracker.php b/core/Tracker.php index 89fa433836..625d7d2175 100644 --- a/core/Tracker.php +++ b/core/Tracker.php @@ -46,6 +46,7 @@ class Piwik_Tracker static protected $forcedVisitorId = null; static protected $pluginsNotToLoad = array(); + static protected $pluginsToLoad = array(); /** * The set of visits to track. @@ -126,6 +127,17 @@ class Piwik_Tracker return self::$pluginsNotToLoad; } + static public function getPluginsToLoad() + { + return self::$pluginsToLoad; + } + static public function setPluginsToLoad($plugins) + { + self::$pluginsToLoad = $plugins; + } + + + /** * Update Tracker config * @@ -357,6 +369,7 @@ class Piwik_Tracker $pluginsToLoad = Piwik_Config::getInstance()->Plugins['Plugins']; $pluginsForcedNotToLoad = Piwik_Tracker::getPluginsNotToLoad(); $pluginsToLoad = array_diff($pluginsToLoad, $pluginsForcedNotToLoad); + $pluginsToLoad = array_merge($pluginsToLoad, Piwik_Tracker::getPluginsToLoad()); $pluginsManager->loadPlugins($pluginsToLoad); } } @@ -589,15 +602,15 @@ class Piwik_Tracker } try { - $pluginsTracker = Piwik_Config::getInstance()->Plugins_Tracker; - if (is_array($pluginsTracker) - && count($pluginsTracker) != 0 - ) { - $pluginsTracker['Plugins_Tracker'] = array_diff($pluginsTracker['Plugins_Tracker'], self::getPluginsNotToLoad()); + $pluginsTracker = Piwik_Config::getInstance()->Plugins_Tracker['Plugins_Tracker']; + if (count($pluginsTracker) > 0) { + $pluginsTracker = $pluginsTracker; + $pluginsTracker = array_diff($pluginsTracker, self::getPluginsNotToLoad()); Piwik_PluginsManager::getInstance()->doNotLoadAlwaysActivatedPlugins(); - Piwik_PluginsManager::getInstance()->loadPlugins($pluginsTracker['Plugins_Tracker']); - printDebug("Loading plugins: { " . implode(",", $pluginsTracker['Plugins_Tracker']) . " }"); + Piwik_PluginsManager::getInstance()->loadPlugins($pluginsTracker); + + printDebug("Loading plugins: { " . implode(",", $pluginsTracker) . " }"); } } catch (Exception $e) { printDebug("ERROR: " . $e->getMessage()); @@ -757,6 +770,9 @@ class Piwik_Tracker // Disable provider plugin, because it is so slow to do reverse ip lookup in dev environment somehow self::setPluginsNotToLoad($pluginsDisabled); + + // we load 'DevicesDetection' in tests only (disabled by default) + self::setPluginsToLoad( array('DevicesDetection') ); } } |