Skip to content
Extraits de code Groupes Projets
piwik.php 2,74 ko
Newer Older
  • Learn to ignore specific revisions
  • /**
     * Piwik - Open source web analytics
    
     * @link http://piwik.org
    
     * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
    
     * @version $Id$
    
    robocoder's avatar
    robocoder a validé
     * @package Piwik
    
    robocoder's avatar
    robocoder a validé
    $GLOBALS['PIWIK_TRACKER_DEBUG'] = false;
    
    mattpiwik's avatar
     
    mattpiwik a validé
    $GLOBALS['PIWIK_TRACKER_DEBUG_FORCE_SCHEDULED_TASKS'] = false;
    
    mattpiwik's avatar
    mattpiwik a validé
    define('PIWIK_ENABLE_TRACKING', true);
    
    define('PIWIK_DOCUMENT_ROOT', dirname(__FILE__)=='/'?'':dirname(__FILE__));
    if(file_exists(PIWIK_DOCUMENT_ROOT . '/bootstrap.php'))
    
    	require_once PIWIK_DOCUMENT_ROOT . '/bootstrap.php';
    
    mattpiwik's avatar
    mattpiwik a validé
    $GLOBALS['PIWIK_TRACKER_MODE'] = true;
    
    error_reporting(E_ALL|E_NOTICE);
    
    mattpiwik's avatar
    mattpiwik a validé
    @ini_set('xdebug.show_exception_trace', 0);
    
    @ini_set('magic_quotes_runtime', 0);
    
    if(!defined('PIWIK_USER_PATH'))
    {
    	define('PIWIK_USER_PATH', PIWIK_DOCUMENT_ROOT);
    }
    
    if(!defined('PIWIK_INCLUDE_PATH'))
    {
    
    	define('PIWIK_INCLUDE_PATH', PIWIK_DOCUMENT_ROOT);
    
    require_once PIWIK_INCLUDE_PATH .'/libs/upgradephp/upgrade.php';
    
    require_once PIWIK_INCLUDE_PATH .'/libs/Event/Dispatcher.php';
    require_once PIWIK_INCLUDE_PATH .'/libs/Event/Notification.php';
    require_once PIWIK_INCLUDE_PATH .'/core/PluginsManager.php';
    require_once PIWIK_INCLUDE_PATH .'/core/Plugin.php';
    require_once PIWIK_INCLUDE_PATH .'/core/Common.php';
    
    require_once PIWIK_INCLUDE_PATH .'/core/IP.php';
    
    require_once PIWIK_INCLUDE_PATH .'/core/Tracker.php';
    
    require_once PIWIK_INCLUDE_PATH .'/core/Config.php';
    
    require_once PIWIK_INCLUDE_PATH .'/core/Tracker/Db.php';
    
    robocoder's avatar
    robocoder a validé
    require_once PIWIK_INCLUDE_PATH .'/core/Tracker/IgnoreCookie.php';
    
    require_once PIWIK_INCLUDE_PATH .'/core/Tracker/Visit.php';
    require_once PIWIK_INCLUDE_PATH .'/core/Tracker/GoalManager.php';
    require_once PIWIK_INCLUDE_PATH .'/core/Tracker/Action.php';
    require_once PIWIK_INCLUDE_PATH .'/core/CacheFile.php';
    require_once PIWIK_INCLUDE_PATH .'/core/Cookie.php';
    
    session_cache_limiter('nocache');
    
    mattpiwik's avatar
    mattpiwik a validé
    @date_default_timezone_set('UTC');
    
    
    if(!defined('PIWIK_ENABLE_TRACKING') || PIWIK_ENABLE_TRACKING)
    {
    	ob_start();
    }
    
    	require_once PIWIK_INCLUDE_PATH .'/core/Loader.php';
    
    	require_once PIWIK_INCLUDE_PATH .'/core/ErrorHandler.php';
    	require_once PIWIK_INCLUDE_PATH .'/core/ExceptionHandler.php';
    
    	$timer = new Piwik_Timer();
    
    	set_error_handler('Piwik_ErrorHandler');
    	set_exception_handler('Piwik_ExceptionHandler');
    
    mattpiwik's avatar
    mattpiwik a validé
    	printDebug("Debug enabled - Input parameters: <br/>" . var_export($_GET, true));
    
    	Piwik_Tracker_Db::enableProfiling();
    
    	Piwik::createConfigObject();
    
    	Piwik::createLogObject();
    
    if(!defined('PIWIK_ENABLE_TRACKING') || PIWIK_ENABLE_TRACKING)
    {
    
    	$process = new Piwik_Tracker();
    
    	try {
    		$process->main();
    	} catch(Exception $e) {
    		echo "Error:" . $e->getMessage();
    	}
    
    robocoder's avatar
    robocoder a validé
    	if($GLOBALS['PIWIK_TRACKER_DEBUG'] === true)
    	{	
    		printDebug($_COOKIE);
    		printDebug($timer);
    	}
    
    mattpiwik's avatar
    mattpiwik a validé