From 9708106bad6f238d9aeaccc35258350a66604a6c Mon Sep 17 00:00:00 2001 From: Adrian Lang <lang@cosmocode.de> Date: Thu, 1 Jul 2010 13:02:28 +0200 Subject: [PATCH] Fix ns: and ns:start handling --- inc/pageutils.php | 4 ++-- inc/parser/renderer.php | 14 +++----------- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/inc/pageutils.php b/inc/pageutils.php index a2efdc5d5..969a6ea0d 100644 --- a/inc/pageutils.php +++ b/inc/pageutils.php @@ -185,10 +185,10 @@ function noNSorNS($id) { global $conf; $p = noNS($id); - if ($p == $conf['start']) { + if ($p == $conf['start'] || $p == false) { $p = curNS($id); if ($p == false) { - return noNS($id); + return $conf['start']; } } return $p; diff --git a/inc/parser/renderer.php b/inc/parser/renderer.php index 4dac75d21..7e52cfce2 100644 --- a/inc/parser/renderer.php +++ b/inc/parser/renderer.php @@ -271,20 +271,12 @@ class Doku_Renderer extends DokuWiki_Plugin { list($name,$hash) = explode('#',$name,2); if($hash) return $hash; - //trim colons or slash of a namespace link - $name = rtrim($name,':'); - if($conf['useslash']) - $name = rtrim($name,'/'); - + $name = strtr($name,';',':'); if($conf['useslash']){ - $nssep = '[:;/]'; - }else{ - $nssep = '[:;]'; + $name = strtr($name,'/',':'); } - $name = preg_replace('!.*'.$nssep.'!','',$name); - if(!$name) return $this->_simpleTitle($conf['start']); - return $name; + return noNSorNS($name); } /** -- GitLab