this.initializing = false;
this.switchView( 'default' );
- this._scheduleLiveUpdate();
+ this.pollingRate = mw.config.get( 'StructuredChangeFiltersLiveUpdatePollingRate' );
+ if ( this.pollingRate ) {
+ this._scheduleLiveUpdate();
+ }
};
/**
this.updateChangesList();
};
+ /**
+ * Check whether the default values of the filters are all false.
+ *
+ * @return {boolean} Defaults are all false
+ */
+ mw.rcfilters.Controller.prototype.areDefaultsEmpty = function () {
+ var defaultFilters = this.filtersModel.getFiltersFromParameters( this._getDefaultParams() );
+
+ this._deleteExcludedValuesFromFilterState( defaultFilters );
+
+ // Defaults can change in a session, so we need to do this every time
+ return Object.keys( defaultFilters ).every( function ( filterName ) {
+ return !defaultFilters[ filterName ];
+ } );
+ };
+
/**
* Empty all selected filters
*/
* @private
*/
mw.rcfilters.Controller.prototype._scheduleLiveUpdate = function () {
- setTimeout( this._doLiveUpdate.bind( this ), 3000 );
+ setTimeout( this._doLiveUpdate.bind( this ), this.pollingRate * 1000 );
};
/**
queryHighlights = data.highlights || {};
savedParams = this.filtersModel.getParametersFromFilters(
- // Merge filters with sticky values
$.extend( true, {}, data.filters, this.filtersModel.getStickyFiltersState() )
);