X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Bmy-account%2Fmy-account-notifications%2Fmy-account-notifications.component.ts;h=0ec67d4016bd0c0c3019e82aa0486b2119f5a37d;hb=2c8380a46f34631e705b1564938343cacfa4b0bc;hp=3e197088dc4211d4829e49e8f96d25fe0e1fb114;hpb=2f1548fda32c3ba9e53913270394eedfacd55986;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts b/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts index 3e197088d..0ec67d401 100644 --- a/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts +++ b/client/src/app/+my-account/my-account-notifications/my-account-notifications.component.ts @@ -1,14 +1,36 @@ import { Component, ViewChild } from '@angular/core' -import { UserNotificationsComponent } from '@app/shared' +import { UserNotificationsComponent } from '@app/shared/shared-main' + +type NotificationSortType = 'createdAt' | 'read' @Component({ templateUrl: './my-account-notifications.component.html', styleUrls: [ './my-account-notifications.component.scss' ] }) export class MyAccountNotificationsComponent { - @ViewChild('userNotification') userNotification: UserNotificationsComponent + @ViewChild('userNotification', { static: true }) userNotification: UserNotificationsComponent + + _notificationSortType: NotificationSortType = 'createdAt' + + get notificationSortType () { + return !this.hasUnreadNotifications() + ? 'createdAt' + : this._notificationSortType + } + + set notificationSortType (type: NotificationSortType) { + this._notificationSortType = type + } markAllAsRead () { this.userNotification.markAllAsRead() } + + hasUnreadNotifications () { + return this.userNotification.notifications.filter(n => n.read === false).length !== 0 + } + + onChangeSortColumn () { + this.userNotification.changeSortColumn(this.notificationSortType) + } }