]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/core/users/user.model.ts
Add AccountAvatarComponent (#3965)
[github/Chocobozzz/PeerTube.git] / client / src / app / core / users / user.model.ts
index 31b9c21525a462a74276bde53bb2ea256e68cac0..7d03e1c40f07167da7781e2130d64faa36283154 100644 (file)
@@ -1,7 +1,7 @@
 import { Account } from '@app/shared/shared-main/account/account.model'
+import { hasUserRight } from '@shared/core-utils/users'
 import {
-  Avatar,
-  hasUserRight,
+  ActorImage,
   NSFWPolicyType,
   User as UserServerModel,
   UserAdminFlag,
@@ -12,21 +12,6 @@ import {
 } from '@shared/models'
 
 export class User implements UserServerModel {
-  static KEYS = {
-    ID: 'id',
-    ROLE: 'role',
-    EMAIL: 'email',
-    VIDEOS_HISTORY_ENABLED: 'videos-history-enabled',
-    USERNAME: 'username',
-    NSFW_POLICY: 'nsfw_policy',
-    WEBTORRENT_ENABLED: 'peertube-videojs-' + 'webtorrent_enabled',
-    AUTO_PLAY_VIDEO: 'auto_play_video',
-    SESSION_STORAGE_AUTO_PLAY_NEXT_VIDEO: 'auto_play_next_video',
-    AUTO_PLAY_VIDEO_PLAYLIST: 'auto_play_video_playlist',
-    THEME: 'last_active_theme',
-    VIDEO_LANGUAGES: 'video_languages'
-  }
-
   id: number
   username: string
   email: string
@@ -126,12 +111,6 @@ export class User implements UserServerModel {
     }
   }
 
-  get accountAvatarUrl () {
-    if (!this.account) return ''
-
-    return this.account.avatarUrl
-  }
-
   hasRight (right: UserRight) {
     return hasUserRight(this.role, right)
   }
@@ -146,7 +125,12 @@ export class User implements UserServerModel {
     }
   }
 
-  updateAccountAvatar (newAccountAvatar: Avatar) {
-    this.account.updateAvatar(newAccountAvatar)
+  updateAccountAvatar (newAccountAvatar?: ActorImage) {
+    if (newAccountAvatar) this.account.updateAvatar(newAccountAvatar)
+    else this.account.resetAvatar()
+  }
+
+  isUploadDisabled () {
+    return this.videoQuota === 0 || this.videoQuotaDaily === 0
   }
 }