From 76d36e0b355f41fb46709ba5e39c59b10087c6a9 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Mon, 8 Jan 2018 10:35:54 +0100 Subject: [PATCH] Refractor account by --- client/src/app/shared/account/account.model.ts | 9 +++++++++ client/src/app/shared/video/video.model.ts | 12 ++---------- .../+video-watch/comment/video-comment.model.ts | 11 ++++------- 3 files changed, 15 insertions(+), 17 deletions(-) diff --git a/client/src/app/shared/account/account.model.ts b/client/src/app/shared/account/account.model.ts index 1dce0003c..dffca783b 100644 --- a/client/src/app/shared/account/account.model.ts +++ b/client/src/app/shared/account/account.model.ts @@ -22,4 +22,13 @@ export class Account implements ServerAccount { return window.location.origin + '/client/assets/images/default-avatar.png' } + + static CREATE_BY_STRING (accountName: string, host: string) { + const absoluteAPIUrl = getAbsoluteAPIUrl() + const thisHost = new URL(absoluteAPIUrl).host + + if (host.trim() === thisHost) return accountName + + return accountName + '@' + host + } } diff --git a/client/src/app/shared/video/video.model.ts b/client/src/app/shared/video/video.model.ts index a4b90ad94..79351ba2a 100644 --- a/client/src/app/shared/video/video.model.ts +++ b/client/src/app/shared/video/video.model.ts @@ -1,7 +1,6 @@ +import { Account } from '@app/shared/account/account.model' import { User } from '../' import { Video as VideoServerModel } from '../../../../../shared' -import { Account } from '../../../../../shared/models/actors' -import { environment } from '../../../environments/environment' import { getAbsoluteAPIUrl } from '../misc/utils' export class Video implements VideoServerModel { @@ -35,13 +34,6 @@ export class Video implements VideoServerModel { nsfw: boolean account: Account - private static createByString (account: string, serverHost: string, apiURL: string) { - const thisHost = new URL(apiURL).host - if (serverHost.trim() === thisHost) - return account - return account + '@' + serverHost - } - private static createDurationString (duration: number) { const minutes = Math.floor(duration / 60) const seconds = duration % 60 @@ -81,7 +73,7 @@ export class Video implements VideoServerModel { this.dislikes = hash.dislikes this.nsfw = hash.nsfw - this.by = Video.createByString(hash.accountName, hash.serverHost, absoluteAPIUrl) + this.by = Account.CREATE_BY_STRING(hash.accountName, hash.serverHost) } isVideoNSFWForUser (user: User) { diff --git a/client/src/app/videos/+video-watch/comment/video-comment.model.ts b/client/src/app/videos/+video-watch/comment/video-comment.model.ts index abecae303..4c5971f54 100644 --- a/client/src/app/videos/+video-watch/comment/video-comment.model.ts +++ b/client/src/app/videos/+video-watch/comment/video-comment.model.ts @@ -1,4 +1,5 @@ -import { Account } from '../../../../../../shared/models/actors' +import { Account } from '@app/shared/account/account.model' +import { Account as AccountInterface } from '../../../../../../shared/models/actors' import { VideoComment as VideoCommentServerModel } from '../../../../../../shared/models/videos/video-comment.model' export class VideoComment implements VideoCommentServerModel { @@ -10,15 +11,11 @@ export class VideoComment implements VideoCommentServerModel { videoId: number createdAt: Date | string updatedAt: Date | string - account: Account + account: AccountInterface totalReplies: number by: string - private static createByString (account: string, serverHost: string) { - return account + '@' + serverHost - } - constructor (hash: VideoCommentServerModel) { this.id = hash.id this.url = hash.url @@ -31,6 +28,6 @@ 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 = Account.CREATE_BY_STRING(this.account.name, this.account.host) } } -- 2.25.1