Page MenuHomeWickedGov Phorge

CheckUserHandler.php
No OneTemporary

Size
2 KB
Referenced Files
None
Subscribers
None

CheckUserHandler.php

<?php
namespace MediaWiki\Extension\AbuseFilter\Hooks\Handlers;
use MediaWiki\CheckUser\Hook\CheckUserInsertChangesRowHook;
use MediaWiki\CheckUser\Hook\CheckUserInsertLogEventRowHook;
use MediaWiki\CheckUser\Hook\CheckUserInsertPrivateEventRowHook;
use MediaWiki\Extension\AbuseFilter\FilterUser;
use MediaWiki\RecentChanges\RecentChange;
use MediaWiki\User\UserIdentity;
use MediaWiki\User\UserIdentityUtils;
class CheckUserHandler implements
CheckUserInsertChangesRowHook,
CheckUserInsertPrivateEventRowHook,
CheckUserInsertLogEventRowHook
{
/** @var FilterUser */
private $filterUser;
/** @var UserIdentityUtils */
private $userIdentityUtils;
public function __construct(
FilterUser $filterUser,
UserIdentityUtils $userIdentityUtils
) {
$this->filterUser = $filterUser;
$this->userIdentityUtils = $userIdentityUtils;
}
/**
* Any edits by the filter user should always be marked as by the software
* using IP 127.0.0.1, no XFF and no UA.
*
* @inheritDoc
*/
public function onCheckUserInsertChangesRow(
string &$ip, &$xff, array &$row, UserIdentity $user, ?RecentChange $rc
) {
if (
$this->userIdentityUtils->isNamed( $user ) &&
$this->filterUser->isSameUserAs( $user )
) {
$ip = '127.0.0.1';
$xff = false;
$row['cuc_agent'] = '';
}
}
/**
* Any log actions by the filter user should always be marked as by the software
* using IP 127.0.0.1, no XFF and no UA.
*
* @inheritDoc
*/
public function onCheckUserInsertLogEventRow(
string &$ip, &$xff, array &$row, UserIdentity $user, int $id, ?RecentChange $rc
) {
if (
$this->userIdentityUtils->isNamed( $user ) &&
$this->filterUser->isSameUserAs( $user )
) {
$ip = '127.0.0.1';
$xff = false;
$row['cule_agent'] = '';
}
}
/**
* Any log actions by the filter user should always be marked as by the software
* using IP 127.0.0.1, no XFF and no UA.
*
* @inheritDoc
*/
public function onCheckUserInsertPrivateEventRow(
string &$ip, &$xff, array &$row, UserIdentity $user, ?RecentChange $rc
) {
if (
$this->userIdentityUtils->isNamed( $user ) &&
$this->filterUser->isSameUserAs( $user )
) {
$ip = '127.0.0.1';
$xff = false;
$row['cupe_agent'] = '';
}
}
}

File Metadata

Mime Type
text/x-php
Expires
Aug 16 2026, 07:14 (12 w, 15 h ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
ff/60/9919f192a9e7f34794836e5aeacf
Default Alt Text
CheckUserHandler.php (2 KB)

Event Timeline