]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+my-account/my-account-settings/my-account-notification-preferences/my-account-notification-preferences.component.ts
Lazy load static objects
[github/Chocobozzz/PeerTube.git] / client / src / app / +my-account / my-account-settings / my-account-notification-preferences / my-account-notification-preferences.component.ts
index 519bdfab4fb8055c567de22012b8d22c401bc6a9..6ba1a10204d6a83b0b07f21e2f196bef427db6e6 100644 (file)
@@ -21,7 +21,7 @@ export class MyAccountNotificationPreferencesComponent implements OnInit {
   webNotifications: { [ id in keyof UserNotificationSetting ]: boolean } = {} as any
   labelNotifications: { [ id in keyof UserNotificationSetting ]: string } = {} as any
   rightNotifications: { [ id in keyof Partial<UserNotificationSetting> ]: UserRight } = {} as any
-  emailEnabled: boolean
+  emailEnabled = false
 
   private savePreferences = debounce(this.savePreferencesImpl.bind(this), 500)
 
@@ -34,25 +34,34 @@ export class MyAccountNotificationPreferencesComponent implements OnInit {
     this.labelNotifications = {
       newVideoFromSubscription: this.i18n('New video from your subscriptions'),
       newCommentOnMyVideo: this.i18n('New comment on your video'),
-      videoAbuseAsModerator: this.i18n('New video abuse on local video'),
+      videoAbuseAsModerator: this.i18n('New video abuse'),
+      videoAutoBlacklistAsModerator: this.i18n('Video auto-blacklisted waiting review'),
       blacklistOnMyVideo: this.i18n('One of your video is blacklisted/unblacklisted'),
       myVideoPublished: this.i18n('Video published (after transcoding/scheduled update)'),
       myVideoImportFinished: this.i18n('Video import finished'),
       newUserRegistration: this.i18n('A new user registered on your instance'),
       newFollow: this.i18n('You or your channel(s) has a new follower'),
-      commentMention: this.i18n('Someone mentioned you in video comments')
+      commentMention: this.i18n('Someone mentioned you in video comments'),
+      newInstanceFollower: this.i18n('Your instance has a new follower'),
+      autoInstanceFollowing: this.i18n('Your instance auto followed another instance')
     }
     this.notificationSettingKeys = Object.keys(this.labelNotifications) as (keyof UserNotificationSetting)[]
 
     this.rightNotifications = {
       videoAbuseAsModerator: UserRight.MANAGE_VIDEO_ABUSES,
-      newUserRegistration: UserRight.MANAGE_USERS
+      videoAutoBlacklistAsModerator: UserRight.MANAGE_VIDEO_BLACKLIST,
+      newUserRegistration: UserRight.MANAGE_USERS,
+      newInstanceFollower: UserRight.MANAGE_SERVER_FOLLOW,
+      autoInstanceFollowing: UserRight.MANAGE_CONFIGURATION
     }
-
-    this.emailEnabled = this.serverService.getConfig().email.enabled
   }
 
   ngOnInit () {
+    this.serverService.getConfig()
+        .subscribe(config => {
+          this.emailEnabled = config.email.enabled
+        })
+
     this.userInformationLoaded.subscribe(() => this.loadNotificationSettings())
   }