父节点
f04f726565
当前提交
232581b907
|
@ -17,7 +17,7 @@
|
|||
"Hooks": {
|
||||
"GetPreferences": "PreferencesHook",
|
||||
"getUserPermissionsErrors": "PermissionsHook",
|
||||
"UserEditCountUpdate": "PermissionsHook"
|
||||
"SaveUserOptions": "PermissionsHook"
|
||||
},
|
||||
"HookHandlers": {
|
||||
"PreferencesHook": {
|
||||
|
|
|
@ -8,8 +8,8 @@ use MediaWiki\User\UserOptionsLookup;
|
|||
use MediaWiki\User\UserIdentity;
|
||||
use MediaWiki\User\Registration\UserRegistrationLookup;
|
||||
use MediaWiki\User\UserGroupManager;
|
||||
use MediaWiki\User\Options\Hook\SaveUserOptionsHook;
|
||||
use MediaWiki\MediaWikiServices;
|
||||
use MediaWiki\Hook\UserEditCountUpdateHook;
|
||||
use RequestContext;
|
||||
use Config;
|
||||
use Title;
|
||||
|
@ -17,7 +17,7 @@ use User;
|
|||
|
||||
class PermissionsHook implements
|
||||
getUserPermissionsErrorsHook,
|
||||
UserEditCountUpdateHook
|
||||
SaveUserOptionsHook
|
||||
{
|
||||
/** @var permissionManager */
|
||||
private $permissionManager;
|
||||
|
@ -159,30 +159,26 @@ class PermissionsHook implements
|
|||
}
|
||||
|
||||
/** @inheritDoc */
|
||||
public function onUserEditCountUpdate($infos): void
|
||||
public function onSaveUserOptions(UserIdentity $user, array &$modifiedOptions, array $originalOptions)
|
||||
{
|
||||
global $wgRNRSConfirmedGroup;
|
||||
|
||||
foreach ($infos as $info) {
|
||||
$user = $info->getUser();
|
||||
$rnrsverified_mode1_2 = $this->checkUserVerifyHash($user);
|
||||
|
||||
$rnrsverified_mode1_2 = $this->checkUserVerifyHash($user);
|
||||
if ($rnrsverified_mode1_2) {
|
||||
$rnrsverified_has_confirmed_group = in_array(
|
||||
$wgRNRSConfirmedGroup,
|
||||
array_merge(
|
||||
$this->userGroupManager->listAllImplicitGroups(),
|
||||
$this->userGroupManager->listAllGroups()
|
||||
)
|
||||
);
|
||||
|
||||
if ($rnrsverified_mode1_2) {
|
||||
$rnrsverified_has_confirmed_group = in_array(
|
||||
$wgRNRSConfirmedGroup,
|
||||
array_merge(
|
||||
$this->userGroupManager->listAllImplicitGroups(),
|
||||
$this->userGroupManager->listAllGroups()
|
||||
)
|
||||
);
|
||||
|
||||
if (
|
||||
$rnrsverified_has_confirmed_group &&
|
||||
!in_array($wgRNRSConfirmedGroup, $this->permissionManager->getUserPermissions($user))
|
||||
) {
|
||||
$this->userGroupManager->addUserToGroup($user, 'rnrsverify-confirmed');
|
||||
}
|
||||
if (
|
||||
$rnrsverified_has_confirmed_group &&
|
||||
!in_array($wgRNRSConfirmedGroup, $this->permissionManager->getUserPermissions($user))
|
||||
) {
|
||||
$this->userGroupManager->addUserToGroup($user, 'rnrsverify-confirmed');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -68,6 +68,10 @@ class PreferencesHook implements GetPreferencesHook
|
|||
'type' => 'api'
|
||||
];
|
||||
|
||||
$RNRSPrefs['rnrsmaintenanceupdated'] = [
|
||||
'type' => 'hidden'
|
||||
];
|
||||
|
||||
$preferences += $RNRSPrefs;
|
||||
}
|
||||
}
|
||||
|
|
正在加载...
在新工单中引用