Exemplo n.º 1
0
 /**
  * Used to initialize core Piwik components on a piwik.php request
  * Eg. when cache is missed and we will be calling some APIs to generate cache
  */
 public static function initCorePiwikInTrackerMode()
 {
     if (!empty($GLOBALS['PIWIK_TRACKER_MODE']) && self::$initTrackerMode === false) {
         self::$initTrackerMode = true;
         require_once PIWIK_INCLUDE_PATH . '/core/Loader.php';
         require_once PIWIK_INCLUDE_PATH . '/core/Option.php';
         $access = Access::getInstance();
         $config = Config::getInstance();
         try {
             $db = Db::get();
         } catch (Exception $e) {
             Db::createDatabaseObject();
         }
         $pluginsManager = \Piwik\Plugin\Manager::getInstance();
         $pluginsToLoad = Config::getInstance()->Plugins['Plugins'];
         $pluginsForcedNotToLoad = Tracker::getPluginsNotToLoad();
         $pluginsToLoad = array_diff($pluginsToLoad, $pluginsForcedNotToLoad);
         $pluginsToLoad = array_merge($pluginsToLoad, Tracker::getPluginsToLoad());
         $pluginsManager->loadPlugins($pluginsToLoad);
     }
 }