]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/videos/+video-watch/comment/video-comment.model.ts
Fix infinite scroll on big screens
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / +video-watch / comment / video-comment.model.ts
index df7d5244c4534fe219e8b4395cbb195f8bf37f88..3ed3ddcc78b72e934200273e0ac6dfcdf4aacf02 100644 (file)
@@ -1,4 +1,7 @@
+import { Account as AccountInterface } from '../../../../../../shared/models/actors'
 import { VideoComment as VideoCommentServerModel } from '../../../../../../shared/models/videos/video-comment.model'
+import { Actor } from '@app/shared/actor/actor.model'
+import { getAbsoluteAPIUrl } from '@app/shared/misc/utils'
 
 export class VideoComment implements VideoCommentServerModel {
   id: number
@@ -9,17 +12,12 @@ export class VideoComment implements VideoCommentServerModel {
   videoId: number
   createdAt: Date | string
   updatedAt: Date | string
-  account: {
-    name: string
-    host: string
-  }
+  account: AccountInterface
   totalReplies: number
-
   by: string
+  accountAvatarUrl: string
 
-  private static createByString (account: string, serverHost: string) {
-    return account + '@' + serverHost
-  }
+  isLocal: boolean
 
   constructor (hash: VideoCommentServerModel) {
     this.id = hash.id
@@ -33,6 +31,11 @@ export class VideoComment implements VideoCommentServerModel {
     this.account = hash.account
     this.totalReplies = hash.totalReplies
 
-    this.by = VideoComment.createByString(this.account.name, this.account.host)
+    this.by = Actor.CREATE_BY_STRING(this.account.name, this.account.host)
+    this.accountAvatarUrl = Actor.GET_ACTOR_AVATAR_URL(this.account)
+
+    const absoluteAPIUrl = getAbsoluteAPIUrl()
+    const thisHost = new URL(absoluteAPIUrl).host
+    this.isLocal = this.account.host.trim() === thisHost
   }
 }