* @ingroup Pager
*/
use MediaWiki\MediaWikiServices;
+use Wikimedia\Rdbms\ResultWrapper;
+use Wikimedia\Rdbms\FakeResultWrapper;
+use Wikimedia\Rdbms\IDatabase;
class ContribsPager extends ReverseChronologicalPager {
$user = $this->getUser();
$conds = array_merge( $userCond, $this->getNamespaceCond() );
- // Paranoia: avoid brute force searches (bug 17342)
+ // Paranoia: avoid brute force searches (T19342)
if ( !$user->isAllowed( 'deletedhistory' ) ) {
$conds[] = $this->mDb->bitAnd( 'rev_deleted', Revision::DELETED_USER ) . ' = 0';
} elseif ( !$user->isAllowedAny( 'suppressrevision', 'viewsuppressed' ) ) {
$this->tagFilter
);
- Hooks::run( 'ContribsPager::getQueryInfo', [ &$this, &$queryInfo ] );
+ // Avoid PHP 7.1 warning from passing $this by reference
+ $pager = $this;
+ Hooks::run( 'ContribsPager::getQueryInfo', [ &$pager, &$queryInfo ] );
return $queryInfo;
}
$join_conds['user_groups'] = [
'LEFT JOIN', [
'ug_user = rev_user',
- 'ug_group' => $groupsWithBotPermission
+ 'ug_group' => $groupsWithBotPermission,
+ 'ug_expiry IS NULL OR ug_expiry >= ' .
+ $this->mDb->addQuotes( $this->mDb->timestamp() )
]
];
}
$difftext = $linkRenderer->makeKnownLink(
$page,
new HtmlArmor( $this->messages['diff'] ),
- [],
+ [ 'class' => 'mw-changeslist-diff' ],
[
'diff' => 'prev',
'oldid' => $row->rev_id
$histlink = $linkRenderer->makeKnownLink(
$page,
new HtmlArmor( $this->messages['hist'] ),
- [],
+ [ 'class' => 'mw-changeslist-history' ],
[ 'action' => 'history' ]
);
if ( $row->rev_parent_id === null ) {
// For some reason rev_parent_id isn't populated for this row.
- // Its rumoured this is true on wikipedia for some revisions (bug 34922).
+ // Its rumoured this is true on wikipedia for some revisions (T36922).
// Next best thing is to have the total number of bytes.
$chardiff = ' <span class="mw-changeslist-separator">. .</span> ';
$chardiff .= Linker::formatRevisionSize( $row->rev_len );