Index: trunk/core/kernel/application.php =================================================================== diff -u -r2685 -r2712 --- trunk/core/kernel/application.php (.../application.php) (revision 2685) +++ trunk/core/kernel/application.php (.../application.php) (revision 2712) @@ -660,7 +660,8 @@ */ function HREF($t, $prefix='', $params=null, $index_file=null) { - global $HTTP_SERVER_VARS; + if(!$t) $t = $this->GetVar('t'); // moved from MainProcessor->T() + if (defined('ADMIN') && $prefix == '') $prefix='/admin'; if (defined('ADMIN') && $prefix == '_FRONT_END_') $prefix = ''; $index_file = isset($index_file) ? $index_file : (defined('INDEX_FILE') ? INDEX_FILE : basename($_SERVER['SCRIPT_NAME'])); Index: trunk/kernel/units/users/users_tag_processor.php =================================================================== diff -u -r2646 -r2712 --- trunk/kernel/units/users/users_tag_processor.php (.../users_tag_processor.php) (revision 2646) +++ trunk/kernel/units/users/users_tag_processor.php (.../users_tag_processor.php) (revision 2712) @@ -6,7 +6,8 @@ function LogoutLink($params) { $pass = Array('pass' => 'all,m,u', 'u_event' => 'OnLogout'); - return $this->Application->HREF('', '', $pass); + $logout_template = $this->SelectParam($params, 'template,t'); + return $this->Application->HREF($logout_template, '', $pass); } function UseUsernames($params) Index: trunk/core/kernel/processors/main_processor.php =================================================================== diff -u -r2676 -r2712 --- trunk/core/kernel/processors/main_processor.php (.../main_processor.php) (revision 2676) +++ trunk/core/kernel/processors/main_processor.php (.../main_processor.php) (revision 2712) @@ -79,24 +79,14 @@ { //by default link to current template $t = $this->SelectParam($params, 't,template'); - if ($t === false) { - $t = $this->Application->GetVar('t'); - } unset($params['t']); unset($params['template']); $prefix=isset($params['prefix']) ? $params['prefix'] : ''; unset($params['prefix']); $index_file = isset($params['index_file']) ? $params['index_file'] : null; unset($params['index_file']); - - /*$pass=isset($params['pass']) ? $params['pass'] : $this->Application->GetVar('t_pass'); unset($params['pass']); - $this->Application->SetVar('t_pass', $pass); - - $pass_events = isset($params['pass_events']) && $params['pass_events'] ? 1 : 0; unset($params['pass_events']); - $this->Application->SetVar('t_pass_events', $pass_events);*/ - - //Use only implicit params passing, do not set into APP -// $this->Set($params); // set other params as application vars + if( !getArrayValue($params,'no_amp') ) { + unset($params['no_amp']); return str_replace('&', '&', $this->Application->HREF($t,$prefix,$params,$index_file)); } else Index: trunk/core/units/users/users_tag_processor.php =================================================================== diff -u -r2646 -r2712 --- trunk/core/units/users/users_tag_processor.php (.../users_tag_processor.php) (revision 2646) +++ trunk/core/units/users/users_tag_processor.php (.../users_tag_processor.php) (revision 2712) @@ -6,7 +6,8 @@ function LogoutLink($params) { $pass = Array('pass' => 'all,m,u', 'u_event' => 'OnLogout'); - return $this->Application->HREF('', '', $pass); + $logout_template = $this->SelectParam($params, 'template,t'); + return $this->Application->HREF($logout_template, '', $pass); } function UseUsernames($params)