--- pmwiki_213_backup.php 2006-03-21 08:49:35.000000000 +0100 +++ pmwiki.php 2006-03-21 08:52:07.000000000 +0100 @@ -38,6 +38,13 @@ SDV($FarmD,dirname(__FILE__)); SDV($WorkDir,'wiki.d'); define('PmWiki',1); + +############################################################################################ +## Define default zero/master group +############################################################################################ +define( "ZERO_MASTER_GROUP", "Main" ); +############################################################################################ + @include_once("$FarmD/scripts/version.php"); $GroupPattern = '[[:upper:]][\\w]*(?:-\\w+)*'; $NamePattern = '[[:upper:]\\d][\\w]*(?:-\\w+)*'; @@ -107,10 +114,24 @@ $FmtP = array(); $FmtPV = array( # '$ScriptUrl' => 'PUE($ScriptUrl)', ## $ScriptUrl is special + # '$PageUrl' => + # 'PUE(($EnablePathInfo) + # ? "$ScriptUrl/$group/$name" + # : "$ScriptUrl?n=$group.$name")', + +############################################################################################ +## Strip zero/master group from generated links +############################################################################################ '$PageUrl' => - 'PUE(($EnablePathInfo) - ? "$ScriptUrl/$group/$name" - : "$ScriptUrl?n=$group.$name")', + 'PUE(($EnablePathInfo) + ? (($group == ZERO_MASTER_GROUP) + ? "$ScriptUrl/$name" + : "$ScriptUrl/$group/$name") + : (($group == ZERO_MASTER_GROUP) + ? "$ScriptUrl?n=$name" + : "$ScriptUrl?n=$group.$name"))', +############################################################################################ + '$FullName' => '"$group.$name"', '$Groupspaced' => '$AsSpacedFunction($group)', '$Namespaced' => '$AsSpacedFunction($name)', @@ -289,6 +310,13 @@ include_once('config.php'); } +############################################################################################ +## Also find with zero group as "/" +## http://www.pmwiki.org/wiki/Cookbook/PagePaths +############################################################################################ +array_push($PagePathFmt, ZERO_MASTER_GROUP . '.$1'); +############################################################################################ + SDV($CurrentTime,strftime($TimeFmt,$Now)); if (IsEnabled($EnableStdConfig,1)) @@ -489,9 +517,22 @@ $p = MakePageName($DefaultPage, $pagename); if (preg_match("/^($GroupPattern)[.\\/]($NamePattern)$/i", $pagename)) return $p; - if (IsEnabled($EnableFixedUrlRedirect, 1) - && $p && (PageExists($p) || preg_match('/[\\/.]/', $pagename))) - { Redirect($p); exit(); } + # if (IsEnabled($EnableFixedUrlRedirect, 1) + # && $p && (PageExists($p) || preg_match('/[\\/.]/', $pagename))) + # { Redirect($p); exit(); } + +############################################################################################ +## Redirecting to the master group creates an endless loop since +## it is cut out on generation. So we have to prevent this. +############################################################################################ + if ($p && (PageExists($p) || preg_match('/[\\/.]/', $pagename))) { + if (IsEnabled($EnableFixedUrlRedirect, 1) && !preg_match('/^' . ZERO_MASTER_GROUP . '[.\\/]/', $p)) + { Redirect($p); exit(); } + else + return $p; + } +############################################################################################ + return MakePageName($DefaultPage, "$pagename.$pagename"); }