(bug 45016) make sure dismiss works across all supported types

Change-Id: Id9bf0c785a8fe429c6ec04c427330395d30bf68c
This commit is contained in:
Kaldari 2013-02-14 14:09:56 -08:00
parent 3ced897d18
commit 35cf44e4a6

View file

@ -5,6 +5,8 @@
'optionsToken': '',
'dismissOutputFormats': ['web', 'email'],
/**
* Change the user's preferences related to this notification type and
* reload the page.
@ -13,10 +15,19 @@
var _this = this,
$notification = $( notification ),
eventType = $notification.attr( 'data-notification-type' ),
change = 'echo-web-notifications' + eventType + '=0',
prefRequest = {
prefName = '',
prefs = [],
prefRequest = {};
$.each( mw.echo.dismissOutputFormats, function( index, format ) {
// Make sure output format pref exists for this event type
prefName = 'echo-' + format + '-notifications' + eventType;
if ( mw.user.options.exists( prefName ) ) {
prefs.push( prefName + '=0' );
}
} );
prefRequest = {
'action': 'options',
'change': change,
'change': prefs.join( '|' ),
'token': mw.echo.optionsToken,
'format': 'json'
};