jenkins-bot has submitted this change and it was merged.

Change subject: Add issue title to 'issue-added' log entries and add 
announcements log extract to Special:Newsletter
......................................................................


Add issue title to 'issue-added' log entries and add announcements log extract 
to Special:Newsletter

I don't know how to add $6 in log message for older entries (because we don't 
have any data about
the issue title for old entries) but this is probably okay since it's not 
deployed yet.

Bug: T131682
Depends-On: I87a6403eb0639c4d93e49d6946b85650f478107b
Change-Id: Icae0829f605c32d69b9eb949ca45a58ca304986c
---
M i18n/en.json
M i18n/qqq.json
M includes/NewsletterStore.php
M includes/logging/NewsletterLogFormatter.php
M includes/logging/NewsletterLogger.php
M includes/specials/SpecialNewsletter.php
6 files changed, 36 insertions(+), 5 deletions(-)

Approvals:
  01tonythomas: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/i18n/en.json b/i18n/en.json
index e1eab6f..f089464 100755
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -40,6 +40,7 @@
        "newsletter-view-publishers": "{{PLURAL:$1|Publisher:|Publishers:}}",
        "newsletter-view-subscriber-count": "Subscriber count:",
        "newsletter-view-no-publishers": "No publishers.",
+       "newsletter-view-issues-log": "Newsletter issue 
{{PLURAL:$1|announcement|announcements}}:",
        "newsletter-delete-button": "Delete",
        "newsletter-manage-button": "Manage",
        "newsletter-unsubscribe-button": "Unsubscribe",
@@ -146,7 +147,7 @@
        "logentry-newsletter-publisher-removed": "$1 {{GENDER:$2|removed}} 
{{GENDER:$6|$3}} as a publisher on newsletter $4",
        "logentry-newsletter-newsletter-added": "$1 {{GENDER:$2|created}} 
newsletter $4",
        "logentry-newsletter-newsletter-removed": "$1 {{GENDER:$2|deleted}} 
newsletter $4",
-       "logentry-newsletter-issue-added": "$1 {{GENDER:$2|published}} a new 
issue of newsletter $4",
+       "logentry-newsletter-issue-added": "$1 {{GENDER:$2|published}} a new 
issue of $4 newsletter at $6",
        "log-action-filter-newsletter": "Type of action:",
        "log-action-filter-newsletter-publisher-added": "Publisher addition",
        "log-action-filter-newsletter-publisher-removed": "Publisher removal",
diff --git a/i18n/qqq.json b/i18n/qqq.json
index 8a62fe1..e47a002 100644
--- a/i18n/qqq.json
+++ b/i18n/qqq.json
@@ -46,6 +46,7 @@
        "newsletter-view-publishers": "Label for newsletter's publisher(s) 
field. Shown on Special:Newsletter/<id>.\n\nParameters:\n* $1 - Number of 
publishers for the newsletter, for use with PLURAL.",
        "newsletter-view-subscriber-count": "Label for newsletter's subscriber 
count field. Shown on Special:Newsletter/<id>.",
        "newsletter-view-no-publishers": "Message shown on Special:Newsletter 
if there are no publishers for the newsletter.",
+       "newsletter-view-issues-log": "Label shown on Special:Newsletter above 
a list of newsletter announcements. $1 - number of announcements for PLURAL",
        "newsletter-delete-button": "Label for \"Delete\" button shown on 
Special:Newsletter/<id>. Links to Special:Newsletter/<id>/delete. Only shown if 
the current user has permissions to delete the 
newsletter.\n{{Identical|Delete}}",
        "newsletter-manage-button": "Label for \"Manage\" button shown on 
Special:Newsletter/<id>. Links to Special:Newsletter/<id>/manage. Only shown if 
the current user has permissions to manage the newsletter. Actions include 
adding publishers, removing publishers by editing the textbox.",
        "newsletter-unsubscribe-button": "Label for \"Unsubscribe\" button 
shown on Special:Newsletter/<id>. Links to Special:Newsletter/<id>/unsubscribe. 
Shown only for logged-in users and if the user is currently subscribed to the 
newsletter.\n{{Identical|Unsubscribe}}",
@@ -152,7 +153,7 @@
        "logentry-newsletter-publisher-removed": "{{logentry}}\n\nAdditional 
parameters:\n* $4 - the newsletter affected by the action\n* $6 - unused, or 
the full user name that was removed, whose display name is on $3 (to be used 
with GENDER)",
        "logentry-newsletter-newsletter-added": "{{logentry}}\n\nAdditional 
parameters:\n* $4 - the newsletter affected by the action",
        "logentry-newsletter-newsletter-removed": "{{logentry}}\n\nAdditional 
parameters:\n* $4 - the newsletter affected by the action",
-       "logentry-newsletter-issue-added": "{{logentry}}\n\nAdditional 
parameters:\n* $4 - the newsletter affected by the action",
+       "logentry-newsletter-issue-added": "{{logentry}}\n\nAdditional 
parameters:\n* $4 - the newsletter affected by the action\n* $5 - link to the 
issue page",
        "log-action-filter-newsletter": 
