jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/384702 )

Change subject: Replace deprecated edit review params
......................................................................


Replace deprecated edit review params

- Replace old options 'hideanons' or 'hideliu' with structured UI equivalent.
- Update tests to take this new behavior into account.

Bug: T176172
Change-Id: I6ad050f7864bf51db05c3db957ac3533358cd3ac
---
M includes/specialpage/ChangesListSpecialPage.php
M tests/phpunit/includes/specialpage/ChangesListSpecialPageTest.php
2 files changed, 53 insertions(+), 4 deletions(-)

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



diff --git a/includes/specialpage/ChangesListSpecialPage.php 
b/includes/specialpage/ChangesListSpecialPage.php
index 3f45250..418ef05 100644
--- a/includes/specialpage/ChangesListSpecialPage.php
+++ b/includes/specialpage/ChangesListSpecialPage.php
@@ -1185,7 +1185,10 @@
         * @param FormOptions $opts
         */
        public function validateOptions( FormOptions $opts ) {
-               if ( $this->fixContradictoryOptions( $opts ) ) {
+               $isContradictory = $this->fixContradictoryOptions( $opts );
+               $isReplaced = $this->replaceOldOptions( $opts );
+
+               if ( $isContradictory || $isReplaced ) {
                        $query = wfArrayToCgi( $this->convertParamsForLink( 
$opts->getChangedValues() ) );
                        $this->getOutput()->redirect( 
$this->getPageTitle()->getCanonicalURL( $query ) );
                }
@@ -1257,6 +1260,34 @@
        }
 
        /**
+        * Replace old options 'hideanons' or 'hideliu' with structured UI 
equivalent
+        *
+        * @param FormOptions $opts
+        * @return bool True if the change was made
+        */
+       public function replaceOldOptions( FormOptions $opts ) {
+               if ( !$this->isStructuredFilterUiEnabled() ) {
+                       return false;
+               }
+
+               // At this point 'hideanons' and 'hideliu' cannot be both true,
+               // because fixBackwardsCompatibilityOptions resets (at least) 
'hideanons' in such case
+               if ( $opts[ 'hideanons' ] ) {
+                       $opts->reset( 'hideanons' );
+                       $opts[ 'userExpLevel' ] = 'registered';
+                       return true;
+               }
+
+               if ( $opts[ 'hideliu' ] ) {
+                       $opts->reset( 'hideliu' );
+                       $opts[ 'userExpLevel' ] = 'unregistered';
+                       return true;
+               }
+
+               return false;
+       }
+
+       /**
         * Convert parameters values from true/false to 1/0
         * so they are not omitted by wfArrayToCgi()
         * Bug 36524
diff --git a/tests/phpunit/includes/specialpage/ChangesListSpecialPageTest.php 
b/tests/phpunit/includes/specialpage/ChangesListSpecialPageTest.php
index 5a0834a..9b81d6d 100644
--- a/tests/phpunit/includes/specialpage/ChangesListSpecialPageTest.php
+++ b/tests/phpunit/includes/specialpage/ChangesListSpecialPageTest.php
@@ -981,15 +981,33 @@
                        [
                                [ 'hideanons' => 1, 'hideliu' => 1, 'hidebots' 
=> 1 ],
                                true,
-                               [ 'hideliu' => 1, 'hidebots' => 1, ],
+                               [ 'userExpLevel' => 'unregistered', 'hidebots' 
=> 1, ],
                        ],
-
                        [
                                [ 'hideanons' => 1, 'hideliu' => 1, 'hidebots' 
=> 0 ],
                                true,
                                [ 'hidebots' => 0, 'hidehumans' => 1 ],
                        ],
-
+                       [
+                               [ 'hideanons' => 1 ],
+                               true,
+                               [ 'userExpLevel' => 'registered' ]
+                       ],
+                       [
+                               [ 'hideliu' => 1 ],
+                               true,
+                               [ 'userExpLevel' => 'unregistered' ]
+                       ],
+                       [
+                               [ 'hideanons' => 1, 'hidebots' => 1 ],
+                               true,
+                               [ 'userExpLevel' => 'registered', 'hidebots' => 
1 ]
+                       ],
+                       [
+                               [ 'hideliu' => 1, 'hidebots' => 0 ],
+                               true,
+                               [ 'userExpLevel' => 'unregistered', 'hidebots' 
=> 0 ]
+                       ],
                        [
                                [ 'hidemyself' => 1, 'hidebyothers' => 1 ],
                                true,

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I6ad050f7864bf51db05c3db957ac3533358cd3ac
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Petar.petkovic <[email protected]>
Gerrit-Reviewer: Catrope <[email protected]>
Gerrit-Reviewer: Sbisson <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to