From: Alexandre Emsenhuber Date: Wed, 9 Apr 2008 09:20:55 +0000 (+0000) Subject: Fix for ehanced recentchanges: when there are log items, show them groupped by log... X-Git-Tag: 1.31.0-rc.0~48496 X-Git-Url: http://git.cyclocoop.org/%22.%24h.%22?a=commitdiff_plain;h=763a619a2188862a460b2a806ee25684786b4991;p=lhc%2Fweb%2Fwiklou.git Fix for ehanced recentchanges: when there are log items, show them groupped by log (same as old behaviour) and not by page. See for example recent changes at mediawiki.org, new user log items aren't anymore groupped and they take too much place. --- diff --git a/includes/ChangesList.php b/includes/ChangesList.php index 2514e6c880..a49f1fc68c 100644 --- a/includes/ChangesList.php +++ b/includes/ChangesList.php @@ -509,6 +509,9 @@ class EnhancedChangesList extends ChangesList { # Use an @ character to prevent collision with page names $this->rc_cache['@@' . ($this->rcMoveIndex++)] = array($rc); } else { + if( $rc_type == RC_LOG ){ + $secureName = SpecialPage::getTitleFor( 'Log', $rc_log_type )->getPrefixedDBkey(); + } if( !isset( $this->rc_cache[$secureName] ) ) { $this->rc_cache[$secureName] = array(); } @@ -597,7 +600,16 @@ class EnhancedChangesList extends ChangesList { $r .= ' '.$block[0]->timestamp.' '; # Article link - if( $namehidden ) { + if( $alllogs ){ + $logtype = $block[0]->mAttribs['rc_log_type']; + if( is_null( $logtype ) ){ + //Old format + $r .= $block[0]->link; + } else { + $logname = LogPage::logName( $logtype ); + $r .= ' (' . $this->skin->makeKnownLinkObj( SpecialPage::getTitleFor( 'Log', $logtype ), $logname ) . ')'; + } + } else if( $namehidden ) { $r .= ' ' . wfMsgHtml('rev-deleted-event') . ''; } else { $r .= $this->maybeWatchedLink( $block[0]->link, $block[0]->watched ); @@ -610,7 +622,7 @@ class EnhancedChangesList extends ChangesList { $n = count($block); static $nchanges = array(); if ( !isset( $nchanges[$n] ) ) { - $nchanges[$n] = wfMsgExt( 'nchanges', array( 'parsemag', 'escape'), $wgLang->formatNum( $n ) ); + $nchanges[$n] = wfMsgExt( 'nchanges', array( 'parsemag', 'escape' ), $wgLang->formatNum( $n ) ); } # Total change link $r .= ' '; @@ -650,7 +662,7 @@ class EnhancedChangesList extends ChangesList { } # History - if( $namehidden ) { + if( $namehidden || $alllogs ) { $r .= '(' . $this->message['history'] . ')'; } else { $r .= '(' . $this->skin->makeKnownLinkObj( $block[0]->getTitle(), @@ -691,16 +703,12 @@ class EnhancedChangesList extends ChangesList { } $r .= $link; - if ( !$rc_log_type ) { + if ( !$rc_type == RC_LOG || $rc_type == RC_NEW ) { $r .= ' ('; $r .= $rcObj->curlink; $r .= $this->message['semicolon-separator'] . ' '; $r .= $rcObj->lastlink; $r .= ')'; - } else { - $logname = LogPage::logName( $rc_log_type ); - $logtitle = Title::newFromText( "Log/$rc_log_type", NS_SPECIAL ); - $r .= '(' . $this->skin->makeKnownLinkObj($logtitle, $logname ) . ')'; } $r .= ' . . ';