Merge "Fix CreditsAction when user has no real name set but real names enabled"
[lhc/web/wiklou.git] / resources / src / mediawiki.rcfilters / mw.rcfilters.Controller.js
index b07df57..ed2a73f 100644 (file)
                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() )
                        );