mirror of
https://github.com/flarum/framework.git
synced 2024-11-28 11:34:36 +08:00
Sync notification count when clicking on them or marking all as read
Refs #500.
This commit is contained in:
parent
f5b5d9ca5c
commit
ce094be83e
|
@ -77,6 +77,7 @@ export default class Notification extends Component {
|
|||
* Mark the notification as read.
|
||||
*/
|
||||
markAsRead() {
|
||||
app.session.user.pushAttributes({unreadNotificationsCount: app.session.user.unreadNotificationsCount() - 1});
|
||||
this.props.notification.save({isRead: true});
|
||||
}
|
||||
}
|
||||
|
|
|
@ -110,7 +110,7 @@ export default class NotificationList extends Component {
|
|||
* been loaded.
|
||||
*/
|
||||
load() {
|
||||
if (app.cache.notifications && !app.session.user.unreadNotificationsCount()) {
|
||||
if (app.cache.notifications && !app.session.user.newNotificationsCount()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -118,7 +118,7 @@ export default class NotificationList extends Component {
|
|||
m.redraw();
|
||||
|
||||
app.store.find('notifications').then(notifications => {
|
||||
app.session.user.pushAttributes({unreadNotificationsCount: 0});
|
||||
app.session.user.pushAttributes({newNotificationsCount: 0});
|
||||
app.cache.notifications = notifications.sort((a, b) => b.time() - a.time());
|
||||
|
||||
this.loading = false;
|
||||
|
@ -132,6 +132,8 @@ export default class NotificationList extends Component {
|
|||
markAllAsRead() {
|
||||
if (!app.cache.notifications) return;
|
||||
|
||||
app.session.user.pushAttributes({unreadNotificationsCount: 0});
|
||||
|
||||
app.cache.notifications.forEach(notification => {
|
||||
if (!notification.isRead()) {
|
||||
notification.save({isRead: true});
|
||||
|
|
Loading…
Reference in New Issue
Block a user