diff --git a/src/Ombi/ClientApp/app/interfaces/IIssues.ts b/src/Ombi/ClientApp/app/interfaces/IIssues.ts index 023ac131b..cd2ad53a6 100644 --- a/src/Ombi/ClientApp/app/interfaces/IIssues.ts +++ b/src/Ombi/ClientApp/app/interfaces/IIssues.ts @@ -46,6 +46,7 @@ export interface IIssueComments { } export interface IIssuesChat { + id: number; comment: string; date: Date; username: string; diff --git a/src/Ombi/ClientApp/app/issues/issueDetails.component.html b/src/Ombi/ClientApp/app/issues/issueDetails.component.html index ece2d9966..33157cd09 100644 --- a/src/Ombi/ClientApp/app/issues/issueDetails.component.html +++ b/src/Ombi/ClientApp/app/issues/issueDetails.component.html @@ -51,15 +51,17 @@
-
-

+ +
+

-
+ +

{{comment.comment}}

diff --git a/src/Ombi/ClientApp/app/issues/issueDetails.component.ts b/src/Ombi/ClientApp/app/issues/issueDetails.component.ts index 109823067..1fda9acc5 100644 --- a/src/Ombi/ClientApp/app/issues/issueDetails.component.ts +++ b/src/Ombi/ClientApp/app/issues/issueDetails.component.ts @@ -97,6 +97,13 @@ export class IssueDetailsComponent implements OnInit { }); } + public deleteComment(id: number) { + this.issueService.deleteComment(id).subscribe(x => { + this.loadComments(); + this.notificationService.success("Comment Deleted"); + }); + } + private loadComments() { this.issueService.getComments(this.issueId).subscribe(x => this.comments = x); } diff --git a/src/Ombi/ClientApp/app/services/issues.service.ts b/src/Ombi/ClientApp/app/services/issues.service.ts index aa49d58a3..41cbb4df1 100644 --- a/src/Ombi/ClientApp/app/services/issues.service.ts +++ b/src/Ombi/ClientApp/app/services/issues.service.ts @@ -56,4 +56,8 @@ export class IssuesService extends ServiceHelpers { public updateStatus(model: IUpdateStatus): Observable { return this.http.post(`${this.url}status`, JSON.stringify(model), { headers: this.headers }); } + + public deleteComment(id: number): Observable { + return this.http.delete(`${this.url}comments/${id}`, { headers: this.headers }); + } } diff --git a/src/Ombi/Controllers/IssuesController.cs b/src/Ombi/Controllers/IssuesController.cs index 07ee3216a..a228a63ef 100644 --- a/src/Ombi/Controllers/IssuesController.cs +++ b/src/Ombi/Controllers/IssuesController.cs @@ -182,6 +182,7 @@ namespace Ombi.Controllers var roles = await _userManager.GetRolesAsync(c.User); vm.Add(new IssueCommentChatViewModel { + Id = c.Id, Comment = c.Comment, Date = c.Date, Username = c.User.UserAlias, @@ -245,9 +246,9 @@ namespace Ombi.Controllers /// [HttpDelete("comments/{id:int}")] [PowerUser] - public async Task DeleteComment(int commentId) + public async Task DeleteComment(int id) { - var comment = await _issueComments.GetAll().FirstOrDefaultAsync(x => x.Id == commentId); + var comment = await _issueComments.GetAll().FirstOrDefaultAsync(x => x.Id == id); await _issueComments.Delete(comment); return true; diff --git a/src/Ombi/Models/IssueCommentChatViewModel.cs b/src/Ombi/Models/IssueCommentChatViewModel.cs index cc943263c..a75ccdfcd 100644 --- a/src/Ombi/Models/IssueCommentChatViewModel.cs +++ b/src/Ombi/Models/IssueCommentChatViewModel.cs @@ -4,6 +4,7 @@ namespace Ombi.Models { public class IssueCommentChatViewModel { + public int Id { get; set; } public string Comment { get; set; } public DateTime Date { get; set; } public string Username { get; set; }