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

Change subject: Improve navigation on Newsletter special pages
......................................................................


Improve navigation on Newsletter special pages

* Add navigation links to the special pages
* Reworded success message on Special:CreateNewsletter to
   link to Special:ManageNewsletter. Also removed "Good job!"
   as this doesn't feel like a MediaWiki message.
* Return to Main Page link on Special:ManageNewsletter has been
   removed as it does not belong here.

Bug: T110515
Change-Id: Ib6e4dea683fce5ab7c4a7d2f7a080ccb3beb3fb3
---
M i18n/en.json
M i18n/qqq.json
M includes/specials/SpecialNewsletterCreate.php
M includes/specials/SpecialNewsletterManage.php
M includes/specials/SpecialNewsletters.php
5 files changed, 44 insertions(+), 6 deletions(-)

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



diff --git a/i18n/en.json b/i18n/en.json
index cbdfce2..68d316a 100755
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -26,9 +26,12 @@
        "newsletter-announceissueform-addpublisher-section": "Add publishers",
        "newsletter-create-section": "Create newsletter",
        "newsletter-create-submit": "Create newsletter",
-       "newsletter-create-confirmation": "Good job! You just created a new 
newsletter.",
+       "newsletter-create-confirmation": "A new newsletter has been 
successfully created. You can manage newsletters through 
[[Special:ManageNewsletter]].",
        "newsletter-create-mainpage-error": "Unknown Newsletter main page 
entered. Please try again",
        "newsletter-issue-announce-confirmation": "Good job! You just announced 
a new issue of your newsletter.",
+       "newsletter-subtitlelinks-list": "List of newsletters",
+       "newsletter-subtitlelinks-create": "Create a new newsletter",
+       "newsletter-subtitlelinks-manage": "Manage newsletter",
        "newsletters": "Newsletters",
        "newsletter-subscribe-section": "Subscribe newsletters",
        "newsletter-unsubscribe-section": "Unsubscribe newsletters",
diff --git a/i18n/qqq.json b/i18n/qqq.json
index e0c30c3..a65d318 100644
--- a/i18n/qqq.json
+++ b/i18n/qqq.json
@@ -31,6 +31,9 @@
        "newsletter-create-confirmation": "Confirmation message displayed after 
creation of a newsletter",
        "newsletter-create-mainpage-error": "Error message shown on 
[[Special:NewsletterCreate]] if the page entered on main page field does not 
exist.",
        "newsletter-issue-announce-confirmation": "Confirmation message 
displayed after announcing a new issue",
+       "newsletter-subtitlelinks-list": "Label for link to 
[[Special:Newsletters]] shown under the header on Newsletter special 
pages.\n\nSee also:\n* 
{{msg-mw|newsletter-subtitlelinks-create}}\n*{{msg-mw|newsletter-subtitlelinks-manage}}",
+       "newsletter-subtitlelinks-create": "Label for link to 
[[Special:CreateNewsletter]] shown under the header on Newsletter special 
pages.\n\nSee also:\n* 
{{msg-mw|newsletter-subtitlelinks-list}}\n*{{msg-mw|newsletter-subtitlelinks-manage}}",
+       "newsletter-subtitlelinks-manage": "Label for link to 
[[Special:ManageNewsletter]] shown under the header on Newsletter special 
pages.\n\nSee also:\n* 
{{msg-mw|newsletter-subtitlelinks-create}}\n*{{msg-mw|newsletter-subtitlelinks-list}}",
        "newsletters": "Name of special page for user to subscribe to or 
unsubscribe from newsletters\n{{Identical|Newsletter}}",
        "newsletter-subscribe-section": "Section header of HTML form in 
[[Special:Newsletters]] which allows users to subscribe.",
        "newsletter-unsubscribe-section": "Section header of HTML form in 
