Legoktm has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/92053


Change subject: Send AbuseFilter hits to CheckUser
......................................................................

Send AbuseFilter hits to CheckUser

Bug: 29583
Change-Id: I175f95b7118dab87de208cfb729e14403a670680
---
M AbuseFilter.class.php
1 file changed, 37 insertions(+), 15 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/AbuseFilter 
refs/changes/53/92053/1

diff --git a/AbuseFilter.class.php b/AbuseFilter.class.php
index 61939ce..64bf953 100644
--- a/AbuseFilter.class.php
+++ b/AbuseFilter.class.php
@@ -983,22 +983,44 @@
                                $data['afl_id'] = $dbw->insertId();
                        }
 
+                       $entry = new ManualLogEntry( 'abusefilter', 'hit' );
+                       // Construct a user object
+                       $user = User::newFromId( $data['afl_user'] );
+                       $entry->setPerformer( $user );
+                       // Set action target
+                       $entry->setTarget( Title::makeTitle( 
$data['afl_namespace'], $data['afl_title'] ) );
+                       // Additional info
+                       $entry->setParameters( array(
+                               'action'  => $data['afl_action'],
+                               'filter'  => $data['afl_filter'],
+                               'actions' => $data['afl_actions'],
+                               'log'     => $data['afl_id'],
+                       ) );
+
+                       // Send data to CheckUser if installed and we
+                       // aren't already sending a notification to 
recentchanges
+                       if ( class_exists( 'CheckUserHooks' )
+                               && strpos( $wgAbuseFilterNotifications, 'rc' ) 
=== false ) {
+                               $formatter = LogFormatter::newFromEntry( $entry 
);
+                               $rc = RecentChange::newLogEntry(
+                                       $entry->getTimestamp(),
+                                       SpecialPage::getTitleFor( 'Log', 
$entry->getType() ),
+                                       $user,
+                                       $formatter->getPlainActionText(),
+                                       ( $user->isAnon() && IP::isIPAddress( 
$user->getName() ) ) ? $user->getName(): '',
+                                       $entry->getType(),
+                                       $entry->getSubtype(),
+                                       $entry->getTarget(),
+                                       $entry->getComment(),
+                                       serialize( 
(array)$entry->getParameters() ),
+                                       0,
+                                       $formatter->getIRCActionComment() // 
Used for IRC feeds
+                               );
+                               CheckUserHooks::updateCheckUserData( $rc );
+                       }
+
                        if ( $wgAbuseFilterNotifications !== false ) {
-                               $entry = new ManualLogEntry( 'abusefilter', 
'hit' );
-                               // Construct a user object
-                               $user = new User();
-                               $user->setId( $data['afl_user'] );
-                               $user->setName( $data['afl_user_text'] );
-                               $entry->setPerformer( $user );
-                               // Set action target
-                               $entry->setTarget( Title::makeTitle( 
$data['afl_namespace'], $data['afl_title'] ) );
-                               // Additional info
-                               $entry->setParameters( array(
-                                       'action'  => $data['afl_action'],
-                                       'filter'  => $data['afl_filter'],
-                                       'actions' => $data['afl_actions'],
-                                       'log'     => $data['afl_id'],
-                               ) );
+
                                if ( self::filterHidden( $data['afl_filter'] ) 
&& !$wgAbuseFilterNotificationsPrivate ) {
                                        continue;
                                }

-- 
To view, visit https://gerrit.wikimedia.org/r/92053
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I175f95b7118dab87de208cfb729e14403a670680
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/AbuseFilter
Gerrit-Branch: master
Gerrit-Owner: Legoktm <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to