From 052f54216539b88506882b3d89dd00e53d8b952c Mon Sep 17 00:00:00 2001 From: Chad Horohoe Date: Wed, 10 Aug 2011 23:27:10 +0000 Subject: [PATCH] Allow overriding $wgCookiePrefix and $wgCookieDomain in WebResponse::setcookie() so I can stop crying when I look at things like CentralAuth and CentralNotice --- includes/WebResponse.php | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/includes/WebResponse.php b/includes/WebResponse.php index 3d1459897c..39741e01d3 100644 --- a/includes/WebResponse.php +++ b/includes/WebResponse.php @@ -43,29 +43,37 @@ class WebResponse { * @param $name String: name of cookie * @param $value String: value to give cookie * @param $expire Int: number of seconds til cookie expires + * @param $prefix String: Prefix to use, if not $wgCookiePrefix (use '' for no prefix) + * @param @domain String: Cookie domain to use, if not $wgCookieDomain */ - public function setcookie( $name, $value, $expire = 0 ) { + public function setcookie( $name, $value, $expire = 0, $prefix = null, $domain = null ) { global $wgCookiePath, $wgCookiePrefix, $wgCookieDomain; global $wgCookieSecure,$wgCookieExpiration, $wgCookieHttpOnly; if ( $expire == 0 ) { $expire = time() + $wgCookieExpiration; } + if( $prefix === null ) { + $prefix = $wgCookiePrefix; + } + if( $domain === null ) { + $domain = $wgCookieDomain; + } $httpOnlySafe = wfHttpOnlySafe() && $wgCookieHttpOnly; wfDebugLog( 'cookie', 'setcookie: "' . implode( '", "', array( - $wgCookiePrefix . $name, + $prefix . $name, $value, $expire, $wgCookiePath, - $wgCookieDomain, + $domain, $wgCookieSecure, $httpOnlySafe ) ) . '"' ); - setcookie( $wgCookiePrefix . $name, + setcookie( $prefix . $name, $value, $expire, $wgCookiePath, - $wgCookieDomain, + $domain, $wgCookieSecure, $httpOnlySafe ); } -- 2.20.1