X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fapi%2FApiOpenSearch.php;h=4a673c21547dc4e0e3caed3f6546c5845a10b8ae;hb=50aa4c3860a4152b7eee68039b9891f00af69c77;hp=c3987ec7999e8be92b1d4d3a2a9102c7b7fe3c05;hpb=7a3227596e71b60f586d08bbb303fdca3fbc1bd3;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/api/ApiOpenSearch.php b/includes/api/ApiOpenSearch.php index c3987ec799..4a673c2154 100644 --- a/includes/api/ApiOpenSearch.php +++ b/includes/api/ApiOpenSearch.php @@ -29,7 +29,7 @@ if (!defined('MEDIAWIKI')) { } /** - * @addtogroup API + * @ingroup API */ class ApiOpenSearch extends ApiBase { @@ -45,11 +45,12 @@ class ApiOpenSearch extends ApiBase { $params = $this->extractRequestParams(); $search = $params['search']; $limit = $params['limit']; - + $namespaces = $params['namespace']; + // Open search results may be stored for a very long time $this->getMain()->setCacheMaxAge(1200); - - $srchres = PrefixSearch::titleSearch( $search, $limit ); + + $srchres = PrefixSearch::titleSearch( $search, $limit, $namespaces ); // Set top level elements $result = $this->getResult(); @@ -66,14 +67,20 @@ class ApiOpenSearch extends ApiBase { ApiBase :: PARAM_MIN => 1, ApiBase :: PARAM_MAX => 100, ApiBase :: PARAM_MAX2 => 100 - ) + ), + 'namespace' => array( + ApiBase :: PARAM_DFLT => NS_MAIN, + ApiBase :: PARAM_TYPE => 'namespace', + ApiBase :: PARAM_ISMULTI => true + ), ); } public function getParamDescription() { return array ( 'search' => 'Search string', - 'limit' => 'Maximum amount of results to return' + 'limit' => 'Maximum amount of results to return', + 'namespace' => 'Namespaces to search', ); } @@ -91,4 +98,3 @@ class ApiOpenSearch extends ApiBase { return __CLASS__ . ': $Id$'; } } -