jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/292784 )

Change subject: Migrate abusefilter/modify log
......................................................................


Migrate abusefilter/modify log

Bug: T32553
Change-Id: I7e33d1064329124755c77ffe6efbd5d572f43cb9
---
M extension.json
M i18n/en.json
M i18n/qqq.json
M includes/AbuseFilter.class.php
A includes/AbuseFilterModifyLogFormatter.php
M includes/Views/AbuseFilterViewEdit.php
6 files changed, 60 insertions(+), 41 deletions(-)

Approvals:
  Bartosz Dziewoński: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/extension.json b/extension.json
index cc81984..f8d3abc 100644
--- a/extension.json
+++ b/extension.json
@@ -45,11 +45,8 @@
                "suppress/unhide-afl": "abusefilter-logentry-unsuppress"
        },
        "LogActionsHandlers": {
-               "abusefilter/modify": [
-                       "AbuseFilter",
-                       "modifyActionText"
-               ],
-               "abusefilter/hit": "AbuseLogHitFormatter"
+               "abusefilter/hit": "AbuseLogHitFormatter",
+               "abusefilter/modify": "AbuseFilterModifyLogFormatter"
        },
        "APIModules": {
                "abusefilterchecksyntax": "ApiAbuseFilterCheckSyntax",
@@ -80,6 +77,7 @@
                "AbuseLogPager": "includes/special/SpecialAbuseLog.php",
                "SpecialAbuseFilter": "includes/special/SpecialAbuseFilter.php",
                "AbuseLogHitFormatter": "includes/AbuseLogHitFormatter.php",
+               "AbuseFilterModifyLogFormatter": 
"includes/AbuseFilterModifyLogFormatter.php",
                "AbuseFilterViewList": "includes/Views/AbuseFilterViewList.php",
                "AbuseFilterPager": "includes/Views/AbuseFilterViewList.php",
                "GlobalAbuseFilterPager": 
"includes/Views/AbuseFilterViewList.php",
diff --git a/i18n/en.json b/i18n/en.json
index a967cd3..649fc3e 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -395,7 +395,7 @@
        "abusefilter-topnav-import": "Import filter",
        "abusefilter-log-name": "Abuse filter log",
        "abusefilter-log-header": "This log shows a summary of changes made to 
filters.\nFor full details, see [[Special:AbuseFilter/history|the list]] of 
recent filter changes.",
-       "abusefilter-log-entry-modify": "modified $1 ($2)",
+       "abusefilter-logentry-modify": "$1 {{GENDER:$2|modified}} $4 ($5)",
        "abusefilter-log-noresults": "No results",
        "abusefilter-diff-title": "Differences between versions",
        "abusefilter-diff-item": "Item",
diff --git a/i18n/qqq.json b/i18n/qqq.json
index 7769374..7b8403d 100644
--- a/i18n/qqq.json
+++ b/i18n/qqq.json
@@ -426,7 +426,7 @@
        "abusefilter-topnav-import": "Used as link text in the navigation 
toolbar.\n\nThe link points to [[Special:AbuseLog]].",
        "abusefilter-log-name": "{{doc-logpage}}",
        "abusefilter-log-header": "Used as description on 
[[Special:Log/abusefilter]]",
-       "abusefilter-log-entry-modify": "Parameters:\n* $1 - a link to the 
filter\n* $2 - a link to the filter change details",
+       "abusefilter-logentry-modify": "Parameters:\n* $1 - a link to a user 
page with a user name as link text, followed by a series of related links\n* $2 
- raw username, for GENDER support\n* $3 - (unused)\n* $4 - text 
{{msg-mw|abusefilter-log-detailedentry-local}} linked to the modified filter\n* 
$5 - text {{msg-mw|abusefilter-log-detailslink}} linked to the filter change 
details",
        "abusefilter-log-noresults": "{{Identical|No result}}",
        "abusefilter-diff-title": "Similar to {{msg-mw|Difference}}",
        "abusefilter-diff-item": "{{Identical|Item}}",
diff --git a/includes/AbuseFilter.class.php b/includes/AbuseFilter.class.php
index a9b5f0e..d2114a0 100644
--- a/includes/AbuseFilter.class.php
+++ b/includes/AbuseFilter.class.php
@@ -2301,38 +2301,6 @@
        }
 
        /**
-        * @param $page
-        * @param $type
-        * @param Title $title
-        * @param Skin $sk
-        * @param array $args
-        * @param bool $filterWikilinks
-        * @return String
-        */
-       static function modifyActionText( $page, $type, $title, $sk, $args, 
$filterWikilinks ) {
-               list( $history_id, $filter_id ) = $args;
-               $details_title = SpecialPage::getTitleFor(
-                       'AbuseFilter',
-                       "history/$filter_id/diff/prev/$history_id"
-               );
-               if ( !$filterWikilinks ) { // Plaintext? Bug 43105
-                       return wfMessage(
-                               'abusefilter-log-entry-modify',
-                               '[[' . $title->getFullText() . ']]',
-                               '[[' . $details_title->getFullText() . ']]' 
)->text();
-               }
-
-               $linkRenderer = 
MediaWikiServices::getInstance()->getLinkRenderer();
-               $filter_link = $linkRenderer->makeLink( $title );
-
-               $details_text = wfMessage( 'abusefilter-log-detailslink' 
)->parse();
-               $details_link = $linkRenderer->makeLink( $details_title, new 
HtmlArmor( $details_text ) );
-
-               return wfMessage( 'abusefilter-log-entry-modify' )
-                       ->rawParams( $filter_link, $details_link )->parse();
-       }
-
-       /**
         * @param string $action
         * @param string[] $parameters
         * @return string
diff --git a/includes/AbuseFilterModifyLogFormatter.php 
b/includes/AbuseFilterModifyLogFormatter.php
new file mode 100644
index 0000000..8a148f2
--- /dev/null
+++ b/includes/AbuseFilterModifyLogFormatter.php
@@ -0,0 +1,46 @@
+<?php
+
+class AbuseFilterModifyLogFormatter extends LogFormatter {
+
+       protected function getMessageKey() {
+               return 'abusefilter-logentry-modify';
+       }
+
+       /**
+        * @return array
+        */
+       protected function extractParameters() {
+               $parameters = $this->entry->getParameters();
+               if ( $this->entry->isLegacy() ) {
+                       list( $historyId, $filterId ) = $parameters;
+               } else {
+                       $historyId = $parameters['historyId'];
+                       $filterId = $parameters['newId'];
+               }
+
+               $detailsTitle = SpecialPage::getTitleFor(
+                       'AbuseFilter',
+                       "history/$filterId/diff/prev/$historyId"
+               );
+
+               $params = [];
+               $params[3] = Message::rawParam(
+                       $this->makePageLink(
+                               $this->entry->getTarget(),
+                               [],
+                               $this->msg( 
'abusefilter-log-detailedentry-local' )
+                                       ->numParams( $filterId )->escaped()
+                       )
+               );
+               $params[4] = Message::rawParam(
+                       $this->makePageLink(
+                               $detailsTitle,
+                               [],
+                               $this->msg( 'abusefilter-log-detailslink' 
)->escaped()
+                       )
+               );
+
+               return $params;
+       }
+
+}
diff --git a/includes/Views/AbuseFilterViewEdit.php 
b/includes/Views/AbuseFilterViewEdit.php
index 3d73d4b..d4f6cc1 100644
--- a/includes/Views/AbuseFilterViewEdit.php
+++ b/includes/Views/AbuseFilterViewEdit.php
@@ -327,8 +327,15 @@
                        }
 
                        // Logging
