Lead users to setup check page when no config file given
[phorkie.git] / www / www-header.php
index 1d59b1c4feb7447628bd0e3f278946b62b090225..5381eed67a4f01e89b528ad7a47a8630d6031d9d 100644 (file)
@@ -1,21 +1,10 @@
 <?php
 namespace phorkie;
+error_reporting(error_reporting() & ~E_STRICT);
+session_set_cookie_params(14 * 86400);//2 weeks session expiry time
 session_start();
 
-set_include_path(
-    __DIR__ . '/../src/'
-    . PATH_SEPARATOR . get_include_path()
-);
-spl_autoload_register(
-    function ($class) {
-        $file = str_replace(array('\\', '_'), '/', $class) . '.php';
-        $hdl = @fopen($file, 'r', true);
-        if ($hdl !== false) {
-            fclose($hdl);
-            require $file;
-        }
-    }
-);
+require_once __DIR__ . '/../src/phorkie/autoload.php';
 set_exception_handler(
     function ($e) {
         if ($e instanceof Exception) {
@@ -27,6 +16,7 @@ set_exception_handler(
         if (!isset($GLOBALS['twig'])) {
             echo '<h1>Exception</h1>';
             echo '<p>' . $e->getMessage() . '</p>';
+            echo "\n";
             exit();
         }
 
@@ -42,11 +32,24 @@ set_exception_handler(
 );
 
 require_once __DIR__ . '/../data/config.default.php';
-if (file_exists(__DIR__ . '/../data/config.php')) {
-    require_once __DIR__ . '/../data/config.php';
+$pharFile = \Phar::running();
+if ($pharFile == '') {
+    $cfgFilePath = __DIR__ . '/../data/config.php';
+} else {
+    //remove phar:// from the path
+    $cfgFilePath = substr($pharFile, 7) . '.config.php';
+}
+$GLOBALS['phorkie']['cfgfiles'][$cfgFilePath] = false;
+$GLOBALS['phorkie']['suggestSetupCheck'] = false;
+if (file_exists($cfgFilePath)) {
+    $GLOBALS['phorkie']['cfgfiles'][$cfgFilePath] = true;
+    require_once $cfgFilePath;
+} else if ($GLOBALS['phorkie']['cfg']['setupcheck']) {
+    $GLOBALS['phorkie']['suggestSetupCheck'] = true;
 }
-if ($GLOBALS['phorkie']['cfg']['setupcheck']) {
-    SetupCheck::run();
+
+if ($GLOBALS['phorkie']['cfg']['baseurl'] === null) {
+    $GLOBALS['phorkie']['cfg']['baseurl'] = Tools::detectBaseUrl();
 }
 
 // Set/Get git commit session variables
@@ -101,6 +104,7 @@ function render($tplname, $vars = array())
     if (!isset($vars['htmlhelper'])) {
         $vars['htmlhelper'] = new HtmlHelper();
     }
+    $vars['suggestSetupCheck'] = $GLOBALS['phorkie']['suggestSetupCheck'];
 
     $template = $GLOBALS['twig']->loadTemplate($tplname . '.htm');
     echo $template->render($vars);