From: Andrew Garrett Date: Tue, 15 Apr 2008 11:55:23 +0000 (+0000) Subject: Don't give PHP warnings for PHP<5.2 X-Git-Tag: 1.31.0-rc.0~48315 X-Git-Url: http://git.cyclocoop.org/%22.%24h.%22?a=commitdiff_plain;h=5b8231ddba4d058abc35db65e32aa2e3ad899846;p=lhc%2Fweb%2Fwiklou.git Don't give PHP warnings for PHP<5.2 --- diff --git a/includes/User.php b/includes/User.php index 43b552c879..e9bdf30dbd 100644 --- a/includes/User.php +++ b/includes/User.php @@ -2006,17 +2006,29 @@ class User { $this->load(); if ( 0 == $this->mId ) return; $exp = time() + $wgCookieExpiration; + + $doHttpOnly = version_compare("5.2", PHP_VERSION, "<"); $_SESSION['wsUserID'] = $this->mId; - setcookie( $wgCookiePrefix.'UserID', $this->mId, $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure, $wgCookieHttpOnly ); + + if ($doHttpOnly) { + setcookie( $wgCookiePrefix.'UserID', $this->mId, $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure, $wgCookieHttpOnly ); + setcookie( $wgCookiePrefix.'UserName', $this->getName(), $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure, $wgCookieHttpOnly ); + } else { + setcookie( $wgCookiePrefix.'UserID', $this->mId, $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure ); + setcookie( $wgCookiePrefix.'UserName', $this->getName(), $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure ); + } $_SESSION['wsUserName'] = $this->getName(); - setcookie( $wgCookiePrefix.'UserName', $this->getName(), $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure, $wgCookieHttpOnly ); $_SESSION['wsToken'] = $this->mToken; if ( 1 == $this->getOption( 'rememberpassword' ) ) { - setcookie( $wgCookiePrefix.'Token', $this->mToken, $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure, $wgCookieHttpOnly ); + if ($doHttpOnly) + setcookie( $wgCookiePrefix.'Token', $this->mToken, $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure, $wgCookieHttpOnly ); + else + setcookie( $wgCookiePrefix.'Token', $this->mToken, $exp, $wgCookiePath, $wgCookieDomain, $wgCookieSecure ); } else { + if ($doHttpOnly) setcookie( $wgCookiePrefix.'Token', '', time() - 3600 ); } }