From ea6bd0fd95ca56dcb9e5b051c4e5b310a31e021a Mon Sep 17 00:00:00 2001 From: Andrew Horth Date: Tue, 28 Jul 2026 09:40:59 +0100 Subject: [PATCH] Aligned completed task detail with current designs Amended display text for zendesk tickets Fixed linting --- .../SupportTaskDetail/Index.cshtml | 41 +++++++++++++++++-- .../SupportTaskDetail/Index.cshtml.cs | 16 ++++++++ .../SupportTaskDetailLinkGenerator.cs | 5 +++ 3 files changed, 59 insertions(+), 3 deletions(-) diff --git a/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml b/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml index ae2ca4ac64..a3c18dd663 100644 --- a/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml +++ b/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml @@ -120,11 +120,30 @@ View tickets - TODO + @if (Model.ZendeskTickets?.Any() == true) + { + + } + else + { +

No Zendesk tickets have been added yet.

+ }
- Add a Zendesk ticket + + Add a Zendesk ticket +
@@ -165,7 +184,23 @@ Zendesk tickets - TODO + @if (Model.ZendeskTickets?.Any() == true) + { + + } + else + { + None + } diff --git a/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml.cs b/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml.cs index dc62c48afc..92e0940135 100644 --- a/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml.cs +++ b/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/Index.cshtml.cs @@ -42,6 +42,8 @@ public class Index( public IReadOnlyCollection? Notes { get; set; } + public IReadOnlyCollection? ZendeskTickets { get; set; } + public string? BackLink { get; set; } [BindProperty] @@ -122,6 +124,8 @@ public override async Task OnPageHandlerExecutionAsync(PageHandlerExecutingConte .Select(t => new Note(t.Content, t.CreatedOn, t.CreatedBy!.Name)) .ToArrayAsync(); + ZendeskTickets = _supportTask.ZendeskTickets; + AssignToOptions = (await supportTaskService.GetAssignableUsersAsync()) .Where(u => u.UserId != CurrentUserId) .AsReadOnly(); @@ -132,5 +136,17 @@ public override async Task OnPageHandlerExecutionAsync(PageHandlerExecutingConte await base.OnPageHandlerExecutionAsync(context, next); } + public static string GetZendeskTicketDisplayText(string url) + { + const string zendeskPrefix = "https://becomingateacher.zendesk.com/"; + + if (url.StartsWith(zendeskPrefix, StringComparison.OrdinalIgnoreCase)) + { + return url.Substring(zendeskPrefix.Length); + } + + return url; + } + public record Note(string Content, DateTime CreatedOn, string CreatedBy); } diff --git a/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/SupportTaskDetailLinkGenerator.cs b/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/SupportTaskDetailLinkGenerator.cs index 9363d07a6a..18780a76de 100644 --- a/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/SupportTaskDetailLinkGenerator.cs +++ b/src/TeachingRecordSystem.SupportUi/Pages/SupportTasks/SupportTaskDetail/SupportTaskDetailLinkGenerator.cs @@ -16,4 +16,9 @@ public string AddNote(string supportTaskReference, string? returnUrl = null) => linkGenerator.GetRequiredPathByPage( "/SupportTasks/SupportTaskDetail/AddNote", routeValues: new { supportTaskReference, returnUrl }); + + public string ZendeskTickets(string supportTaskReference, string? returnUrl = null) => + linkGenerator.GetRequiredPathByPage( + "/SupportTasks/SupportTaskDetail/ZendeskTickets", + routeValues: new { supportTaskReference, returnUrl }); }