Follow-up to Icf78cce3f3e362677d10897b8d1103b3df91fa08.
Change-Id: I94102ceb00398940965280d8742a2747631dcc87
wfMemcKey( 'SiteStats', 'groupcounts', $group ),
$cache::TTL_HOUR,
function ( $oldValue, &$ttl, array &$setOpts ) use ( $group ) {
+ global $wgDisableUserGroupExpiry;
$dbr = wfGetDB( DB_REPLICA );
$setOpts += Database::getCacheSetOptions( $dbr );
'COUNT(*)',
[
'ug_group' => $group,
- 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() )
+ $wgDisableUserGroupExpiry ?
+ '1' :
+ 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() )
],
__METHOD__
);
[
'ug_group' => User::getGroupsWithPermission( 'bot' ),
'ug_user = img_user',
- 'ug_expiry IS NULL OR ug_expiry >=' . $db->addQuotes( $db->timestamp() )
+ $this->getConfig()->get( 'DisableUserGroupExpiry' ) ?
+ '1' :
+ 'ug_expiry IS NULL OR ug_expiry >= ' . $db->addQuotes( $db->timestamp() )
]
] ] );
$groupCond = ( $params['filterbots'] == 'nobots' ? 'NULL' : 'NOT NULL' );
[
'ug1.ug_user=user_id',
'ug1.ug_group' => $params['group'],
- 'ug1.ug_expiry IS NULL OR ug1.ug_expiry >= ' . $db->addQuotes( $db->timestamp() )
+ $this->getConfig()->get( 'DisableUserGroupExpiry' ) ?
+ '1' :
+ 'ug1.ug_expiry IS NULL OR ug1.ug_expiry >= ' . $db->addQuotes( $db->timestamp() )
]
]
] );
[
'ug_user=rev_user',
'ug_group' => $limitGroups,
- 'ug_expiry IS NULL OR ug_expiry >= ' . $db->addQuotes( $db->timestamp() )
+ $this->getConfig()->get( 'DisableUserGroupExpiry' ) ?
+ '1' :
+ 'ug_expiry IS NULL OR ug_expiry >= ' . $db->addQuotes( $db->timestamp() )
]
] ] );
$this->addWhereIf( 'ug_user IS NULL', $excludeGroups );
$this->addJoinConds( [ 'user_groups' => [ 'INNER JOIN', 'ug_user=user_id' ] ] );
$this->addFields( [ 'user_name' ] );
$this->addFields( UserGroupMembership::selectFields() );
- $this->addWhere( 'ug_expiry IS NULL OR ug_expiry >= ' .
- $db->addQuotes( $db->timestamp() ) );
+ if ( !$this->getConfig()->get( 'DisableUserGroupExpiry' ) ) {
+ $this->addWhere( 'ug_expiry IS NULL OR ug_expiry >= ' .
+ $db->addQuotes( $db->timestamp() ) );
+ }
$userGroupsRes = $this->select( __METHOD__ );
foreach ( $userGroupsRes as $row ) {
$tables[] = 'user_groups';
$conds[] = 'ug_user = user_id';
$conds['ug_group'] = $this->groups;
- $conds[] = 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() );
+ if ( !$this->getConfig()->get( 'DisableUserGroupExpiry' ) ) {
+ $conds[] = 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() );
+ }
}
if ( $this->excludegroups !== [] ) {
foreach ( $this->excludegroups as $group ) {
'LEFT JOIN', [
'ug_user = rev_user',
'ug_group' => $groupsWithBotPermission,
- 'ug_expiry IS NULL OR ug_expiry >= ' . $this->mDb->addQuotes( $this->mDb->timestamp() )
+ $this->getConfig()->get( 'DisableUserGroupExpiry' ) ?
+ '1' :
+ 'ug_expiry IS NULL OR ug_expiry >= ' .
+ $this->mDb->addQuotes( $this->mDb->timestamp() )
]
];
}
[
'ug_group' => $groupsWithBotPermission,
'ug_user = img_user',
- 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() )
+ $this->getConfig()->get( 'DisableUserGroupExpiry' ) ?
+ '1' :
+ 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() )
]
];
}
if ( $this->requestedGroup != '' ) {
$conds['ug_group'] = $this->requestedGroup;
- $conds[] = 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() );
+ if ( !$this->getConfig()->get( 'DisableUserGroupExpiry' ) ) {
+ $conds[] = 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() );
+ }
}
if ( $this->requestedUser != '' ) {