From: Siebrand Mazeland Date: Sat, 7 Aug 2010 12:45:10 +0000 (+0000) Subject: Revert changes to SpecialSearch.php in r70608 because Special:Search didn't load... X-Git-Tag: 1.31.0-rc.0~35652 X-Git-Url: http://git.cyclocoop.org/%24href?a=commitdiff_plain;h=c6638c5b9f5c75756c721c12c93a705c022a5277;p=lhc%2Fweb%2Fwiklou.git Revert changes to SpecialSearch.php in r70608 because Special:Search didn't load anymore. PHP Notice: Undefined property: SpecialSearch::$searchEngine in /www/w/includes/specials/SpecialSearch.php on line 796 catrope on IRC: It asks the backend ($this->searchEngine) if it supports redirects but $this->searchEngine is only set in the code that generates results So viewing Special:Search with no results listing has that var unset --- diff --git a/includes/specials/SpecialSearch.php b/includes/specials/SpecialSearch.php index 8035e986a4..2dba5977aa 100644 --- a/includes/specials/SpecialSearch.php +++ b/includes/specials/SpecialSearch.php @@ -119,41 +119,7 @@ class SpecialSearch { wfProfileIn( __METHOD__ ); $sk = $wgUser->getSkin(); - - $beginSearchForm = Xml::openElement( - 'form', - array( - 'id' => ( $this->searchAdvanced ? 'powersearch' : 'search' ), - 'method' => 'get', - 'action' => $wgScript - ) - ); - $mwSearchTopTable = - Xml::openElement( 'table', array( 'id' => 'mw-search-top-table', 'border' => 0, 'cellpadding' => 0, 'cellspacing' => 0 ) ) . - Xml::openElement( 'tr' ) . - Xml::openElement( 'td' ) . "\n" . - $this->shortDialog( $term ) . - Xml::closeElement( 'td' ) . - Xml::closeElement( 'tr' ) . - Xml::closeElement( 'table' ); - - // moved to check for empty or null search string before running query - // to prevent NULL fulltext search error in SQL Server - $filePrefix = $wgContLang->getFormattedNsText( NS_FILE ) . ':'; - if ( trim( $term ) === '' || $filePrefix === trim( $term ) ) { - $wgOut->addHTML( $beginSearchForm ); - $wgOut->addHTML( $mwSearchTopTable ); - $wgOut->addHTML( $this->searchFocus() ); - $wgOut->addHTML( $this->formHeader( $term, 0, 0 ) ); - if ( $this->searchAdvanced ) { - $wgOut->addHTML( $this->powerSearchBox( $term ) ); - } - $wgOut->addHTML( Xml::closeElement( 'form' ) ); - // Empty query -- straight view of search form - wfProfileOut( __METHOD__ ); - return; - } - + $this->searchEngine = SearchEngine::create(); $search =& $this->searchEngine; $search->setLimitOffset( $this->limit, $this->offset ); @@ -228,10 +194,23 @@ class SpecialSearch { } // start rendering the page $wgOut->addHtml( - $beginSearchForm + Xml::openElement( + 'form', + array( + 'id' => ( $this->searchAdvanced ? 'powersearch' : 'search' ), + 'method' => 'get', + 'action' => $wgScript + ) + ) ); $wgOut->addHtml( - $mwSearchTopTable + Xml::openElement( 'table', array( 'id'=>'mw-search-top-table', 'border'=>0, 'cellpadding'=>0, 'cellspacing'=>0 ) ) . + Xml::openElement( 'tr' ) . + Xml::openElement( 'td' ) . "\n" . + $this->shortDialog( $term ) . + Xml::closeElement('td') . + Xml::closeElement('tr') . + Xml::closeElement('table') ); // Sometimes the search engine knows there are too many hits @@ -241,6 +220,19 @@ class SpecialSearch { return; } + $filePrefix = $wgContLang->getFormattedNsText(NS_FILE).':'; + if( trim( $term ) === '' || $filePrefix === trim( $term ) ) { + $wgOut->addHTML( $this->searchFocus() ); + $wgOut->addHTML( $this->formHeader($term, 0, 0)); + if( $this->searchAdvanced ) { + $wgOut->addHTML( $this->powerSearchBox( $term ) ); + } + $wgOut->addHTML( '' ); + // Empty query -- straight view of search form + wfProfileOut( __METHOD__ ); + return; + } + // Get number of results $titleMatchesNum = $titleMatches ? $titleMatches->numRows() : 0; $textMatchesNum = $textMatches ? $textMatches->numRows() : 0;