By request of Domas. Extensions that were relying on the left join to
page being present must add it if it's not; LQT was the only one I found
in trunk, and I updated it so it should still work.
if( $wgUser->getOption( 'extendwatchlist' )) {
$andLatest='';
$limitWatchlist = intval( $wgUser->getOption( 'wllimit' ) );
if( $wgUser->getOption( 'extendwatchlist' )) {
$andLatest='';
$limitWatchlist = intval( $wgUser->getOption( 'wllimit' ) );
} else {
# Top log Ids for a page are not stored
$andLatest = 'rc_this_oldid=page_latest OR rc_type=' . RC_LOG;
$limitWatchlist = 0;
} else {
# Top log Ids for a page are not stored
$andLatest = 'rc_this_oldid=page_latest OR rc_type=' . RC_LOG;
$limitWatchlist = 0;
}
# Show a message about slave lag, if applicable
}
# Show a message about slave lag, if applicable
- $tables = array( 'recentchanges', 'watchlist', 'page' );
+ $tables = array( 'recentchanges', 'watchlist' );
$fields = array( "{$recentchanges}.*" );
$conds = array();
$join_conds = array(
'watchlist' => array('INNER JOIN',"wl_user='{$uid}' AND wl_namespace=rc_namespace AND wl_title=rc_title"),
$fields = array( "{$recentchanges}.*" );
$conds = array();
$join_conds = array(
'watchlist' => array('INNER JOIN',"wl_user='{$uid}' AND wl_namespace=rc_namespace AND wl_title=rc_title"),
- 'page' => array('LEFT JOIN','rc_cur_id=page_id')
);
$options = array( 'ORDER BY' => 'rc_timestamp DESC' );
if( $wgShowUpdatedMarker ) {
);
$options = array( 'ORDER BY' => 'rc_timestamp DESC' );
if( $wgShowUpdatedMarker ) {
if( $andHideAnons ) $conds[] = $andHideAnons;
if( $andHidePatrolled ) $conds[] = $andHidePatrolled;
if( $nameSpaceClause ) $conds[] = $nameSpaceClause;
if( $andHideAnons ) $conds[] = $andHideAnons;
if( $andHidePatrolled ) $conds[] = $andHidePatrolled;
if( $nameSpaceClause ) $conds[] = $nameSpaceClause;
+
+ if ( $usePage ) {
+ $tables[] = 'page';
+ $join_conds['page'] = array('LEFT JOIN','rc_cur_id=page_id');
+ }
wfRunHooks('SpecialWatchlistQuery', array(&$conds,&$tables,&$join_conds,&$fields) );
wfRunHooks('SpecialWatchlistQuery', array(&$conds,&$tables,&$join_conds,&$fields) );