Support Auth0.
[readifood.git] / www / index.php
index 84f8717..d88b321 100644 (file)
@@ -8,12 +8,13 @@
   $root = join(DIRECTORY_SEPARATOR, array($_SERVER['DOCUMENT_ROOT'], ".."));
   $propel_root = join(DIRECTORY_SEPARATOR, array($root, "propel"));
   $lib_root = join(DIRECTORY_SEPARATOR, array($root, "lib"));
-  require_once "propel/Propel.php";
+  require_once(join(DIRECTORY_SEPARATOR, array($root, "vendor", "autoload.php")));
 
   Propel::init("$propel_root/build/conf/$propel_project-conf.php");
-  set_include_path(join(PATH_SEPARATOR, array("$propel_root/build/classes", get_include_path())));
+  set_include_path(join(PATH_SEPARATOR, array(join(DIRECTORY_SEPARATOR, array($propel_root, "build", "classes")), get_include_path())));
 
-  $request = preg_replace('!^/branches/[^/]+/!', "", $_SERVER['REQUEST_URI']);
+  $script_url = array_key_exists('SCRIPT_URL', $_SERVER) ? $_SERVER['SCRIPT_URL'] : $_SERVER['REDIRECT_URL'];
+  $request = preg_replace('!^/branches/[^/]+/!', "", $script_url);
   $request = preg_replace('!^/+!', "", $request);
   $request = preg_replace('!/+$!', "", $request);
 
   else $module = strtolower($module);
   #echo "request: $request; module: $module; params: " . print_r($parameters, true);
 
-  $username = $_SERVER['REMOTE_USER'];
-  include_once("$lib_root/constants.php");
-  include_once("$lib_root/functions.php");
-  include_once("$lib_root/header.php");
-  $q = new UserQuery;
-  $user = $q->findOneByUsername($username);
-  if (! $q->count()) {
-    echo "<h1 class=\"printonly\">$charity</h1>\n";
-    echo "<h1>Not logged in!</h1>\n";
-    if ($_SERVER['REMOTE_USER']) echo "<p>User <em>" . $_SERVER['REMOTE_USER'] . "</em> needs an entry in the user table.</p>\n";
-  }
-  else {
-    $user_id = $user->getContactId();
-    $admin_level = $user->getAdmin();
-    if ($module) {
-      echo "<h3 class=\"printonly\">$charity $module</h3>\n";
-      include_once("$lib_root/$module.php");
+  $http = (isset($_SERVER['HTTPS'])) ? "https" : "http";
+  include_once(join(DIRECTORY_SEPARATOR, array($lib_root, "constants.php")));
+  include_once(join(DIRECTORY_SEPARATOR, array($lib_root, "functions.php")));
+  include_once(join(DIRECTORY_SEPARATOR, array($lib_root, "session.php")));
+
+  $auth0_user = $auth0->getUser();
+  if (isset($auth0_user)) $username = $auth0_user["sub"];
+  else $username = null;
+
+  include_once(join(DIRECTORY_SEPARATOR, array($lib_root, "header.php")));
+
+  if ($username) {
+    $q = new UserQuery;
+    $user = $q->findOneByUsername($username);
+    if (! $q->count()) {
+      echo "<h1 class=\"printonly\">$charity</h1>\n";
+      echo "<h1>Not logged in!</h1>\n";
+      echo "<p>User <em>$username</em> needs an entry in the user table.</p>\n";
     }
+    else {
+      $user_id = $user->getContactId();
+      $admin_level = $user->getAdmin();
+      if ($module) {
+        echo "<h3 class=\"printonly\">$charity $module</h3>\n";
+        include_once(join(DIRECTORY_SEPARATOR, array($lib_root, "$module.php")));
+      }
 
-    #else include_once("$lib_root/menu.php");
-   }
-  include_once("$lib_root/footer.php");
+      #else include_once(join(DIRECTORY_SEPARATOR, array($lib_root, "menu.php")));
+    }
+  }
+  else $auth0->login();
+  include_once(join(DIRECTORY_SEPARATOR, array($lib_root, "footer.php")));
 ?>