]> scripts.mit.edu Git - autoinstalls/mediawiki.git/blobdiff - includes/specials/SpecialWithoutinterwiki.php
MediaWiki 1.17.0
[autoinstalls/mediawiki.git] / includes / specials / SpecialWithoutinterwiki.php
index 2092e43b52490e7319a7aec0101b450f704c146b..90c1f441e526bc09689954ec9e18ab332b35a811 100644 (file)
@@ -1,14 +1,31 @@
 <?php
 /**
+ * Implements Special:Withoutinterwiki
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
  * @file
  * @ingroup SpecialPage
+ * @author Rob Church <robchur@gmail.com>
  */
 
 /**
  * Special page lists pages without language links
  *
  * @ingroup SpecialPage
- * @author Rob Church <robchur@gmail.com>
  */
 class WithoutInterwikiPage extends PageQueryPage {
        private $prefix = '';
@@ -31,7 +48,7 @@ class WithoutInterwikiPage extends PageQueryPage {
                return  Xml::openElement( 'form', array( 'method' => 'get', 'action' => $wgScript ) ) .
                        Xml::openElement( 'fieldset' ) .
                        Xml::element( 'legend', null, wfMsg( 'withoutinterwiki-legend' ) ) .
-                       Xml::hidden( 'title', $t->getPrefixedText() ) .
+                       Html::hidden( 'title', $t->getPrefixedText() ) .
                        Xml::inputLabel( wfMsg( 'allpagesprefix' ), 'prefix', 'wiprefix', 20, $prefix ) . ' ' .
                        Xml::submitButton( wfMsg( 'withoutinterwiki-submit' ) ) .
                        Xml::closeElement( 'fieldset' ) .
@@ -53,7 +70,7 @@ class WithoutInterwikiPage extends PageQueryPage {
        function getSQL() {
                $dbr = wfGetDB( DB_SLAVE );
                list( $page, $langlinks ) = $dbr->tableNamesN( 'page', 'langlinks' );
-               $prefix = $this->prefix ? "AND page_title LIKE '" . $dbr->escapeLike( $this->prefix ) . "%'" : '';
+               $prefix = $this->prefix ? 'AND page_title' . $dbr->buildLike( $this->prefix , $dbr->anyString() ) : '';
                return
                  "SELECT 'Withoutinterwiki'  AS type,
                          page_namespace AS namespace,
@@ -75,13 +92,10 @@ class WithoutInterwikiPage extends PageQueryPage {
 }
 
 function wfSpecialWithoutinterwiki() {
-       global $wgRequest, $wgContLang, $wgCapitalLinks;
+       global $wgRequest;
        list( $limit, $offset ) = wfCheckLimits();
-       if( $wgCapitalLinks ) {
-               $prefix = $wgContLang->ucfirst( $wgRequest->getVal( 'prefix' ) );
-       } else {
-               $prefix = $wgRequest->getVal( 'prefix' );
-       }
+       // Only searching the mainspace anyway
+       $prefix = Title::capitalize( $wgRequest->getVal( 'prefix' ), NS_MAIN );
        $wip = new WithoutInterwikiPage();
        $wip->setPrefix( $prefix );
        $wip->doQuery( $offset, $limit );