v1.18.x
Barış Soner Uşaklı 7 years ago
parent 7ade82a9eb
commit 667630ff5d

@ -38,15 +38,7 @@ define('notifications', ['sounds', 'translator', 'components', 'navigator', 'ben
return;
}
var nid = notifEl.attr('data-nid');
socket.emit('notifications.markRead', nid, function (err) {
if (err) {
return app.alertError(err.message);
}
if (unreadNotifs[nid]) {
delete unreadNotifs[nid];
}
});
markNotification(nid, true);
});
notifContainer.on('click', '.mark-all-read', Notifications.markAllRead);
@ -55,17 +47,8 @@ define('notifications', ['sounds', 'translator', 'components', 'navigator', 'ben
var liEl = $(this).parent();
var unread = liEl.hasClass('unread');
var nid = liEl.attr('data-nid');
socket.emit('notifications.mark' + (unread ? 'Read' : 'Unread'), nid, function (err) {
if (err) {
return app.alertError(err.message);
}
markNotification(nid, unread, function () {
liEl.toggleClass('unread');
if (unread && unreadNotifs[nid]) {
delete unreadNotifs[nid];
}
});
return false;
});
@ -82,6 +65,7 @@ define('notifications', ['sounds', 'translator', 'components', 'navigator', 'ben
payload.message = notifData.bodyShort;
payload.type = 'info';
payload.clickfn = function () {
markNotification(notifData.nid, true);
if (notifData.path.startsWith('http') || notifData.path.startsWith('https')) {
window.location.href = notifData.path;
} else {
@ -119,6 +103,21 @@ define('notifications', ['sounds', 'translator', 'components', 'navigator', 'ben
});
};
function markNotification(nid, read, callback) {
socket.emit('notifications.mark' + (read ? 'Read' : 'Unread'), nid, function (err) {
if (err) {
return app.alertError(err.message);
}
if (read && unreadNotifs[nid]) {
delete unreadNotifs[nid];
}
if (callback) {
callback();
}
});
}
function scrollToPostIndexIfOnPage(notifEl) {
// Scroll to index if already in topic (gh#5873)
var pid = notifEl.attr('data-pid');

Loading…
Cancel
Save