Do not hardcode square brackets in "rollback link"
authorjdlrobson <jdlrobson@gmail.com>
Tue, 2 Apr 2019 23:33:34 +0000 (16:33 -0700)
committerjdlrobson <jdlrobson@gmail.com>
Thu, 18 Jul 2019 21:30:23 +0000 (14:30 -0700)
Additional change:
* standardize on "optional" lowercase in qqq messages

Bug: T219948
Change-Id: I7d79c0ca534bff7165975943d5fa22dfe0a616db

includes/changes/ChangesList.php
includes/specials/pagers/ContribsPager.php
languages/i18n/en.json
languages/i18n/qqq.json
resources/Resources.php
resources/src/mediawiki.interface.helpers.styles.less
tests/selenium/specs/rollback.js

index 34adea9..ec9a061 100644 (file)
@@ -709,7 +709,8 @@ class ChangesList extends ContextSource {
                                        'actor' => $rc->mAttribs['rc_actor'] ?? null,
                                        'deleted' => $rc->mAttribs['rc_deleted']
                                ] );
-                               $s .= ' ' . Linker::generateRollback( $rev, $this->getContext() );
+                               $s .= ' ' . Linker::generateRollback( $rev, $this->getContext(),
+                                       [ 'noBrackets' ] );
                        }
                }
        }
index d82ba53..139f92e 100644 (file)
@@ -642,7 +642,8 @@ class ContribsPager extends RangeChronologicalPager {
                                        && $page->quickUserCan( 'edit', $user )
                                ) {
                                        $this->preventClickjacking();
-                                       $topmarktext .= ' ' . Linker::generateRollback( $rev, $this->getContext() );
+                                       $topmarktext .= ' ' . Linker::generateRollback( $rev, $this->getContext(),
+                                               [ 'noBrackets' ] );
                                }
                        }
                        # Is there a visible previous revision?
index 7e40594..bf9f4ff 100644 (file)
        "parentheses-start": "(",
        "parentheses-end": ")",
        "brackets": "[$1]",
+       "brackets-start": "[",
+       "brackets-end": "]",
        "quotation-marks": "\"$1\"",
        "imgmultipageprev": "← previous page",
        "imgmultipagenext": "next page →",
index a58010e..67c16cc 100644 (file)
        "parentheses-start": "{{optional}}",
        "parentheses-end": "{{optional}}",
        "brackets": "{{Optional}}\n{{Format|plain}}",
+       "brackets-start": "{{optional}}\n{{Format|plain}}",
+       "brackets-end": "{{optional}}\n{{Format|plain}}",
        "quotation-marks": "Quotation marks, for quoting, sometimes titles etc., depending on the language.\n\nSee: [[w:Quotation mark#Summary table|Non-English usage of quotation marks on Wikipedia]].\n\nParameters:\n* $1 - text to be wrapped in quotation marks",
        "imgmultipageprev": "{{Identical|Previous page}}",
        "imgmultipagenext": "{{Identical|Next page}}",
index 6298086..d4dc663 100644 (file)
@@ -1966,6 +1966,8 @@ return [
                'lessMessages' => [
                        'parentheses-start',
                        'parentheses-end',
+                       'brackets-start',
+                       'brackets-end',
                        'pipe-separator'
                ],
                'skinStyles' => [
index a0e9f15..59eca6b 100644 (file)
@@ -8,6 +8,16 @@
        content: '. .';
 }
 
+.mw-rollback-link {
+       &:before {
+               content: '@{msg-brackets-start}';
+       }
+
+       &:after {
+               content: '@{msg-brackets-end}';
+       }
+}
+
 /* stylelint-disable-next-line selector-class-pattern */
 .comment--without-parentheses,
 .mw-changeslist-links,
        > span:not( :first-child ):before {
                content: '@{msg-pipe-separator}';
        }
+
+       // In pages like history, do not add additional brackets where not needed
+       .mw-rollback-link:before,
+       .mw-rollback-link:after {
+               content: '';
+       }
 }
index daf7112..22c05f4 100644 (file)
@@ -35,7 +35,7 @@ describe( 'Rollback with confirmation', function () {
        it.skip( 'should offer rollback options for admin users', function () {
                assert.strictEqual( HistoryPage.rollback.getText(), 'rollback 1 edit' );
 
-               HistoryPage.rollback.click();
+               HistoryPage.rollbackLink.click();
 
                assert.strictEqual( HistoryPage.rollbackConfirmable.getText(), 'Please confirm:' );
                assert.strictEqual( HistoryPage.rollbackConfirmableYes.getText(), 'Rollback' );