*Patch by WebBoy to use redirect table (bug 8799)
authorAaron Schulz <aaron@users.mediawiki.org>
Tue, 27 Feb 2007 21:02:06 +0000 (21:02 +0000)
committerAaron Schulz <aaron@users.mediawiki.org>
Tue, 27 Feb 2007 21:02:06 +0000 (21:02 +0000)
includes/SpecialBrokenRedirects.php
includes/SpecialDoubleRedirects.php

index 95a705e..12dba8a 100644 (file)
@@ -25,16 +25,16 @@ class BrokenRedirectsPage extends PageQueryPage {
 
        function getSQL() {
                $dbr = wfGetDB( DB_SLAVE );
-               list( $page, $pagelinks ) = $dbr->tableNamesN( 'page', 'pagelinks' );
+               list( $page, $redirect ) = $dbr->tableNamesN( 'page', 'redirect' );
 
                $sql = "SELECT 'BrokenRedirects'  AS type,
                                p1.page_namespace AS namespace,
                                p1.page_title     AS title,
-                               pl_namespace,
-                               pl_title
-                          FROM $pagelinks AS pl
-                   JOIN $page p1 ON (p1.page_is_redirect=1 AND pl.pl_from=p1.page_id)
-                     LEFT JOIN $page AS p2 ON (pl_namespace=p2.page_namespace AND pl_title=p2.page_title )
+                               rd_namespace,
+                               rd_title
+                          FROM $redirect AS rd
+                   JOIN $page p1 ON (rd.rd_from=p1.page_id)
+                     LEFT JOIN $page AS p2 ON (rd_namespace=p2.page_namespace AND rd_title=p2.page_title )
                                WHERE p2.page_namespace IS NULL";
                return $sql;
        }
@@ -47,8 +47,8 @@ class BrokenRedirectsPage extends PageQueryPage {
                global $wgUser, $wgContLang;
                
                $fromObj = Title::makeTitle( $result->namespace, $result->title );
-               if ( isset( $result->pl_title ) ) {
-                       $toObj = Title::makeTitle( $result->pl_namespace, $result->pl_title );
+               if ( isset( $result->rd_title ) ) {
+                       $toObj = Title::makeTitle( $result->rd_namespace, $result->rd_title );
                } else {
                        $blinks = $fromObj->getBrokenLinksFrom();
                        if ( $blinks ) {
index 4db785f..5bb199c 100644 (file)
@@ -24,7 +24,7 @@ class DoubleRedirectsPage extends PageQueryPage {
 
        function getSQLText( &$dbr, $namespace = null, $title = null ) {
                
-               list( $page, $pagelinks ) = $dbr->tableNamesN( 'page', 'pagelinks' );
+               list( $page, $redirect ) = $dbr->tableNamesN( 'page', 'redirect' );
 
                $limitToTitle = !( $namespace === null && $title === null );
                $sql = $limitToTitle ? "SELECT" : "SELECT 'DoubleRedirects' as type," ;
@@ -32,14 +32,13 @@ class DoubleRedirectsPage extends PageQueryPage {
                         " pa.page_namespace as namespace, pa.page_title as title," .
                         " pb.page_namespace as nsb, pb.page_title as tb," .
                         " pc.page_namespace as nsc, pc.page_title as tc" .
-                  " FROM $pagelinks AS la, $pagelinks AS lb, $page AS pa, $page AS pb, $page AS pc" .
-                  " WHERE pa.page_is_redirect=1 AND pb.page_is_redirect=1" .
-                        " AND la.pl_from=pa.page_id" .
-                        " AND la.pl_namespace=pb.page_namespace" .
-                        " AND la.pl_title=pb.page_title" .
-                        " AND lb.pl_from=pb.page_id" .
-                        " AND lb.pl_namespace=pc.page_namespace" .
-                        " AND lb.pl_title=pc.page_title";
+                  " FROM $redirect AS ra, $redirect AS rb, $page AS pa, $page AS pb, $page AS pc" .
+                  " WHERE ra.rd_from=pa.page_id" .
+                        " AND ra.rd_namespace=pb.page_namespace" .
+                        " AND ra.rd_title=pb.page_title" .
+                        " AND rb.rd_from=pb.page_id" .
+                        " AND rb.rd_namespace=pc.page_namespace" .
+                        " AND rb.rd_title=pc.page_title";
 
                if( $limitToTitle ) {
                        $encTitle = $dbr->addQuotes( $title );