-                       $lp = new LogPage( 'abusefilter' );
-                       $lp->addEntry( 'modify', $this->getTitle( $new_id ), 
'', [ $history_id, $new_id ] );
+                       $logEntry = new ManualLogEntry( 'abusefilter', 'modify' 
);
+                       $logEntry->setPerformer( $user );
+                       $logEntry->setTarget( $this->getTitle( $new_id ) );
+                       $logEntry->setParameters( [
+                               'historyId' => $history_id,
+                               'newId' => $new_id
+                       ] );
+                       $logid = $logEntry->insert();
+                       $logEntry->publish( $logid );
 
                        // Purge the tag list cache so the fetchAllTags hook 
applies tag changes
                        if ( isset( $actions['tag'] ) ) {

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I7e33d1064329124755c77ffe6efbd5d572f43cb9
Gerrit-PatchSet: 26
Gerrit-Project: mediawiki/extensions/AbuseFilter
Gerrit-Branch: master
Gerrit-Owner: Matěj Suchánek <matejsuchane...@gmail.com>
Gerrit-Reviewer: Bartosz Dziewoński <matma....@gmail.com>
Gerrit-Reviewer: Glaisher <glaisher.w...@gmail.com>
Gerrit-Reviewer: Huji <huji.h...@gmail.com>
Gerrit-Reviewer: Jackmcbarn <jackmcb...@gmail.com>
Gerrit-Reviewer: Legoktm <lego...@member.fsf.org>
Gerrit-Reviewer: Matěj Suchánek <matejsuchane...@gmail.com>
Gerrit-Reviewer: Nikerabbit <niklas.laxst...@gmail.com>
Gerrit-Reviewer: Se4598 <se4...@gmx.de>
Gerrit-Reviewer: Siebrand <siebr...@kitano.nl>
Gerrit-Reviewer: Zppix <megadev44s.m...@gmail.com>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to