Index: branches/5.3.x/core/kernel/session/session.php =================================================================== diff -u -N -r15928 -r15974 --- branches/5.3.x/core/kernel/session/session.php (.../session.php) (revision 15928) +++ branches/5.3.x/core/kernel/session/session.php (.../session.php) (revision 15974) @@ -1,6 +1,6 @@ Application->GetVar('m_wid'); - $last_env = $this->getLastTemplateENV($t, Array ('m_opener' => 'u')); + $last_env = $this->getLastTemplateENV($t, array('m_opener' => 'u')); $last_template = basename($_SERVER['PHP_SELF']) . '|' . $last_env; $this->StoreVar(rtrim('last_template_' . $wid, '_'), $last_template); // prepare last_template for opener stack, module & session could be added later - $last_env = $this->getLastTemplateENV($t, null, false); + $last_env = $this->getLastTemplateENV($t); $last_template = basename($_SERVER['PHP_SELF']) . '|' . $last_env; // save last_template in persistent session @@ -920,27 +920,19 @@ } } - function getLastTemplateENV($t, $params = null, $encode = true) + protected function getLastTemplateENV($t, $params = null) { if (!isset($params)) { $params = Array (); } - $params['__URLENCODE__'] = 1; // uses "&" instead of "&" for url part concatenation + replaces "\" to "%5C" (works in HTML) - - if ($this->Application->GetVar('admin') && !array_key_exists('admin', $params) && !defined('EDITING_MODE')) { $params['editing_mode'] = ''; // used in kApplication::Run } $params = array_merge($this->Application->getPassThroughVariables($params), $params); - $ret = $this->Application->BuildEnv($t, $params, 'all', false, false); - if (!$encode) { - // cancels 2nd part of replacements, that URLENCODE does - $ret = str_replace('%5C', '\\', $ret); - } - return $ret; + return $this->Application->BuildEnv($t, $params, 'all', false, false); } /**