mirror of https://github.com/Squidex/squidex.git
committed by
GitHub
21 changed files with 294 additions and 107 deletions
@ -0,0 +1,18 @@ |
|||
// ==========================================================================
|
|||
// Squidex Headless CMS
|
|||
// ==========================================================================
|
|||
// Copyright (c) Squidex UG (haftungsbeschraenkt)
|
|||
// All rights reserved. Licensed under the MIT license.
|
|||
// ==========================================================================
|
|||
|
|||
using System; |
|||
|
|||
namespace Squidex.Domain.Apps.Entities.Comments.Commands |
|||
{ |
|||
public abstract class CommentTextCommand : CommentsCommand |
|||
{ |
|||
public string Text { get; set; } |
|||
|
|||
public string[]? Mentions { get; set; } |
|||
} |
|||
} |
|||
@ -1,30 +1,65 @@ |
|||
<div class="comment row no-gutters"> |
|||
<div class="col-auto"> |
|||
<div class="col-auto pr-2"> |
|||
<img class="user-picture" title="{{comment.user | sqxUserNameRef}}" [src]="comment.user | sqxUserPictureRef" /> |
|||
</div> |
|||
<div class="col pl-2 col-right"> |
|||
<div class="comment-message"> |
|||
<div class="user-row"> |
|||
<div class="user-ref">{{comment.user | sqxUserNameRef}}</div> |
|||
</div> |
|||
|
|||
<div [innerHTML]="comment.text | sqxMarkdown"></div> |
|||
|
|||
<div class="comment-created text-muted"> |
|||
<ng-container *ngIf="canFollow && comment.url"> |
|||
<a [routerLink]="comment.url">Follow</a> |
|||
</ng-container> |
|||
|
|||
{{comment.time | sqxFromNow}} |
|||
<ng-container *ngIf="!isEditing; else editing"> |
|||
<div class="col col-text"> |
|||
<div class="comment-message"> |
|||
<div class="user-row"> |
|||
<div class="user-ref">{{comment.user | sqxUserNameRef}}</div> |
|||
</div> |
|||
|
|||
<div [innerHTML]="comment.text | sqxMarkdown"></div> |
|||
|
|||
<div class="comment-created text-muted"> |
|||
<ng-container *ngIf="canFollow && comment.url"> |
|||
<a [routerLink]="comment.url">Follow</a> |
|||
</ng-container> |
|||
|
|||
{{comment.time | sqxFromNow}} |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</ng-container> |
|||
|
|||
<ng-template #editing> |
|||
<div class="col"> |
|||
<form (ngSubmit)="update()"> |
|||
<textarea class="form-control mb-1" name="{{comment.id}}" sqxFocusOnInit |
|||
[(ngModel)]="editingText" |
|||
[mention]="mentionUsers" |
|||
[mentionConfig]="mentionConfig" |
|||
[mentionListTemplate]="mentionListTemplate" |
|||
(keydown)="updateWhenEnter($event)"></textarea> |
|||
|
|||
<div> |
|||
<button type="button" class="btn btn-sm btn-secondary mr-1" (click)="cancelEdit()"> |
|||
Cancel |
|||
</button> |
|||
<button type="submit" class="btn btn-sm btn-primary"> |
|||
<i class="icon-enter"></i> Save |
|||
</button> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
</ng-template> |
|||
|
|||
<div class="actions" *ngIf="!isEditing"> |
|||
<button *ngIf="isEditable && canEdit" type="button" class="btn btn-sm btn-text-secondary" (click)="startEdit()"> |
|||
<i class="icon-pencil"></i> |
|||
</button> |
|||
|
|||
<button *ngIf="isDeletable || canDelete" type="button" class="btn btn-sm btn-text-danger" |
|||
(sqxConfirmClick)="delete()" |
|||
confirmTitle="Delete comment" |
|||
confirmText="Do you really want to delete the comment?" |
|||
[confirmRequired]="confirmDelete"> |
|||
<i class="icon-bin2"></i> |
|||
</button> |
|||
</div> |
|||
</div> |
|||
|
|||
<button *ngIf="comment.user === userToken || canDelete" type="button" class="btn btn-sm btn-text-danger item-remove" |
|||
(sqxConfirmClick)="delete.emit()" |
|||
confirmTitle="Delete comment" |
|||
confirmText="Do you really want to delete the comment?" |
|||
[confirmRequired]="confirmDelete"> |
|||
<i class="icon-bin2"></i> |
|||
</button> |
|||
</div> |
|||
<ng-template #mentionListTemplate let-item="item"> |
|||
{{item['contributorEmail']}} |
|||
</ng-template> |
|||
Binary file not shown.
|
Before Width: | Height: | Size: 100 KiB After Width: | Height: | Size: 100 KiB |
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Loading…
Reference in new issue