Index: branches/unlabeled/unlabeled-1.155.2/core/kernel/application.php =================================================================== diff -u -r5715 -r5718 --- branches/unlabeled/unlabeled-1.155.2/core/kernel/application.php (.../application.php) (revision 5715) +++ branches/unlabeled/unlabeled-1.155.2/core/kernel/application.php (.../application.php) (revision 5718) @@ -1130,6 +1130,7 @@ unset($params['__SSL__']); } + $m_only = true; $pass_info = $this->getPassInfo($pass); if ($pass_info) { if ($pass_info[0] == 'm') array_shift($pass_info); @@ -1145,17 +1146,30 @@ $next_prefix = substr($next_prefix, 0, strlen($prefix) + 1); if ($prefix.'.' == $next_prefix) continue; } - - $ret .= '/'.$this->BuildModuleEnv_NEW($pass_element, $params, $pass_events); + $a = $this->BuildModuleEnv_NEW($pass_element, $params, $pass_events); + if ($a) { + $ret .= '/'.$a; + $m_only = false; + } } else { $env .= ':'.$this->BuildModuleEnv($pass_element, $params, $pass_events); } } $ret = $this->BuildModuleEnv_NEW('m', $params, $pass_events).$ret; + $cat_processed = isset($params['category_processed']) && $params['category_processed']; + if ($cat_processed) { + unset($params['category_processed']); + } - $ret = trim($ret, '/').'.html'; + if (!$m_only || !$cat_processed) { + $ret = trim($ret, '/').'.html'; + } + else { + $ret .= '/'; + } + // $ret = trim($ret, '/').'/'; if($env) $params[ENV_VAR_NAME] = ltrim($env, ':'); }