diff options
Diffstat (limited to 'plugins/CustomPiwikJs/TrackingCode/PluginTrackerFiles.php')
-rw-r--r-- | plugins/CustomPiwikJs/TrackingCode/PluginTrackerFiles.php | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/plugins/CustomPiwikJs/TrackingCode/PluginTrackerFiles.php b/plugins/CustomPiwikJs/TrackingCode/PluginTrackerFiles.php index f114565990..a3987b2004 100644 --- a/plugins/CustomPiwikJs/TrackingCode/PluginTrackerFiles.php +++ b/plugins/CustomPiwikJs/TrackingCode/PluginTrackerFiles.php @@ -7,7 +7,7 @@ */ namespace Piwik\Plugins\CustomPiwikJs\TrackingCode; -use Piwik\Filesystem; +use Piwik\Piwik; use Piwik\Plugin; use Piwik\Plugins\CustomPiwikJs\File; @@ -71,9 +71,32 @@ class PluginTrackerFiles } } + foreach ($jsFiles as $plugin => $file) { + if (!$this->shouldIncludeFile($plugin)) { + unset($jsFiles[$plugin]); + } + } + return $jsFiles; } + protected function shouldIncludeFile($pluginName) + { + $shouldAddFile = true; + + /** + * Detect if a custom tracker file should be added to the piwik.js tracker or not. + * + * This is useful for example if a plugin only wants to add its tracker file when the plugin is configured. + * + * @param bool &$shouldAddFile Decides whether the tracker file belonging to the given plugin should be added or not. + * @param string $pluginName The name of the plugin this file belongs to + */ + Piwik::postEvent('CustomPiwikJs.shouldAddTrackerFile', array(&$shouldAddFile, $pluginName)); + + return $shouldAddFile; + } + protected function isPluginActivated($pluginName) { return $this->pluginManager->isPluginActivated($pluginName); |