X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fspecials%2FSpecialSearch.php;h=dd326569ec532fc56afad901b1fba9ef763aea9d;hb=8f806d211f218d785c728c76aa12ec22352bd520;hp=41828464e7d65cacbc84b5a197cf6e0e7b118b0c;hpb=24ba0426481e0e186cf4152bd325ba1e1e341fa7;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specials/SpecialSearch.php b/includes/specials/SpecialSearch.php index 41828464e7..dd326569ec 100644 --- a/includes/specials/SpecialSearch.php +++ b/includes/specials/SpecialSearch.php @@ -42,6 +42,9 @@ class SpecialSearch extends SpecialPage { /// Search engine protected $searchEngine; + /// Search engine type, if not default + protected $searchEngineType; + /// For links protected $extraParams = array(); @@ -85,7 +88,9 @@ class SpecialSearch extends SpecialPage { $this->outputHeader(); $out = $this->getOutput(); $out->allowClickjacking(); - $out->addModuleStyles( 'mediawiki.special' ); + $out->addModuleStyles( array( + 'mediawiki.special', 'mediawiki.special.search', 'mediawiki.ui' + ) ); // Strip underscores from title parameter; most of the time we'll want // text form here. But don't strip underscores from actual text params! @@ -98,6 +103,8 @@ class SpecialSearch extends SpecialPage { $this->load(); + $this->searchEngineType = $request->getVal( 'srbackend' ); + if ( $request->getVal( 'fulltext' ) || !is_null( $request->getVal( 'offset' ) ) || !is_null( $request->getVal( 'searchx' ) ) ) @@ -313,13 +320,12 @@ class SpecialSearch extends SpecialPage { ) ); $out->addHtml( - Xml::openElement( 'table', array( 'id' => 'mw-search-top-table', 'cellpadding' => 0, 'cellspacing' => 0 ) ) . - Xml::openElement( 'tr' ) . - Xml::openElement( 'td' ) . "\n" . + # This is an awful awful ID name. It's not a table, but we + # named it poorly from when this was a table so now we're + # stuck with it + Xml::openElement( 'div', array( 'id' => 'mw-search-top-table' ) ) . $this->shortDialog( $term ) . - Xml::closeElement( 'td' ) . - Xml::closeElement( 'tr' ) . - Xml::closeElement( 'table' ) + Xml::closeElement( 'div' ) ); // Sometimes the search engine knows there are too many hits @@ -733,7 +739,7 @@ class SpecialSearch extends SpecialPage { * * @return string */ - protected function showInterwiki( &$matches, $query ) { + protected function showInterwiki( $matches, $query ) { global $wgContLang; wfProfileIn( __METHOD__ ); $terms = $wgContLang->convertForSearchResult( $matches->termMatches() ); @@ -1089,10 +1095,14 @@ class SpecialSearch extends SpecialPage { $out .= Html::input( 'search', $term, 'search', array( 'id' => $this->profile === 'advanced' ? 'powerSearchText' : 'searchText', 'size' => '50', - 'autofocus' + 'autofocus', + 'class' => 'mw-ui-input', ) ) . "\n"; $out .= Html::hidden( 'fulltext', 'Search' ) . "\n"; - $out .= Xml::submitButton( $this->msg( 'searchbutton' )->text() ) . "\n"; + $out .= Xml::submitButton( + $this->msg( 'searchbutton' )->text(), + array( 'class' => array( 'mw-ui-button', 'mw-ui-primary' ) ) + ) . "\n"; return $out . $this->didYouMeanHtml; } @@ -1171,7 +1181,8 @@ class SpecialSearch extends SpecialPage { */ public function getSearchEngine() { if ( $this->searchEngine === null ) { - $this->searchEngine = SearchEngine::create(); + $this->searchEngine = $this->searchEngineType ? + SearchEngine::create( $this->searchEngineType ) : SearchEngine::create(); } return $this->searchEngine; }