]> git.agnieray.net Git - galette.git/blobdiff - galette/includes/galette.inc.php
Bump version
[galette.git] / galette / includes / galette.inc.php
index bad2d57975b5f31e24cee8629ddd897bb9c3bca9..a58ea0c695d0ea838c24cb4d51c0b68a88b93222 100644 (file)
@@ -7,7 +7,7 @@
  *
  * PHP version 5
  *
- * Copyright © 2009-2014 The Galette Team
+ * Copyright © 2009-2018 The Galette Team
  *
  * This file is part of Galette (http://galette.tuxfamily.org).
  *
  * @package   Galette
  *
  * @author    Johan Cwiklinski <johan@x-tnd.be>
- * @copyright 2007-2014 The Galette Team
+ * @copyright 2007-2018 The Galette Team
  * @license   http://www.gnu.org/licenses/gpl-3.0.html GPL License 3.0 or (at your option) any later version
- * @version   SVN: $Id$
  * @link      http://galette.tuxfamily.org
  * @since     Available since 0.7-dev - 2007-10-07
  */
 
-if (!defined('GALETTE_PHP_MIN')) {
-    define('GALETTE_PHP_MIN', '5.5');
+//define galette's root directory
+if (!defined('GALETTE_ROOT')) {
+    define('GALETTE_ROOT', __DIR__ . '/../');
 }
 
+require_once GALETTE_ROOT . 'config/versions.inc.php';
+require_once GALETTE_ROOT . 'config/paths.inc.php';
+
 // check required PHP version...
 if (version_compare(PHP_VERSION, GALETTE_PHP_MIN, '<')) {
     echo 'Galette is NOT compliant with your current PHP version. ' .
-        'Galette requires PHP ' . GALETTE_PHP_MIN  .
+        'Galette requires PHP ' . GALETTE_PHP_MIN .
         ' minimum and current version is ' . phpversion();
-    die();
+    die(1);
 }
 
 $time_start = microtime(true);
 $cron = (PHP_SAPI === 'cli');
 
-//define galette's root directory
-if (!defined('GALETTE_ROOT')) {
-    define('GALETTE_ROOT', __DIR__ . '/../');
-}
-
 // define relative base path templating can use
 if (!defined('GALETTE_BASE_PATH')) {
     define('GALETTE_BASE_PATH', './');
 }
 
-require_once GALETTE_ROOT . 'config/versions.inc.php';
-require_once GALETTE_ROOT . 'config/paths.inc.php';
-
 //we'll only include relevant parts if we work from installer
 if (!isset($installer)) {
     $installer = false;
@@ -75,7 +70,8 @@ if (!$installed && !$installer) {
     die();
 }
 
-if (file_exists(GALETTE_CONFIG_PATH . 'behavior.inc.php')
+if (
+    file_exists(GALETTE_CONFIG_PATH . 'behavior.inc.php')
     && !defined('GALETTE_TESTS') && !$cron
 ) {
     include_once GALETTE_CONFIG_PATH . 'behavior.inc.php';
@@ -87,24 +83,10 @@ if (isset($installer) && $installer !== true) {
 }
 
 use Analog\Analog;
+use Analog\Handler;
+use Analog\Handler\LevelName;
 use Galette\Core;
 
-/*require_once GALETTE_ROOT . 'lib/Galette/Common/ClassLoader.php';
-require_once GALETTE_SLIM_PATH . 'Slim/Slim.php';
-
-$galetteLoader = new ClassLoader('Galette', GALETTE_ROOT . 'lib');
-$zendLoader = new ClassLoader('Zend', GALETTE_ZEND_PATH);
-$analogLoader = new ClassLoader('Analog', GALETTE_ANALOG_PATH);
-$smartyLoader = new ClassLoader(null, GALETTE_SMARTY_PATH);
-$smartyLoader->setFileExtension('.class.php');
-//register loaders
-$galetteLoader->register();
-$zendLoader->register();
-$analogLoader->register();
-$smartyLoader->register();
-
-\Slim\Slim::registerAutoloader();
-require_once GALETTE_SLIM_VIEWS_PATH . 'Smarty.php';*/
 /*
 BREAKS as of Galette 0.9-dev
 // To help the built-in PHP dev server, check if the request was actually for
@@ -116,7 +98,8 @@ if (PHP_SAPI === 'cli-server' && $_SERVER['SCRIPT_FILENAME'] !== __FILE__) {
 require GALETTE_ROOT . '/vendor/autoload.php';
 
 //start profiling
-if (defined('GALETTE_XHPROF_PATH')
+if (
+    defined('GALETTE_XHPROF_PATH')
     && function_exists('xhprof_enable')
 ) {
     include_once __DIR__ . '/../lib/Galette/Common/XHProf.php';
@@ -124,12 +107,16 @@ if (defined('GALETTE_XHPROF_PATH')
     $profiler->start();
 }
 
-//we start a php session
-session_start();
+define('GALETTE_NIGHTLY', false);
+define('GALETTE_VERSION', 'v0.9.4.2');
+
+//Version to display
+if (!defined('GALETTE_HIDE_VERSION')) {
+    define('GALETTE_DISPLAY_VERSION', \Galette\Core\Galette::gitVersion(false));
+}
 
-define('GALETTE_VERSION', 'v0.9dev');
-define('GALETTE_COMPAT_VERSION', '0.9');
-define('GALETTE_DB_VERSION', '0.820');
+define('GALETTE_COMPAT_VERSION', '0.9.2');
+define('GALETTE_DB_VERSION', '0.940');
 if (!defined('GALETTE_MODE')) {
     define('GALETTE_MODE', 'PROD'); //DEV, PROD, MAINT or DEMO
 }
@@ -138,7 +125,7 @@ if (!isset($_COOKIE['show_galette_dashboard'])) {
     setcookie(
         'show_galette_dashboard',
         true,
-        time()+31536000 //valid for a year
+        time() + 31536000 //valid for a year
     );
 }
 
@@ -161,44 +148,41 @@ set_include_path(
 /*------------------------------------------------------------------------------
 Logger stuff
 ------------------------------------------------------------------------------*/
-if (!$cron) {
-    //set custom error handler
-    set_error_handler(
-        array(
-            "Galette\Core\Error",
-            "errorHandler"
-        )
-    );
-}
 
+//change default format so the 3rd param is a string for level name
+Analog::$format = "%s - %s - %s - %s\n";
 $galette_run_log = null;
-$galette_debug_log = \Analog\Handler\Ignore::init();
+$galette_debug_log = Handler\Ignore::init();
 
 if (!defined('GALETTE_LOG_LVL')) {
     if (GALETTE_MODE === 'DEV') {
-        define('GALETTE_LOG_LVL', \Analog\Analog::DEBUG);
+        define('GALETTE_LOG_LVL', Analog::DEBUG);
+    } elseif (defined('GALETTE_TESTS')) {
+        define('GALETTE_LOG_LVL', Analog::NOTICE);
     } else {
-        define('GALETTE_LOG_LVL', \Analog\Analog::WARNING);
+        define('GALETTE_LOG_LVL', Analog::WARNING);
     }
 }
 
 if (defined('GALETTE_TESTS')) {
-    //FIXME: we should check logs files from tests
-    $galette_run_log = \Analog\Handler\Ignore::init();
+    $log_path = GALETTE_LOGS_PATH . 'tests.log';
+    $galette_run_log = LevelName::init(Handler\File::init($log_path));
 } else {
     if ((!$installer || ($installer && defined('GALETTE_LOGGER_CHECKED'))) && !$cron) {
-        $now = new \DateTime();
-        $dbg_log_path = GALETTE_LOGS_PATH . 'galette_debug_' .
-            $now->format('Y-m-d')  . '.log';
-        $galette_debug_log = \Analog\Handler\File::init($dbg_log_path);
+        if (GALETTE_LOG_LVL >= Analog::INFO) {
+            $now = new \DateTime();
+            $dbg_log_path = GALETTE_LOGS_PATH . 'galette_debug_' .
+                $now->format('Y-m-d') . '.log';
+            $galette_debug_log = LevelName::init(Handler\File::init($dbg_log_path));
+        } else {
+            $galette_debug_log = Handler\Ignore::init();
+        }
     }
     $galette_log_var = null;
 
-    if (GALETTE_MODE === 'DEV' || $cron
-        || ( defined('GALETTE_SYS_LOG') && GALETTE_SYS_LOG === true )
-    ) {
+    if (defined('GALETTE_SYS_LOG') && GALETTE_SYS_LOG === true) {
         //logs everything in PHP logs (per chance /var/log/http/error_log or /var/log/php-fpm/error.log)
-        $galette_run_log = \Analog\Handler\Stderr::init();
+        $galette_run_log = Handler\Syslog::init('galette', 'user');
     } else {
         if (!$installer || ($installer && defined('GALETTE_LOGGER_CHECKED'))) {
             //logs everything in galette log file
@@ -207,18 +191,20 @@ if (defined('GALETTE_TESTS')) {
                 $logfile = 'galette_run';
             }
             $log_path = GALETTE_LOGS_PATH . $logfile . '.log';
-            $galette_run_log = \Analog\Handler\File::init($log_path);
+            $galette_run_log = LevelName::init(Handler\File::init($log_path));
         } else {
-            $galette_run_log = \Analog\Handler\Variable::init($galette_log_var);
+            $galette_run_log = LevelName::init(Handler\Variable::init($galette_log_var));
         }
     }
-    Core\Logs::cleanup();
+    if (!$installer) {
+        Core\Logs::cleanup();
+    }
 }
 
 Analog::handler(
-    \Analog\Handler\Multi::init(
-        array (
-            Analog::NOTICE  => \Analog\Handler\Threshold::init(
+    Handler\Multi::init(
+        array(
+            Analog::NOTICE  => Handler\Threshold::init(
                 $galette_run_log,
                 GALETTE_LOG_LVL
             ),
@@ -229,17 +215,6 @@ Analog::handler(
 
 require_once GALETTE_ROOT . 'includes/functions.inc.php';
 
-//FIXME: native sessions should not be used right now
-$session_name = null;
-//since PREFIX_DB and NAME_DB are required to properly instanciate sessions,
-// we have to check here if they're assigned
-if ($installer || !defined('PREFIX_DB') || !defined('NAME_DB')) {
-    $session_name = 'galette_install';
-} else {
-    $session_name = PREFIX_DB . '_' . NAME_DB;
-}
-$session = &$_SESSION['galette'][$session_name];
-
 if (!$installer and !defined('GALETTE_TESTS')) {
     //If we're not working from installer nor from tests
     include_once GALETTE_CONFIG_PATH . 'config.inc.php';
@@ -260,8 +235,8 @@ if (!$installer and !defined('GALETTE_TESTS')) {
          * Set the path to the current theme templates
          */
         define(
-            '_CURRENT_TEMPLATE_PATH',
-            GALETTE_TEMPLATES_PATH . $preferences->pref_theme . '/'
+            '_CURRENT_THEME_PATH',
+            GALETTE_THEMES_PATH . $preferences->pref_theme . '/'
         );
 
         if (!defined('GALETTE_TPL_SUBDIR')) {
@@ -274,25 +249,8 @@ if (!$installer and !defined('GALETTE_TESTS')) {
         if (!defined('GALETTE_THEME')) {
             define(
                 'GALETTE_THEME',
-                GALETTE_BASE_PATH . 'themes/' . $preferences->pref_theme . '/'
-            );
-        }
-
-        /**
-         * Authentication
-         */
-        /*if (isset($session['login'])) {
-            $login = unserialize(
-                $session['login']
+                'themes/' . $preferences->pref_theme . '/'
             );
-            $login->setDb($zdb);
-        } else {
-            $login = new Core\Login($zdb, $i18n, $session);
-        }*/
-
-        /** TODO: login is now handled in dependencies.php; the cron case should be aswell */
-        if ($cron) {
-            $login->logCron(basename($argv[0], '.php'));
         }
     } else {
         $needs_update = true;