Improve comment deletion message
This commit is contained in:
parent
308421283a
commit
7e73f07131
|
@ -1,6 +1,7 @@
|
||||||
import { Account as AccountInterface } from '../../../../../../shared/models/actors'
|
import { Account as AccountInterface } from '../../../../../../shared/models/actors'
|
||||||
import { VideoComment as VideoCommentServerModel } from '../../../../../../shared/models/videos/video-comment.model'
|
import { VideoComment as VideoCommentServerModel } from '../../../../../../shared/models/videos/video-comment.model'
|
||||||
import { Actor } from '@app/shared/actor/actor.model'
|
import { Actor } from '@app/shared/actor/actor.model'
|
||||||
|
import { getAbsoluteAPIUrl } from '@app/shared/misc/utils'
|
||||||
|
|
||||||
export class VideoComment implements VideoCommentServerModel {
|
export class VideoComment implements VideoCommentServerModel {
|
||||||
id: number
|
id: number
|
||||||
|
@ -16,6 +17,8 @@ export class VideoComment implements VideoCommentServerModel {
|
||||||
by: string
|
by: string
|
||||||
accountAvatarUrl: string
|
accountAvatarUrl: string
|
||||||
|
|
||||||
|
isLocal: boolean
|
||||||
|
|
||||||
constructor (hash: VideoCommentServerModel) {
|
constructor (hash: VideoCommentServerModel) {
|
||||||
this.id = hash.id
|
this.id = hash.id
|
||||||
this.url = hash.url
|
this.url = hash.url
|
||||||
|
@ -30,5 +33,9 @@ export class VideoComment implements VideoCommentServerModel {
|
||||||
|
|
||||||
this.by = Actor.CREATE_BY_STRING(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)
|
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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,10 +121,17 @@ export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy {
|
||||||
|
|
||||||
async onWantedToDelete (commentToDelete: VideoComment) {
|
async onWantedToDelete (commentToDelete: VideoComment) {
|
||||||
let message = 'Do you really want to delete this comment?'
|
let message = 'Do you really want to delete this comment?'
|
||||||
|
|
||||||
if (commentToDelete.totalReplies !== 0) {
|
if (commentToDelete.totalReplies !== 0) {
|
||||||
message += this.i18n(' {{totalReplies}} replies will be deleted too.', { totalReplies: commentToDelete.totalReplies })
|
message += this.i18n(' {{totalReplies}} replies will be deleted too.', { totalReplies: commentToDelete.totalReplies })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (commentToDelete.isLocal) {
|
||||||
|
message += this.i18n(' The deletion will be sent to remote instances so they remove the comment too.')
|
||||||
|
} else {
|
||||||
|
message += this.i18n(' It is a remote comment, so the deletion will only be effective on your instance.')
|
||||||
|
}
|
||||||
|
|
||||||
const res = await this.confirmService.confirm(message, this.i18n('Delete'))
|
const res = await this.confirmService.confirm(message, this.i18n('Delete'))
|
||||||
if (res === false) return
|
if (res === false) return
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue