X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2Fvideos%2F%2Bvideo-watch%2Fcomment%2Fvideo-comments.component.ts;h=bba9f13721f52cc7c24497d6911f4bcf39840b52;hb=0c4bacbff53bc732f5a2677d62a6ead7752e2405;hp=750c09c47cbbbe170201c7b1ada466821b23dd8a;hpb=134cf2bce96a8c5aefd55154e884964975d8cf23;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/videos/+video-watch/comment/video-comments.component.ts b/client/src/app/videos/+video-watch/comment/video-comments.component.ts index 750c09c47..bba9f1372 100644 --- a/client/src/app/videos/+video-watch/comment/video-comments.component.ts +++ b/client/src/app/videos/+video-watch/comment/video-comments.component.ts @@ -96,6 +96,7 @@ export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy { res => { this.threadComments[commentId] = res this.threadLoading[commentId] = false + this.hooks.runAction('action:video-watch.video-thread-replies.loaded', 'video-watch', { data: res }) if (highlightThread) { this.highlightedThread = new VideoComment(res.comment) @@ -130,6 +131,7 @@ export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy { this.componentPagination.totalItems = res.total this.onDataSubject.next(res.data) + this.hooks.runAction('action:video-watch.video-threads.loaded', 'video-watch', { data: this.componentPagination }) }, err => this.notifier.error(err.message) @@ -166,8 +168,8 @@ export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy { async onWantedToDelete (commentToDelete: VideoComment) { let message = 'Do you really want to delete this comment?' - if (commentToDelete.isLocal) { - message += this.i18n(' The deletion will be sent to remote instances, so they remove the comment too.') + if (commentToDelete.isLocal || this.video.isLocal) { + message += this.i18n(' The deletion will be sent to remote instances so they can reflect the change.') } else { message += this.i18n(' It is a remote comment, so the deletion will only be effective on your instance.') } @@ -178,10 +180,14 @@ export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy { this.videoCommentService.deleteVideoComment(commentToDelete.videoId, commentToDelete.id) .subscribe( () => { + if (this.highlightedThread?.id === commentToDelete.id) { + commentToDelete = this.comments.find(c => c.id === commentToDelete.id) + + this.highlightedThread = undefined + } + // Mark the comment as deleted this.softDeleteComment(commentToDelete) - - if (this.highlightedThread.id === commentToDelete.id) this.highlightedThread = undefined }, err => this.notifier.error(err.message) @@ -193,9 +199,8 @@ export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy { } onNearOfBottom () { - this.componentPagination.currentPage++ - if (hasMoreItems(this.componentPagination)) { + this.componentPagination.currentPage++ this.loadMoreThreads() } } @@ -219,7 +224,6 @@ export class VideoCommentsComponent implements OnInit, OnChanges, OnDestroy { this.componentPagination.totalItems = null this.syndicationItems = this.videoCommentService.getVideoCommentsFeeds(this.video.uuid) - this.loadMoreThreads() } }