From: Rob Church Date: Mon, 3 Apr 2006 01:32:35 +0000 (+0000) Subject: Some code cleanup and logic checking X-Git-Tag: 1.6.0~58 X-Git-Url: http://git.cyclocoop.org/%22%20.%20%20%20%24self2%20.%20%20%20%22&var_mode_affiche=boucle?a=commitdiff_plain;h=8bdf02034c58d8bf38269ed774e381d293c07af9;p=lhc%2Fweb%2Fwiklou.git Some code cleanup and logic checking --- diff --git a/includes/SpecialRecentchanges.php b/includes/SpecialRecentchanges.php index bfecf086f5..6a40d0ce98 100644 --- a/includes/SpecialRecentchanges.php +++ b/includes/SpecialRecentchanges.php @@ -134,18 +134,27 @@ function wfSpecialRecentchanges( $par, $specialPage ) { } } - $hidem = $hideminor ? 'AND rc_minor=0' : ''; - $hidem .= $hidebots ? ' AND rc_bot=0' : ''; - $hidem .= ( $hideliu && !$hidemyself ) ? ' AND rc_user=0' : ''; - $hidem .= $hidepatrolled ? ' AND rc_patrolled=0' : ''; - $hidem .= ( $hideanons && !$hideliu ) ? ' AND rc_user <> 0' : ''; - if ( $hidemyself ) { - if ( $wgUser->getID() ) { - $hidem .= ' AND rc_user <> '.$wgUser->getID(); + # It makes no sense to hide both anons and logged-in users + # Where this occurs, force anons to be shown + if( $hideanons && $hideliu ) + $hideanons = false; + + # Form WHERE fragments for all the options + $hidem = $hideminor ? 'AND rc_minor = 0' : ''; + $hidem .= $hidebots ? ' AND rc_bot = 0' : ''; + $hidem .= $hideliu ? ' AND rc_user = 0' : ''; + $hidem .= $hidepatrolled ? ' AND rc_patrolled = 0' : ''; + $hidem .= $hideanons ? ' AND rc_user != 0' : ''; + + if( $hidemyself ) { + if( $wgUser->getID() ) { + $hidem .= ' AND rc_user != ' . $wgUser->getID(); } else { - $hidem .= ' AND rc_user_text<>' . $dbr->addQuotes( $wgUser->getName() ); + $hidem .= ' AND rc_user_text != ' . $dbr->addQuotes( $wgUser->getName() ); } } + + # Namespace filtering $hidem .= is_null( $namespace ) ? '' : ' AND rc_namespace' . ($invert ? '!=' : '=') . $namespace; // This is the big thing!