/** * Returns wikia Config for cross wiki search build on request data * @return Wikia\Search\Config */ protected function getConfigCrossWiki() { $request = $this->getRequest(); $searchConfig = new Wikia\Search\Config(); $lang = $request->getArray('lang'); if (in_array(self::ALL_LANGUAGES_STR, $lang)) { $lang = ['*']; } $searchConfig->setQuery($request->getVal('query', null))->setLimit($request->getInt('limit', static::CROSS_WIKI_LIMIT))->setPage($request->getVal('batch', 1))->setRank($request->getVal('rank', 'default'))->setHub($request->getArray('hub', null))->setInterWiki(true)->setCommercialUse($this->hideNonCommercialContent()); if (!empty($lang)) { $searchConfig->setLanguageCode($lang); } //this will set different boosting $searchConfig->setBoostGroup('CrossWikiApi'); return $searchConfig; }