Albert221 has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/400451 )
Change subject: Improve visual hierarchy on Newsletter page
......................................................................
Improve visual hierarchy on Newsletter page
Bug: T180982
Change-Id: If9d895cac49c3a245997af370ddaa860a35ece4c
---
M extension.json
M i18n/en.json
M includes/content/NewsletterContent.php
A modules/ext.newsletter.newsletter.styles.css
4 files changed, 35 insertions(+), 48 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Newsletter
refs/changes/51/400451/1
diff --git a/extension.json b/extension.json
index 484af1d..7216f5a 100644
--- a/extension.json
+++ b/extension.json
@@ -121,6 +121,10 @@
"ext.newsletter.newsletters.styles": {
"position": "top",
"styles": "ext.newsletter.newsletters.styles.css"
+ },
+ "ext.newsletter.newsletter.styles": {
+ "position": "top",
+ "styles": "ext.newsletter.newsletter.styles.css"
}
},
"ResourceFileModulePaths": {
diff --git a/i18n/en.json b/i18n/en.json
index 35df6a4..4cad01f 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -40,7 +40,7 @@
"newsletter-subscribe-loginrequired": "Please log in to subscribe to
[[Special:Newsletters|newsletters]].",
"newsletter-notfound": "Newsletter not found",
"newsletter-not-found-id": "A newsletter with this ID does not exist. A
[[Special:Newsletters|list of existing newsletters]] is available.",
- "newsletter-view-mainpage": "Main page:",
+ "newsletter-view-mainpage": "Newsletter main page:",
"newsletter-view-description": "Description:",
"newsletter-view-publishers": "{{PLURAL:$1|Publisher:|Publishers:}}",
"newsletter-view-subscriber-count": "Subscriber count:",
diff --git a/includes/content/NewsletterContent.php
b/includes/content/NewsletterContent.php
index 831b337..54ae631 100644
--- a/includes/content/NewsletterContent.php
+++ b/includes/content/NewsletterContent.php
@@ -142,6 +142,8 @@
$generateHtml,
ParserOutput &$output
) {
+ $output->addModuleStyles( 'ext.newsletter.newsletter.styles' );
+
if ( $generateHtml ) {
$this->newsletter = Newsletter::newFromName(
$title->getText() );
// Make sure things are decoded at this point
@@ -152,18 +154,20 @@
$mainTitle = $this->mainPage;
$fields = [
- 'mainpage' => [
- 'type' => 'info',
- 'label-message' =>
'newsletter-view-mainpage',
- 'default' =>
MediaWikiServices::getInstance()->getLinkRenderer()->makeLink( $mainTitle ),
- 'raw' => true,
- ],
'description' => [
'type' => 'info',
'label-message' =>
'newsletter-view-description',
'default' => $this->description,
+ 'cssclass' =>
'newsletter-headered-element',
'rows' => 6,
'readonly' => true,
+ ],
+ 'mainpage' => [
+ 'type' => 'info',
+ 'label-message' =>
'newsletter-view-mainpage',
+ 'default' =>
MediaWikiServices::getInstance()->getLinkRenderer()->makeLink( $mainTitle ),
+ 'cssclass' =>
'newsletter-headered-element',
+ 'raw' => true,
],
'publishers' => [
'type' => 'info',
@@ -171,12 +175,14 @@
$options->getUserLangObj() )
->numParams( count(
$this->publishers ) )
->text(),
+ 'cssclass' =>
'newsletter-headered-element',
],
'subscribers' => [
'type' => 'info',
'label-message' =>
'newsletter-view-subscriber-count',
'default' => !$this->newsletter ? 0 :
$options->getUserLangObj()->formatNum(
$this->newsletter->getSubscribersCount() ),
+ 'cssclass' =>
'newsletter-headered-element',
],
];
$publishersArray = $this->getPublishersFromJSONData(
$this->publishers );
@@ -213,6 +219,7 @@
->inLanguage(
$options->getUserLangObj() )
->numParams( $logCount )
->text(),
+ 'cssclass' =>
'newsletter-headered-element',
];
}
}
@@ -376,49 +383,13 @@
)->text()
);
- $user = $options->getUser() ? : null;
- $actions = [];
-
- if ( !$user || !$this->newsletter->isSubscribed( $user ) ) {
- $actions[] = self::NEWSLETTER_SUBSCRIBE;
- } elseif ( $this->newsletter->isSubscribed( $user ) ) {
- $actions[] = self::NEWSLETTER_UNSUBSCRIBE;
- }
- if ( $user && $user->isLoggedIn() ) {
- if ( $this->newsletter->isPublisher( $user ) ) {
- $actions[] = self::NEWSLETTER_ANNOUNCE;
- }
- if ( $this->newsletter->canManage( $user ) ) {
- $actions[] = self::NEWSLETTER_MANAGE;
- $actions[] = self::NEWSLETTER_SUBSCRIBERS;
- }
- }
- $links = [];
- foreach ( $actions as $action ) {
- $title = SpecialPage::getTitleFor( 'Newsletter',
$this->newsletter->getId() . '/' .
- $action );
-
- // Messages used here:
'newsletter-subtitlelinks-announce',
- // 'newsletter-subtitlelinks-subscribe',
'newsletter-subtitlelinks-unsubscribe'
- $msg = wfMessage( 'newsletter-subtitlelinks-' . $action
)->text();
- $link = $linkRenderer->makeKnownLink( $title, $msg );
-
- if ( $action == self::NEWSLETTER_MANAGE ) {
- $title = Title::makeTitleSafe( NS_NEWSLETTER,
$this->newsletter->getName() );
- $msg = wfMessage( 'newsletter-subtitlelinks-' .
$action )->text();
- $link = $linkRenderer->makeKnownLink( $title,
$msg, [], [ 'action' => 'edit' ] );
- }
- $links[] = $link;
- }
- $newsletterLinks = Linker::makeSelfLinkObj(
- SpecialPage::getTitleFor( 'Newsletter',
$this->newsletter->getId() ),
- $this->getEscapedName()
- ) . ' ' . wfMessage( 'parentheses' )->rawParams(
- $options->getUserLangObj()->pipeList( $links )
- )->escaped();
+ $newsletterLink = Linker::makeSelfLinkObj(
+ SpecialPage::getTitleFor( 'Newsletter',
$this->newsletter->getId() ),
+ $this->getEscapedName()
+ );
$wgOut->setSubtitle(
- $options->getUserLangObj()->pipeList( [ $listLink,
$newsletterLinks ] )
+ $options->getUserLangObj()->pipeList( [ $listLink,
$newsletterLink ] )
);
}
diff --git a/modules/ext.newsletter.newsletter.styles.css
b/modules/ext.newsletter.newsletter.styles.css
new file mode 100644
index 0000000..b93e2fd
--- /dev/null
+++ b/modules/ext.newsletter.newsletter.styles.css
@@ -0,0 +1,12 @@
+/**
+ * Stylesheet used on Newsletter:*.
+ */
+
+/* Selector is so long so that its specificity is big enough so I don't have
to use `!important`. */
+.oo-ui-fieldLayout.oo-ui-labelElement.newsletter-headered-element >
.oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label
{
+ display: block;
+ margin-top: 0.5em;
+ font-weight: bold;
+ font-size: 1.2em;
+ line-height: 1.6;
+}
--
To view, visit https://gerrit.wikimedia.org/r/400451
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: If9d895cac49c3a245997af370ddaa860a35ece4c
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Newsletter
Gerrit-Branch: master
Gerrit-Owner: Albert221 <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits