saper has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/164893

Change subject: searchSuggest.js: Pass user ns preferences to API
......................................................................

searchSuggest.js: Pass user ns preferences to API

Bug: 24214
Change-Id: I53ba99bbe9d445262804a8239ac85b48fef4d716
---
M includes/resourceloader/ResourceLoaderUserOptionsModule.php
M resources/Resources.php
M resources/src/mediawiki/mediawiki.searchSuggest.js
3 files changed, 23 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/93/164893/1

diff --git a/includes/resourceloader/ResourceLoaderUserOptionsModule.php 
b/includes/resourceloader/ResourceLoaderUserOptionsModule.php
index bd97a8e..f9f5d72 100644
--- a/includes/resourceloader/ResourceLoaderUserOptionsModule.php
+++ b/includes/resourceloader/ResourceLoaderUserOptionsModule.php
@@ -58,12 +58,30 @@
        public function getScript( ResourceLoaderContext $context ) {
                global $wgUser;
                return Xml::encodeJsCall( 'mw.user.options.set',
-                       array( $wgUser->getOptions() ),
+                       array( $wgUser->getOptions() + $this->getSearchNs( 
$wgUser->getOptions() ) ),
                        ResourceLoader::inDebugMode()
                );
        }
 
        /**
+        * Convert searchNsXXX into one array of namespaces to search
+        *
+        * @param array
+        * @return array
+        */
+       protected function getSearchNS( $options ) {
+               $namespaces = array();
+               foreach( $options as $optname => $optval ) {
+                               if ( strpos( $optname, 'searchNs' ) === 0 ) {
+                                       if ( $optval ) { 
+                                               $namespaces[] = substr( 
$optname, 8 );
+                                       }       
+                               }
+               }
+               return array( 'searchNS' => $namespaces );
+       }
+
+       /**
         * @return bool
         */
        public function supportsURLLoading() {
diff --git a/resources/Resources.php b/resources/Resources.php
index 53759a6..bee745a 100644
--- a/resources/Resources.php
+++ b/resources/Resources.php
@@ -929,6 +929,7 @@
                        'jquery.placeholder',
                        'jquery.suggestions',
                        'mediawiki.api',
+                       'user.options',
                ),
        ),
        'mediawiki.Title' => array(
@@ -966,7 +967,8 @@
                'scripts' => 'resources/src/mediawiki/mediawiki.userSuggest.js',
                'dependencies' => array(
                        'jquery.suggestions',
-                       'mediawiki.api'
+                       'mediawiki.api',
+                       'user.options'
                )
        ),
        'mediawiki.util' => array(
diff --git a/resources/src/mediawiki/mediawiki.searchSuggest.js 
b/resources/src/mediawiki/mediawiki.searchSuggest.js
index a214cb3..7aaffff 100644
--- a/resources/src/mediawiki/mediawiki.searchSuggest.js
+++ b/resources/src/mediawiki/mediawiki.searchSuggest.js
@@ -130,7 +130,7 @@
                                        $.data( node, 'request', api.get( {
                                                action: 'opensearch',
                                                search: query,
-                                               namespace: 0,
+                                               namespace: mw.user.options.get( 
'searchNS' ),
                                                suggest: ''
                                        } ).done( function ( data ) {
                                                response( data[ 1 ] );

-- 
To view, visit https://gerrit.wikimedia.org/r/164893
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I53ba99bbe9d445262804a8239ac85b48fef4d716
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: saper <sa...@saper.info>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to