Mercurial > SimpleWebPresenter
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");
