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