-<div class="root-comment">
+<div *ngIf="isCommentDisplayed()" class="root-comment" [ngClass]="{ 'is-child': isChild() }">
<div class="left">
- <a *ngIf="!comment.isDeleted" [href]="comment.account.url" target="_blank" rel="noopener noreferrer">
- <img
- class="comment-avatar"
- [src]="comment.accountAvatarUrl"
- (error)="switchToDefaultAvatar($event)"
- alt="Avatar"
- />
- </a>
-
+ <my-actor-avatar *ngIf="!comment.isDeleted" [href]="comment.account.url" [account]="comment.account"></my-actor-avatar>
<div class="vertical-border"></div>
</div>
<div class="right" [ngClass]="{ 'mb-3': firstInThread }">
- <span *ngIf="comment.isDeleted" class="comment-avatar"></span>
-
<div class="comment">
<ng-container *ngIf="!comment.isDeleted">
<div *ngIf="highlightedComment === true" class="highlighted-comment" i18n>Highlighted comment</div>
<div class="comment-account-date">
<div class="comment-account">
- <a
- [routerLink]="[ '/accounts', comment.by ]"
- class="comment-account-name" [ngClass]="{ 'video-author': video.account.id === comment.account.id }"
- >
- {{ comment.account.displayName }}
- </a>
+ <a [routerLink]="[ '/a', comment.by ]">
+ <span class="comment-account-name" [ngClass]="{ 'video-author': video.account.id === comment.account.id }">
+ {{ comment.account.displayName }}
+ </span>
- <a [href]="comment.account.url" target="_blank" rel="noopener noreferrer" class="comment-account-fid ml-1">{{ comment.by }}</a>
+ <span class="comment-account-fid ml-1">{{ comment.by }}</span>
+ </a>
</div>
- <a [routerLink]="['/videos/watch', video.uuid, { 'threadId': comment.threadId }]"
- class="comment-date" [title]="comment.createdAt">{{ comment.createdAt | myFromNow }}</a>
+
+ <a [routerLink]="['/w', video.uuid, { 'threadId': comment.threadId }]" class="comment-date" [title]="comment.createdAt">
+ {{ comment.createdAt | myFromNow }}
+ </a>
</div>
+
<div
class="comment-html"
[innerHTML]="sanitizedCommentHTML"
></div>
<div class="comment-actions">
- <div *ngIf="isUserLoggedIn()" (click)="onWantToReply()" class="comment-action-reply" i18n>Reply</div>
- <div *ngIf="isRemovableByUser()" (click)="onWantToDelete()" class="comment-action-delete" i18n>Delete</div>
+ <div tabindex=0 (click)="onWantToReply()" class="comment-action-reply" i18n>Reply</div>
<my-user-moderation-dropdown
+ [prependActions]="prependModerationActions" tabindex=0 [buttonStyled]="false"
buttonSize="small" [account]="commentAccount" [user]="commentUser" i18n-label label="Options" placement="bottom-left auto"
></my-user-moderation-dropdown>
</div>
<ng-container *ngIf="comment.isDeleted">
<div class="comment-account-date">
<span class="comment-account" i18n>Deleted</span>
- <a [routerLink]="['/videos/watch', video.uuid, { 'threadId': comment.threadId }]"
+ <a [routerLink]="['/w', video.uuid, { 'threadId': comment.threadId }]"
class="comment-date">{{ comment.createdAt | myFromNow }}</a>
</div>
- <div *ngIf="comment.isDeleted" class="comment-html comment-html-deleted">
+ <div class="comment-html comment-html-deleted">
<i i18n>This comment has been deleted</i>
</div>
</ng-container>
<my-video-comment-add
- *ngIf="!comment.isDeleted && isUserLoggedIn() && inReplyToCommentId === comment.id"
+ *ngIf="!comment.isDeleted && inReplyToCommentId === comment.id"
[user]="user"
[video]="video"
[parentComment]="comment"
[focusOnInit]="true"
(commentCreated)="onCommentReplyCreated($event)"
(cancel)="onResetReply()"
+ [textValue]="redraftValue"
></my-video-comment-add>
- <div *ngIf="commentTree" class="children">
+ <div *ngIf="commentTree">
<div *ngFor="let commentChild of commentTree.children">
<my-video-comment
[comment]="commentChild.comment"
[parentComments]="newParentComments"
(wantedToReply)="onWantToReply($event)"
(wantedToDelete)="onWantToDelete($event)"
+ (wantedToRedraft)="onWantToRedraft($event)"
(resetReply)="onResetReply()"
(timestampClicked)="handleTimestampClicked($event)"
+ [redraftValue]="redraftValue"
></my-video-comment>
</div>
</div>
</div>
</div>
</div>
+
+<ng-container *ngIf="prependModerationActions">
+ <my-comment-report #commentReportModal [comment]="comment"></my-comment-report>
+</ng-container>