[[Special:Newsletters]] which allows users to un-subscribe.",
diff --git a/includes/specials/SpecialNewsletterCreate.php 
b/includes/specials/SpecialNewsletterCreate.php
index c7ab161..9f4ff79 100644
--- a/includes/specials/SpecialNewsletterCreate.php
+++ b/includes/specials/SpecialNewsletterCreate.php
@@ -16,6 +16,7 @@
        public function execute( $par ) {
                $this->requireLogin();
                parent::execute( $par );
+               $this->getOutput()->setSubtitle( 
SpecialNewsletters::getSubtitleLinks() );
        }
 
        /**
diff --git a/includes/specials/SpecialNewsletterManage.php 
b/includes/specials/SpecialNewsletterManage.php
index 5ab1169..479d097 100644
--- a/includes/specials/SpecialNewsletterManage.php
+++ b/includes/specials/SpecialNewsletterManage.php
@@ -17,6 +17,7 @@
                $output = $this->getOutput();
                $output->addModules( 'ext.newsletter' );
                $output->addModules( 'ext.newslettermanage' );
+               $output->setSubtitle( SpecialNewsletters::getSubtitleLinks() );
                $this->requireLogin();
                $announceIssueArray = $this->getAnnounceFormFields();
 
@@ -40,7 +41,7 @@
                } else {
                        $output->showErrorPage( 'newslettermanage', 
'newsletter-none-found' );
                }
-
+               $output->returnToMain();
        }
 
        /**
diff --git a/includes/specials/SpecialNewsletters.php 
b/includes/specials/SpecialNewsletters.php
index 9845bdd..64a4616 100644
--- a/includes/specials/SpecialNewsletters.php
+++ b/includes/specials/SpecialNewsletters.php
@@ -37,18 +37,19 @@
        public function execute( $par ) {
                $this->setHeaders();
                $this->requireLogin();
-               $output = $this->getOutput();
-               $output->addModules( 'ext.newsletter' );
+               $out = $this->getOutput();
+               $out->addModules( 'ext.newsletter' );
+               $out->setSubtitle( self::getSubtitleLinks() );
                $pager = new NewsletterTablePager();
 
                if ( $pager->getNumRows() > 0 ) {
-                       $output->addHTML(
+                       $out->addHTML(
                                $pager->getNavigationBar() .
                                $pager->getBody() .
                                $pager->getNavigationBar()
                        );
                } else {
-                       $output->showErrorPage( 'newsletters', 
'newsletter-none-found' );
+                       $out->showErrorPage( 'newsletters', 
'newsletter-none-found' );
                }
        }
 
@@ -77,4 +78,33 @@
                        self::$subscriberCount[$row->newsletter_id] = $result;
                }
        }
+
+       /**
+        * Get links to newsletter special pages shown in the subtitle
+        *
+        * @return string
+        */
+       public static function getSubtitleLinks() {
+               global $wgLang;
+
+               $pages = array(
+                       'list' => 'Newsletters',
+                       'create' => 'NewsletterCreate',
+                       'manage' => 'NewsletterManage',
+               );
+
+               $links = array();
+               foreach ( $pages as $txt => $title ) {
+                       // 'newsletter-subtitlelinks-list'
+                       // 'newsletter-subtitlelinks-create'
+                       // 'newsletter-subtitlelinks-manage'
+                       $links[] = Linker::linkKnown(
+                               SpecialPage::getTitleFor( $title ),
+                               wfMessage( 'newsletter-subtitlelinks-' . $txt 
)->escaped()
+                       );
+               }
+
+               return wfMessage( 'parentheses' )->rawParams( 
$wgLang->pipeList( $links ) )->escaped();
+
+       }
 }

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Ib6e4dea683fce5ab7c4a7d2f7a080ccb3beb3fb3
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/extensions/Newsletter
Gerrit-Branch: master
Gerrit-Owner: Glaisher <glaisher.w...@gmail.com>
Gerrit-Reviewer: 01tonythomas <01tonytho...@gmail.com>
Gerrit-Reviewer: Addshore <addshorew...@gmail.com>
Gerrit-Reviewer: Glaisher <glaisher.w...@gmail.com>
Gerrit-Reviewer: Siebrand <siebr...@kitano.nl>
Gerrit-Reviewer: Tinaj1234 <tinajohnson.1...@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