"{{doc-log-action-filter-type|newsletter}}",
        "log-action-filter-newsletter-publisher-added": 
"{{doc-log-action-filter-action|newsletter|publisher-added}}",
        "log-action-filter-newsletter-publisher-removed": 
"{{doc-log-action-filter-action|newsletter|publisher-removed}}",
diff --git a/includes/NewsletterStore.php b/includes/NewsletterStore.php
index d0c4c41..1605fb8 100644
--- a/includes/NewsletterStore.php
+++ b/includes/NewsletterStore.php
@@ -231,7 +231,7 @@
        public function addNewsletterIssue( Newsletter $newsletter, Title 
$title, User $publisher, $summary ) {
                $success = $this->db->addNewsletterIssue( $newsletter, $title, 
$publisher );
                if ( $success ) {
-                       $this->logger->logNewIssue( $publisher, $newsletter, 
$success, $summary );
+                       $this->logger->logNewIssue( $publisher, $newsletter, 
$title, $success, $summary );
                }
                return (bool)$success;
        }
diff --git a/includes/logging/NewsletterLogFormatter.php 
b/includes/logging/NewsletterLogFormatter.php
index 7274f61..100cc52 100644
--- a/includes/logging/NewsletterLogFormatter.php
+++ b/includes/logging/NewsletterLogFormatter.php
@@ -22,6 +22,10 @@
                        $params[6] = $user->getName();
                }
 
+               if ( $this->entry->getSubtype() === 'issue-added' && isset( 
$params[5] ) ) {
+                       $params[5] = Message::rawParam( $this->makePageLink( 
Title::newFromText( $params[5] ) ) );
+               }
+
                ksort($params);
                $this->parsedParameters = $params;
                return $params;
diff --git a/includes/logging/NewsletterLogger.php 
b/includes/logging/NewsletterLogger.php
index 5a385d8..5a798fb 100644
--- a/includes/logging/NewsletterLogger.php
+++ b/includes/logging/NewsletterLogger.php
@@ -52,13 +52,14 @@
                $log->publish( $log->insert() );
        }
 
-       public function logNewIssue( User $publisher, Newsletter $newsletter, 
$issueId, $comment ) {
+       public function logNewIssue( User $publisher, Newsletter $newsletter, 
Title $issueTitle, $issueId, $comment ) {
                $log = new ManualLogEntry( 'newsletter', 'issue-added' );
                $log->setPerformer( $publisher );
                $log->setTarget( SpecialPage::getTitleFor( 'Newsletter', 
$newsletter->getId() ) );
                $log->setParameters( [
                        '4:newsletter-link:nl_id' => 
"{$newsletter->getId()}:{$newsletter->getName()}",
-                       '5::nli_issue_id' => $issueId
+                       '5::nli_issue_id' => $issueId,
+                       '6::nl_issue_title' => $issueTitle->getPrefixedText(),
                ] );
                $log->setComment( $comment );
                $log->setRelations( [ 'nl_id' => $newsletter->getId() ] );
diff --git a/includes/specials/SpecialNewsletter.php 
b/includes/specials/SpecialNewsletter.php
index 3ad58e6..345773c 100644
--- a/includes/specials/SpecialNewsletter.php
+++ b/includes/specials/SpecialNewsletter.php
@@ -240,6 +240,30 @@
                        $fields['publishers']['default'] = $this->msg( 
'newsletter-view-no-publishers' )->escaped();
                }
 
+               // Show the 10 most recent issues if there have been 
announcements
+               $logs = '';
+               $logCount = LogEventsList::showLogExtract(
+                       $logs, // by reference
+                       'newsletter',
+                       $this->getPageTitle( $this->newsletter->getId() ),
+                       '',
+                       array(
+                               'lim' => 10,
+                               'showIfEmpty' => false,
+                               'conds' => array( 'log_action' => 'issue-added' 
),
+                               'extraUrlParams' => array( 'subtype' => 
'issue-added' ),
+                       )
+               );
+
+               if ( $logCount !== 0 ) {
+                       $fields['issues'] = array(
+                               'type' => 'info',
+                               'raw' => true,
+                               'default' => $logs,
+                               'label' => $this->msg( 
'newsletter-view-issues-log' )->numParams( $logCount )->escaped(),
+                       );
+               }
+
                $form = $this->getHTMLForm(
                        $fields,
                        function() {

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Icae0829f605c32d69b9eb949ca45a58ca304986c
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/Newsletter
Gerrit-Branch: master
Gerrit-Owner: Glaisher <[email protected]>
Gerrit-Reviewer: 01tonythomas <[email protected]>
Gerrit-Reviewer: Addshore <[email protected]>
Gerrit-Reviewer: Glaisher <[email protected]>
Gerrit-Reviewer: Siebrand <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

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

Reply via email to