this.newChangesExist = false;
this.nextFrom = null;
this.liveUpdate = false;
+ this.unseenWatchedChanges = false;
};
/* Initialization */
mw.rcfilters.dm.ChangesListViewModel.prototype.update = function ( changesListContent, $fieldset, isInitialDOM, separateOldAndNew ) {
var from = this.nextFrom;
this.valid = true;
- this.extractNextFrom( $fieldset );
+ if ( mw.rcfilters.featureFlags.liveUpdate ) {
+ this.extractNextFrom( $fieldset );
+ }
+ this.checkForUnseenWatchedChanges( changesListContent );
this.emit( 'update', changesListContent, $fieldset, isInitialDOM, separateOldAndNew ? from : null );
};
return this.liveUpdate;
};
+ /**
+ * Check if some of the given changes watched and unseen
+ *
+ * @param {jQuery|string} changeslistContent
+ */
+ mw.rcfilters.dm.ChangesListViewModel.prototype.checkForUnseenWatchedChanges = function ( changeslistContent ) {
+ this.unseenWatchedChanges = changeslistContent !== 'NO_RESULTS' &&
+ changeslistContent.find( '.mw-changeslist-line-watched' ).length > 0;
+ };
+
+ /**
+ * @return {boolean} Whether some of the current changes are watched and unseen
+ */
+ mw.rcfilters.dm.ChangesListViewModel.prototype.hasUnseenWatchedChanges = function () {
+ return this.unseenWatchedChanges;
+ };
}( mediaWiki ) );