diff --git a/Management.Web/Shared/Components/AssignmentForm/AssignmentDescriptionEditor.razor b/Management.Web/Shared/Components/AssignmentForm/AssignmentDescriptionEditor.razor index 6c03c12..d51157a 100644 --- a/Management.Web/Shared/Components/AssignmentForm/AssignmentDescriptionEditor.razor +++ b/Management.Web/Shared/Components/AssignmentForm/AssignmentDescriptionEditor.razor @@ -20,13 +20,6 @@ descriptionForPreview = description; this.InvokeAsync(this.StateHasChanged); } - if(TemplateId == string.Empty || TemplateId == null) - { - UseTemplate = TemplateId != null && TemplateId != ""; - TemplateId = assignmentContext.Assignment.TemplateId; - VariableValues = assignmentContext.Assignment.TemplateVariables; - this.InvokeAsync(this.StateHasChanged); - } } } public void Dispose() @@ -66,118 +59,13 @@ } } - private void saveTemplateId(ChangeEventArgs e) - { - if(assignmentContext.Assignment != null) - { - var newTemplateId = e.Value?.ToString(); - var newAssignment = assignmentContext.Assignment with - { - TemplateId = newTemplateId - }; - assignmentContext.SaveAssignment(newAssignment); - } - } - private MarkupString preview { get => (MarkupString)Markdown.ToHtml(descriptionForPreview); } - private void handleTemplateChange(ChangeEventArgs e) - { - if (assignmentContext.Assignment != null) - { - Console.WriteLine("input"); - var newValue = bool.Parse(e.Value?.ToString() ?? "false"); - UseTemplate = newValue; - StateHasChanged(); - if(!newValue) - { - TemplateId = string.Empty; - VariableValues = new Dictionary(); - assignmentContext.SaveAssignment( - assignmentContext.Assignment with - { - TemplateId = TemplateId, - TemplateVariables = VariableValues - } - ); - } - } - } } @if(assignmentContext.Assignment != null && planner.LocalCourse != null) { -
- - -
- - @if (UseTemplate ?? false) - { -
-
-
- - -
-
-
- VARIABLES: - @if (selectedTemplate != null) - { - var variables = AssignmentTemplate.GetVariables(selectedTemplate.Markdown); - @foreach (var variable in variables) - { -
- - -
- } - } -
-
- } - else - { - -
+
- } } \ No newline at end of file diff --git a/Management.Web/Shared/Module/Assignment/AssignmentListItem.razor b/Management.Web/Shared/Module/Assignment/AssignmentListItem.razor index 6a0893c..5bb608a 100644 --- a/Management.Web/Shared/Module/Assignment/AssignmentListItem.razor +++ b/Management.Web/Shared/Module/Assignment/AssignmentListItem.razor @@ -77,7 +77,6 @@ && planner.CanvasModules != null && Assignment.NeedsUpdates( planner.CanvasAssignments, - planner.LocalCourse.Settings.AssignmentTemplates, Assignment.GetCanvasAssignmentGroupId(planner.LocalCourse.Settings.AssignmentGroups) ) ) @@ -109,7 +108,7 @@
- @((MarkupString) @Assignment.GetDescriptionHtml(planner.LocalCourse?.Settings.AssignmentTemplates)) + @((MarkupString) @Assignment.GetDescriptionHtml())
diff --git a/Management/Features/Configuration/Synchronization/AssignmentSyncronizationExtensions.cs b/Management/Features/Configuration/Synchronization/AssignmentSyncronizationExtensions.cs index c8e8f53..87b6899 100644 --- a/Management/Features/Configuration/Synchronization/AssignmentSyncronizationExtensions.cs +++ b/Management/Features/Configuration/Synchronization/AssignmentSyncronizationExtensions.cs @@ -24,9 +24,7 @@ public static partial class AssignmentSyncronizationExtensions var canvasAssignment = canvasAssignments.FirstOrDefault( ca => ca.Id == localAssignment.CanvasId ); - string localHtmlDescription = localAssignment.GetDescriptionHtml( - localCourse.Settings.AssignmentTemplates - ); + string localHtmlDescription = localAssignment.GetDescriptionHtml(); var canvasAssignmentGroupId = localAssignment.GetCanvasAssignmentGroupId(localCourse.Settings.AssignmentGroups); @@ -55,7 +53,6 @@ public static partial class AssignmentSyncronizationExtensions { var assignmentNeedsUpdates = localAssignment.NeedsUpdates( canvasAssignments, - localCourse.Settings.AssignmentTemplates, canvasAssignmentGroupId, quiet: false ); @@ -74,7 +71,6 @@ public static partial class AssignmentSyncronizationExtensions public static bool NeedsUpdates( this LocalAssignment localAssignment, IEnumerable canvasAssignments, - IEnumerable courseAssignmentTemplates, ulong? canvasAssignmentGroupId, bool quiet = true ) @@ -82,7 +78,7 @@ public static partial class AssignmentSyncronizationExtensions var canvasAssignment = canvasAssignments.First(ca => ca.Id == localAssignment.CanvasId); var localHtmlDescription = localAssignment - .GetDescriptionHtml(courseAssignmentTemplates) + .GetDescriptionHtml() .Replace("
", "
") .Replace(">", "") .Replace("<", "") diff --git a/Management/Models/Local/LocalAssignment.cs b/Management/Models/Local/LocalAssignment.cs index 4371daa..d3eeaa4 100644 --- a/Management/Models/Local/LocalAssignment.cs +++ b/Management/Models/Local/LocalAssignment.cs @@ -7,7 +7,7 @@ public record RubricItem public static readonly string extraCredit = "(Extra Credit) "; public string Label { get; set; } = ""; public int Points { get; set; } = 0; - public bool IsExtraCredit => Label.Contains(extraCredit); + public bool IsExtraCredit => Label.Contains(extraCredit.ToLower(), StringComparison.CurrentCultureIgnoreCase); } public static class SubmissionType @@ -42,10 +42,6 @@ public record LocalAssignment public ulong? CanvasId { get; init; } = null; public string Name { get; init; } = ""; public string Description { get; init; } = ""; - // public bool UseTemplate { get; init; } = false; - public string? TemplateId { get; init; } = string.Empty; - public Dictionary TemplateVariables { get; init; } = - new Dictionary(); public bool LockAtDueDate { get; init; } public IEnumerable Rubric { get; init; } = Array.Empty(); public DateTime? LockAt { get; init; } @@ -66,28 +62,10 @@ public record LocalAssignment return output; } - public string GetDescriptionHtml(IEnumerable? templates) + public string GetDescriptionHtml() { - if (TemplateId != null && TemplateId != "" && templates == null) - throw new Exception("cannot get description for assignment if templates not provided"); - var rubricHtml = GetRubricHtml(); - if (TemplateId != null && TemplateId != "") - { - var template = - (templates?.FirstOrDefault(t => t.Id == TemplateId)) - ?? throw new Exception($"Could not find template with id {TemplateId}"); - - var html = Markdig.Markdown.ToHtml(template.Markdown); - - foreach (KeyValuePair entry in TemplateVariables) - { - html = html.Replace($"%7B%7B{entry.Key}%7D%7D", entry.Value); - } - return html + "
" + rubricHtml; - } - return Markdig.Markdown.ToHtml(Description) + "
" + rubricHtml; }