Mooeypoo has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/373402 )
Change subject: RCFilters: Hide saved queries from anonymous users
......................................................................
RCFilters: Hide saved queries from anonymous users
Bug: T173992
Change-Id: I5acb9ca4dd20de83da5db42c7c9053fccb091da0
---
M resources/src/mediawiki.rcfilters/mw.rcfilters.Controller.js
M
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js
M resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js
3 files changed, 55 insertions(+), 43 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core
refs/changes/02/373402/1
diff --git a/resources/src/mediawiki.rcfilters/mw.rcfilters.Controller.js
b/resources/src/mediawiki.rcfilters/mw.rcfilters.Controller.js
index 209e7c8..9906119 100644
--- a/resources/src/mediawiki.rcfilters/mw.rcfilters.Controller.js
+++ b/resources/src/mediawiki.rcfilters/mw.rcfilters.Controller.js
@@ -212,21 +212,23 @@
this.filtersModel
);
- try {
- parsedSavedQueries = JSON.parse( mw.user.options.get(
this.savedQueriesPreferenceName ) || '{}' );
- } catch ( err ) {
- parsedSavedQueries = {};
- }
+ if ( !mw.user.isAnon() ) {
+ try {
+ parsedSavedQueries = JSON.parse(
mw.user.options.get( this.savedQueriesPreferenceName ) || '{}' );
+ } catch ( err ) {
+ parsedSavedQueries = {};
+ }
- // The queries are saved in a minimized state, so we need
- // to send over the base state so the saved queries model
- // can normalize them per each query item
- this.savedQueriesModel.initialize(
- parsedSavedQueries,
- this._getBaseFilterState(),
- // This is for backwards compatibility - delete all
excluded filter states
- Object.keys(
this.filtersModel.getExcludedFiltersState() )
- );
+ // The queries are saved in a minimized state, so we
need
+ // to send over the base state so the saved queries
model
+ // can normalize them per each query item
+ this.savedQueriesModel.initialize(
+ parsedSavedQueries,
+ this._getBaseFilterState(),
+ // This is for backwards compatibility - delete
all excluded filter states
+ Object.keys(
this.filtersModel.getExcludedFiltersState() )
+ );
+ }
// Check whether we need to load defaults.
// We do this by checking whether the current URI query
@@ -238,7 +240,7 @@
// or on request
this.initializing = true;
if (
- this.savedQueriesModel.getDefault() &&
+ !mw.user.isAnon() &&
this.savedQueriesModel.getDefault() &&
!this.uriProcessor.doesQueryContainRecognizedParams(
uri.query )
) {
// We have defaults from a saved query.
@@ -1039,7 +1041,7 @@
var data, queryHighlights,
savedParams = {},
savedHighlights = {},
- defaultSavedQueryItem =
this.savedQueriesModel.getItemByID( this.savedQueriesModel.getDefault() );
+ defaultSavedQueryItem = !mw.user.isAnon() &&
this.savedQueriesModel.getItemByID( this.savedQueriesModel.getDefault() );
if ( defaultSavedQueryItem ) {
data = defaultSavedQueryItem.getData();
diff --git
a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js
b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js
index 3aa7161..b15b034 100644
---
a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js
+++
b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js
@@ -85,17 +85,20 @@
classes: [
'mw-rcfilters-ui-filterTagMultiselectWidget-resetButton' ]
} );
- this.saveQueryButton = new
mw.rcfilters.ui.SaveFiltersPopupButtonWidget(
- this.controller,
- this.queriesModel
- );
+ if ( !mw.user.isAnon() ) {
+ this.saveQueryButton = new
mw.rcfilters.ui.SaveFiltersPopupButtonWidget(
+ this.controller,
+ this.queriesModel
+ );
- this.saveQueryButton.$element.on( 'mousedown', function ( e ) {
e.stopPropagation(); } );
+ this.saveQueryButton.$element.on( 'mousedown', function
( e ) { e.stopPropagation(); } );
- this.saveQueryButton.connect( this, {
- click: 'onSaveQueryButtonClick',
- saveCurrent: 'setSavedQueryVisibility'
- } );
+ this.saveQueryButton.connect( this, {
+ click: 'onSaveQueryButtonClick',
+ saveCurrent: 'setSavedQueryVisibility'
+ } );
+ this.queriesModel.connect( this, { itemUpdate:
'onSavedQueriesItemUpdate' } );
+ }
this.emptyFilterMessage = new OO.ui.LabelWidget( {
label: mw.msg( 'rcfilters-empty-filter' ),
@@ -115,7 +118,6 @@
highlightChange: 'onModelHighlightChange'
} );
this.input.connect( this, { change: 'onInputChange' } );
- this.queriesModel.connect( this, { itemUpdate:
'onSavedQueriesItemUpdate' } );
// The filter list and button should appear side by side
regardless of how
// wide the button is; the button also changes its width
depending
@@ -129,12 +131,14 @@
.addClass(
'mw-rcfilters-ui-filterTagMultiselectWidget-cell-filters' )
);
- rcFiltersRow.append(
- $( '<div>' )
- .addClass( 'mw-rcfilters-ui-cell' )
- .addClass(
'mw-rcfilters-ui-filterTagMultiselectWidget-cell-save' )
- .append( this.saveQueryButton.$element )
- );
+ if ( !mw.user.isAnon() ) {
+ rcFiltersRow.append(
+ $( '<div>' )
+ .addClass( 'mw-rcfilters-ui-cell' )
+ .addClass(
'mw-rcfilters-ui-filterTagMultiselectWidget-cell-save' )
+ .append( this.saveQueryButton.$element )
+ );
+ }
// Add a selector at the right of the input
this.viewsSelectWidget = new OO.ui.ButtonSelectWidget( {
@@ -379,6 +383,10 @@
* Set the visibility of the saved query button
*/
mw.rcfilters.ui.FilterTagMultiselectWidget.prototype.setSavedQueryVisibility =
function () {
+ if ( mw.user.isAnon() ) {
+ return;
+ }
+
this.matchingQuery =
this.controller.findQueryMatchingCurrentState();
this.savedQueryTitle.setLabel(
diff --git
a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js
b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js
index c3af7c5..b57f5d7 100644
---
a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js
+++
b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js
@@ -78,18 +78,20 @@
this.dateWidget.$element
);
- this.savedLinksListWidget = new
mw.rcfilters.ui.SavedLinksListWidget(
- this.controller,
- this.queriesModel,
- { $overlay: this.$overlay }
- );
+ if ( !mw.user.isAnon() ) {
+ this.savedLinksListWidget = new
mw.rcfilters.ui.SavedLinksListWidget(
+ this.controller,
+ this.queriesModel,
+ { $overlay: this.$overlay }
+ );
- this.$topRow.append(
- $( '<div>' )
- .addClass( 'mw-rcfilters-ui-cell' )
- .addClass(
'mw-rcfilters-ui-filterWrapperWidget-top-savedLinks' )
- .append( this.savedLinksListWidget.$element )
- );
+ this.$topRow.append(
+ $( '<div>' )
+ .addClass( 'mw-rcfilters-ui-cell' )
+ .addClass(
'mw-rcfilters-ui-filterWrapperWidget-top-savedLinks' )
+ .append(
this.savedLinksListWidget.$element )
+ );
+ }
if ( mw.rcfilters.featureFlags.liveUpdate ) {
$bottom.append( this.liveUpdateButton.$element );
--
To view, visit https://gerrit.wikimedia.org/r/373402
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I5acb9ca4dd20de83da5db42c7c9053fccb091da0
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Mooeypoo <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits