diff InputParser.inc @ 124:6766250a0baa

Support for parameters as directory structure.
author Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
date Fri, 29 Dec 2017 19:59:22 +0100
parents 8678ce12d533
children 7858ceb293d1
line wrap: on
line diff
--- a/InputParser.inc	Thu Dec 28 19:43:24 2017 +0100
+++ b/InputParser.inc	Fri Dec 29 19:59:22 2017 +0100
@@ -30,7 +30,9 @@
 
     $this->options = new Options($this->master);
     $this->options->setCache($cache);
-    $this->options->setBasePath(basePath());
+    $base=basePath();
+    $base=$_SERVER['CONTEXT_DOCUMENT_ROOT'];
+    $this->options->setBasePath($base);
     $this->options->setCacheable(true);
 
     $this->options->setUrlParams(array('name', 'lang'));
@@ -47,6 +49,18 @@
     if(array_key_exists('name', $_GET) && $_GET['name']) {
       $this->options->setName($_GET['name']);
     }
+    else {
+      $pathToAnalyze=$_SERVER['PATH_TRANSLATED'];
+      $prefix=$_SERVER['SCRIPT_FILENAME'];
+      if (substr($pathToAnalyze, 0, strlen($prefix)) == $prefix) {
+	$pathToAnalyze = substr($pathToAnalyze, strlen($prefix));
+      }
+      preg_match('/\/([^\/]*)$/', $pathToAnalyze, $groups);
+      if ($groups[1]) {
+	$this->options->setName($groups[1]);
+      }
+    }
+
 
     $params = $this->master->getElementsByTagName("param");