Index: trunk/core/kernel/session/session.php =================================================================== diff -u -r3031 -r3137 --- trunk/core/kernel/session/session.php (.../session.php) (revision 3031) +++ trunk/core/kernel/session/session.php (.../session.php) (revision 3137) @@ -283,7 +283,7 @@ $this->CheckIfCookiesAreOn(); if ($this->CookiesEnabled) $_COOKIE['cookies_on'] = 1; - + $this->Checkers = Array(); $this->InitStorage(); $this->Data =& new Params(); @@ -324,6 +324,9 @@ function CheckReferer() { + if ( !$this->Application->ConfigValue('SessionReferrerCheck') ) { + return true; + } $path = preg_replace("/admin$/", '', $this->CookiePath); // removing /admin for compatability with in-portal (in-link/admin/add_link.php) $reg = '#^'.preg_quote(PROTOCOL.ltrim($this->CookieDomain, '.').$path).'#'; return preg_match($reg, getArrayValue($_SERVER, 'HTTP_REFERER') ) || (defined('IS_POPUP') && IS_POPUP); @@ -559,7 +562,7 @@ $this->CookieDomain, $this->CookieSecure ); - + $_COOKIE[$this->CookieName] = $this->SID; // for compatibility with in-portal } @@ -645,7 +648,7 @@ $this->StoreVar('last_template', $last_template); } $this->StoreVar('last_env', substr($this->Application->BuildEnv($this->Application->GetVar('t'),Array('pass'=>'all')), strlen(ENV_VAR_NAME)+1 )); - + $this->PrintSession('after save'); $this->Storage->SaveData($this); }