[MediaWiki-commits] [Gerrit] mediawiki...Newsletter[master]: Use UsersMultiselectWidget to manage publishers list
jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/331214 ) Change subject: Use UsersMultiselectWidget to manage publishers list .. Use UsersMultiselectWidget to manage publishers list Bug: T131492 Change-Id: I002bd1534ad7c58f627c03711cfb189889b03cdf --- M i18n/en.json M i18n/qqq.json M includes/NewsletterEditPage.php 3 files changed, 6 insertions(+), 19 deletions(-) Approvals: Florianschmidtwelzow: Looks good to me, approved jenkins-bot: Verified diff --git a/i18n/en.json b/i18n/en.json index d738e4b..d10927b 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -57,14 +57,13 @@ "newsletter-announce-nonexistent-page": "The provided issue page does not exist. Please enter an existing page.", "newsletter-announce-failure": "A new issue could not be announced. Please try again.", "newsletter-manage": "Manage \"$1\" newsletter", - "newsletter-manage-publishers": "Publishers (separated by newline):", + "newsletter-manage-publishers": "Publishers:", "newsletter-manage-name": "Newsletter name:", "newsletter-manage-title": "Title of Main Page", "newsletter-manage-description": "Description:", "newsletter-manage-text": "You can add or remove publishers for \"$1\" by modifying the list below.", "newsletter-managenewsletter-button": "Submit", "newsletter-manage-no-publishers": "Are you sure that you want to remove all the publishers from this newsletter?", - "newsletter-manage-invalid-publisher": "\"$1\" is not a valid user. Please make sure that you entered valid input and try again.", "newsletter-manage-remove-self-publisher": "Are you sure that you want to remove yourself from the publishers?", "newsletter-manage-newsletter-success": "The newsletter have been modified.", "newsletter-manage-newsletter-nochanges": "No changes were made to the existing newsletter.", diff --git a/i18n/qqq.json b/i18n/qqq.json index 5923a9c..0df2d1b 100644 --- a/i18n/qqq.json +++ b/i18n/qqq.json @@ -71,7 +71,6 @@ "newsletter-manage-text": "Introductory message shown on Special:Newsletter's manage form. $1 - Name of the newsletter", "newsletter-managenewsletter-button": "Label of submit button on Special:Newsletter's manage form\n{{Identical|Submit}}", "newsletter-manage-no-publishers": "Confirmation message shown on Special:Newsletter's manage form if the user attempted to remove all the publishers.", - "newsletter-manage-invalid-publisher": "Error message shown on Special:Newsletter's manage form if an invalid user was entered in the input. $1 - Name of invalid user", "newsletter-manage-remove-self-publisher": "Confirmation message shown on Special:Newsletter's manage form if the user removes themselves from the publishers' list.", "newsletter-manage-newsletter-success": "Success message shown on Special:Newsletter's manage form when the publishers have been modfied.", "newsletter-manage-newsletter-nochanges": "Message shown on Special:Newsletter if no changes were made to the existing publishers' list.", diff --git a/includes/NewsletterEditPage.php b/includes/NewsletterEditPage.php index 569bb07..b5ac4c4 100644 --- a/includes/NewsletterEditPage.php +++ b/includes/NewsletterEditPage.php @@ -100,10 +100,10 @@ 'required' => true, ); $fields['Publishers'] = array( - 'type' => 'textarea', + 'type' => 'usersmultiselect', 'label-message' => 'newsletter-manage-publishers', - 'rows' => 10, - 'default' => implode( "\n", $publishersNames ), + 'default' => $publishersNames, + 'exists' => true, ); $fields['Summary'] = array( 'type' => 'text', @@ -326,25 +326,14 @@ $modified = true; } - $publisherNames = explode( "\n", $data['Publishers'] ); - // Strip whitespace, then remove blank lines and duplicates - $publisherNames = array_unique( array_filter( array_map( 'trim', $publisherNames ) ) ); - + $publisherNames = $data['Publishers']; // Ask for confirmation before removing all the publishers if ( !$confirmed && count( $publisherNames ) === 0 ) { return Status::newFatal( 'newsletter-manage-no-publishers' ); } /** @var User[] $newPublishers */ - $newPublishers = array(); - foreach ( $publisherNames as $publisherName ) { - $user = User::newFromName( $publisherName ); - if ( !$user || !$user->getId() ) { -
[MediaWiki-commits] [Gerrit] mediawiki...Newsletter[master]: Use UsersMultiselectWidget to manage publishers list
Phantom42 has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/331214 ) Change subject: Use UsersMultiselectWidget to manage publishers list .. Use UsersMultiselectWidget to manage publishers list Bug: T131492 Change-Id: I002bd1534ad7c58f627c03711cfb189889b03cdf --- M i18n/en.json M i18n/qqq.json M includes/NewsletterEditPage.php 3 files changed, 6 insertions(+), 19 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Newsletter refs/changes/14/331214/1 diff --git a/i18n/en.json b/i18n/en.json index d738e4b..d10927b 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -57,14 +57,13 @@ "newsletter-announce-nonexistent-page": "The provided issue page does not exist. Please enter an existing page.", "newsletter-announce-failure": "A new issue could not be announced. Please try again.", "newsletter-manage": "Manage \"$1\" newsletter", - "newsletter-manage-publishers": "Publishers (separated by newline):", + "newsletter-manage-publishers": "Publishers:", "newsletter-manage-name": "Newsletter name:", "newsletter-manage-title": "Title of Main Page", "newsletter-manage-description": "Description:", "newsletter-manage-text": "You can add or remove publishers for \"$1\" by modifying the list below.", "newsletter-managenewsletter-button": "Submit", "newsletter-manage-no-publishers": "Are you sure that you want to remove all the publishers from this newsletter?", - "newsletter-manage-invalid-publisher": "\"$1\" is not a valid user. Please make sure that you entered valid input and try again.", "newsletter-manage-remove-self-publisher": "Are you sure that you want to remove yourself from the publishers?", "newsletter-manage-newsletter-success": "The newsletter have been modified.", "newsletter-manage-newsletter-nochanges": "No changes were made to the existing newsletter.", diff --git a/i18n/qqq.json b/i18n/qqq.json index 5923a9c..0df2d1b 100644 --- a/i18n/qqq.json +++ b/i18n/qqq.json @@ -71,7 +71,6 @@ "newsletter-manage-text": "Introductory message shown on Special:Newsletter's manage form. $1 - Name of the newsletter", "newsletter-managenewsletter-button": "Label of submit button on Special:Newsletter's manage form\n{{Identical|Submit}}", "newsletter-manage-no-publishers": "Confirmation message shown on Special:Newsletter's manage form if the user attempted to remove all the publishers.", - "newsletter-manage-invalid-publisher": "Error message shown on Special:Newsletter's manage form if an invalid user was entered in the input. $1 - Name of invalid user", "newsletter-manage-remove-self-publisher": "Confirmation message shown on Special:Newsletter's manage form if the user removes themselves from the publishers' list.", "newsletter-manage-newsletter-success": "Success message shown on Special:Newsletter's manage form when the publishers have been modfied.", "newsletter-manage-newsletter-nochanges": "Message shown on Special:Newsletter if no changes were made to the existing publishers' list.", diff --git a/includes/NewsletterEditPage.php b/includes/NewsletterEditPage.php index 569bb07..7a0ad72 100644 --- a/includes/NewsletterEditPage.php +++ b/includes/NewsletterEditPage.php @@ -100,10 +100,10 @@ 'required' => true, ); $fields['Publishers'] = array( - 'type' => 'textarea', + 'type' => 'usersmultiselect', 'label-message' => 'newsletter-manage-publishers', - 'rows' => 10, - 'default' => implode( "\n", $publishersNames ), + 'users' => $publishersNames, + 'exists' => true, ); $fields['Summary'] = array( 'type' => 'text', @@ -326,25 +326,14 @@ $modified = true; } - $publisherNames = explode( "\n", $data['Publishers'] ); - // Strip whitespace, then remove blank lines and duplicates - $publisherNames = array_unique( array_filter( array_map( 'trim', $publisherNames ) ) ); - + $publisherNames = $data['Publishers']; // Ask for confirmation before removing all the publishers if ( !$confirmed && count( $publisherNames ) === 0 ) { return Status::newFatal( 'newsletter-manage-no-publishers' ); } /** @var User[] $newPublishers */ - $newPublishers = array(); - foreach ( $publisherNames as $publisherName ) { - $user = User::newFromName( $publisherName ); - if ( !$user || !$user->getId() ) { -