Merge "Don't rely on $wgTitle in WebRequest"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Thu, 2 Oct 2014 20:27:51 +0000 (20:27 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Thu, 2 Oct 2014 20:27:51 +0000 (20:27 +0000)
1  2 
includes/WebRequest.php

diff --combined includes/WebRequest.php
@@@ -705,21 -705,22 +705,22 @@@ class WebRequest 
  
        /**
         * Take an arbitrary query and rewrite the present URL to include it
+        * @deprecated Use appendQueryValue/appendQueryArray instead
         * @param string $query Query string fragment; do not include initial '?'
-        *
         * @return string
         */
        public function appendQuery( $query ) {
+               wfDeprecated( __METHOD__, '1.25' );
                return $this->appendQueryArray( wfCgiToArray( $query ) );
        }
  
        /**
         * @param string $key
         * @param string $value
-        * @param bool $onlyquery
+        * @param bool $onlyquery [deprecated]
         * @return string
         */
-       public function appendQueryValue( $key, $value, $onlyquery = false ) {
+       public function appendQueryValue( $key, $value, $onlyquery = true ) {
                return $this->appendQueryArray( array( $key => $value ), $onlyquery );
        }
  
         * Appends or replaces value of query variables.
         *
         * @param array $array Array of values to replace/add to query
-        * @param bool $onlyquery Whether to only return the query string and not the complete URL
+        * @param bool $onlyquery Whether to only return the query string and not the complete URL [deprecated]
         * @return string
         */
-       public function appendQueryArray( $array, $onlyquery = false ) {
+       public function appendQueryArray( $array, $onlyquery = true ) {
                global $wgTitle;
                $newquery = $this->getQueryValues();
                unset( $newquery['title'] );
                $newquery = array_merge( $newquery, $array );
                $query = wfArrayToCgi( $newquery );
-               return $onlyquery ? $query : $wgTitle->getLocalURL( $query );
+               if ( !$onlyquery ) {
+                       wfDeprecated( __METHOD__, '1.25' );
+                       return $wgTitle->getLocalURL( $query );
+               }
+               return $query;
        }
  
        /**
@@@ -1255,7 -1261,6 +1261,7 @@@ class WebRequestUpload 
  class FauxRequest extends WebRequest {
        private $wasPosted = false;
        private $session = array();
 +      private $requestUrl;
  
        /**
         * @param array $data Array of *non*-urlencoded key => value pairs, the
                return false;
        }
  
 +      public function setRequestURL( $url ) {
 +              $this->requestUrl = $url;
 +      }
 +
        public function getRequestURL() {
 -              $this->notImplemented( __METHOD__ );
 +              if ( $this->requestUrl === null ) {
 +                      throw new MWException( 'Request URL not set' );
 +              }
 +              return $this->requestUrl;
        }
  
        public function getProtocol() {