[MediaWiki-commits] [Gerrit] mediawiki/core[master]: ChangesListSpecialPage: Add urlversion and make urlversion=2...
jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/358157 ) Change subject: ChangesListSpecialPage: Add urlversion and make urlversion=2 ignore defaults .. ChangesListSpecialPage: Add urlversion and make urlversion=2 ignore defaults This allows us to build reliable URLs that will be consistent over time and between users (because the defaults depend on preferences, extension presence, etC) by using urlversion=2 and specifying the state of each filter relative to the empty state (i.e. nothing enabled). urlversion defaults to 1, and urlversion=1 maintains the current behavior where the parameters are interpreted relative to the user's default state. Bug: T166906 Change-Id: Iaf33c14e3f909092d96453e78016814aa417673a --- M includes/specialpage/ChangesListSpecialPage.php 1 file changed, 5 insertions(+), 2 deletions(-) Approvals: jenkins-bot: Verified Mooeypoo: Looks good to me, approved diff --git a/includes/specialpage/ChangesListSpecialPage.php b/includes/specialpage/ChangesListSpecialPage.php index 09ed3c4..1b561ef 100644 --- a/includes/specialpage/ChangesListSpecialPage.php +++ b/includes/specialpage/ChangesListSpecialPage.php @@ -791,16 +791,18 @@ $config = $this->getConfig(); $opts = new FormOptions(); $structuredUI = $this->getUser()->getOption( 'rcenhancedfilters' ); + // If urlversion=2 is set, ignore the filter defaults and set them all to false/empty + $useDefaults = $this->getRequest()->getInt( 'urlversion' ) !== 2; // Add all filters foreach ( $this->filterGroups as $filterGroup ) { // URL parameters can be per-group, like 'userExpLevel', // or per-filter, like 'hideminor'. if ( $filterGroup->isPerGroupRequestParameter() ) { - $opts->add( $filterGroup->getName(), $filterGroup->getDefault() ); + $opts->add( $filterGroup->getName(), $useDefaults ? $filterGroup->getDefault() : '' ); } else { foreach ( $filterGroup->getFilters() as $filter ) { - $opts->add( $filter->getName(), $filter->getDefault( $structuredUI ) ); + $opts->add( $filter->getName(), $useDefaults ? $filter->getDefault( $structuredUI ) : false ); } } } @@ -808,6 +810,7 @@ $opts->add( 'namespace', '', FormOptions::STRING ); $opts->add( 'invert', false ); $opts->add( 'associated', false ); + $opts->add( 'urlversion', 1 ); return $opts; } -- To view, visit https://gerrit.wikimedia.org/r/358157 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Iaf33c14e3f909092d96453e78016814aa417673a Gerrit-PatchSet: 2 Gerrit-Project: mediawiki/core Gerrit-Branch: master Gerrit-Owner: Catrope Gerrit-Reviewer: Mattflaschen Gerrit-Reviewer: Mooeypoo Gerrit-Reviewer: jenkins-bot <> ___ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
[MediaWiki-commits] [Gerrit] mediawiki/core[master]: ChangesListSpecialPage: Add urlversion and make urlversion=2...
Catrope has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/358157 ) Change subject: ChangesListSpecialPage: Add urlversion and make urlversion=2 ignore defaults .. ChangesListSpecialPage: Add urlversion and make urlversion=2 ignore defaults This allows us to build reliable URLs that will be consistent over time and between users (because the defaults depend on preferences, extension presence, etC) by using urlversion=2 and specifying the state of each filter relative to the empty state (i.e. nothing enabled). urlversion defaults to 1, and urlversion=1 maintains the current behavior where the parameters are interpreted relative to the user's default state. Bug: T166906 Change-Id: Iaf33c14e3f909092d96453e78016814aa417673a --- M includes/specialpage/ChangesListSpecialPage.php 1 file changed, 5 insertions(+), 2 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core refs/changes/57/358157/1 diff --git a/includes/specialpage/ChangesListSpecialPage.php b/includes/specialpage/ChangesListSpecialPage.php index 09ed3c4..1b561ef 100644 --- a/includes/specialpage/ChangesListSpecialPage.php +++ b/includes/specialpage/ChangesListSpecialPage.php @@ -791,16 +791,18 @@ $config = $this->getConfig(); $opts = new FormOptions(); $structuredUI = $this->getUser()->getOption( 'rcenhancedfilters' ); + // If urlversion=2 is set, ignore the filter defaults and set them all to false/empty + $useDefaults = $this->getRequest()->getInt( 'urlversion' ) !== 2; // Add all filters foreach ( $this->filterGroups as $filterGroup ) { // URL parameters can be per-group, like 'userExpLevel', // or per-filter, like 'hideminor'. if ( $filterGroup->isPerGroupRequestParameter() ) { - $opts->add( $filterGroup->getName(), $filterGroup->getDefault() ); + $opts->add( $filterGroup->getName(), $useDefaults ? $filterGroup->getDefault() : '' ); } else { foreach ( $filterGroup->getFilters() as $filter ) { - $opts->add( $filter->getName(), $filter->getDefault( $structuredUI ) ); + $opts->add( $filter->getName(), $useDefaults ? $filter->getDefault( $structuredUI ) : false ); } } } @@ -808,6 +810,7 @@ $opts->add( 'namespace', '', FormOptions::STRING ); $opts->add( 'invert', false ); $opts->add( 'associated', false ); + $opts->add( 'urlversion', 1 ); return $opts; } -- To view, visit https://gerrit.wikimedia.org/r/358157 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Iaf33c14e3f909092d96453e78016814aa417673a Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/core Gerrit-Branch: master Gerrit-Owner: Catrope ___ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits