RCFilters: Ignore 'invert' model if there are no namespaces in saved queries
[lhc/web/wiklou.git] / resources / src / mediawiki.rcfilters / dm / mw.rcfilters.dm.SavedQueriesModel.js
index 1d7934f..49d9bf7 100644 (file)
                                // the given data, if they exist
                                normalizedData.params = model.filtersModel.removeExcludedParams( normalizedData.params );
 
+                               // Correct the invert state for effective selection
+                               if ( normalizedData.params.invert && !normalizedData.params.namespaces ) {
+                                       delete normalizedData.params.invert;
+                               }
+
                                model.cleanupHighlights( normalizedData );
 
                                id = String( id );
                        }
                } );
 
+               // Correct the invert state for effective selection
+               if ( normalizedData.params.invert && !this.filtersModel.areNamespacesEffectivelyInverted() ) {
+                       delete normalizedData.params.invert;
+               }
+
                // Add item
                this.addItems( [
                        new mw.rcfilters.dm.SavedQueryItemModel(
                // Minimize before comparison
                fullQueryComparison = this.filtersModel.getMinimizedParamRepresentation( fullQueryComparison );
 
+               // Correct the invert state for effective selection
+               if ( fullQueryComparison.invert && !this.filtersModel.areNamespacesEffectivelyInverted() ) {
+                       delete fullQueryComparison.invert;
+               }
+
                return this.getItems().filter( function ( item ) {
                        return OO.compare(
                                item.getCombinedData(),