Similarise queries to that of SpecialWatchlist
authorSam Reed <reedy@users.mediawiki.org>
Fri, 20 May 2011 21:30:35 +0000 (21:30 +0000)
committerSam Reed <reedy@users.mediawiki.org>
Fri, 20 May 2011 21:30:35 +0000 (21:30 +0000)
includes/api/ApiQueryWatchlist.php

index 1aaa450..120c7ca 100644 (file)
@@ -115,17 +115,21 @@ class ApiQueryWatchlist extends ApiQueryGeneratorBase {
                }
 
                $this->addTables( array(
+                       'recentchanges',
                        'watchlist',
                        'page',
-                       'recentchanges'
                ) );
 
                $userId = $user->getId();
+               $this->addJoinConds( array( 'watchlist' => array('INNER JOIN',
+                       array(
+                               'wl_user' => $userId,
+                               'wl_namespace=rc_namespace',
+                               'wl_title=rc_title'
+               ) ) ) );
+               $this->addJoinConds( array( 'page' => array( 'LEFT JOIN','rc_cur_id=page_id' ) ) );
+
                $this->addWhere( array(
-                       'wl_namespace = rc_namespace',
-                       'wl_title = rc_title',
-                       'rc_cur_id = page_id',
-                       'wl_user' => $userId,
                        'rc_deleted' => 0,
                ) );