updated how assignment form persists data

This commit is contained in:
2023-08-08 16:40:16 -06:00
parent 1494fd1906
commit b7e65e3914
3 changed files with 95 additions and 109 deletions

View File

@@ -30,8 +30,11 @@
public Dictionary<string, string> VariableValues { get; set; } = new Dictionary<string, string>(); public Dictionary<string, string> VariableValues { get; set; } = new Dictionary<string, string>();
protected override void OnParametersSet() protected override void OnParametersSet()
{
if (Description == "")
{ {
Description = Assignment.Description; Description = Assignment.Description;
}
TemplateId = Assignment.TemplateId; TemplateId = Assignment.TemplateId;
UseTemplate = Assignment.TemplateId != null && Assignment.TemplateId != ""; UseTemplate = Assignment.TemplateId != null && Assignment.TemplateId != "";
} }
@@ -87,6 +90,7 @@
role="switch" role="switch"
id="useTemplateForDescription" id="useTemplateForDescription"
@bind="UseTemplate" @bind="UseTemplate"
/>
<label class="form-check-label" for="useTemplateForDescription"> <label class="form-check-label" for="useTemplateForDescription">
use template for description use template for description
</label> </label>
@@ -173,6 +177,7 @@ else
id="description" id="description"
class="form-control" class="form-control"
rows=12 rows=12
value="@Description"
@oninput="@((e) => @oninput="@((e) =>
{ {
var newDescription = e.Value?.ToString(); var newDescription = e.Value?.ToString();

View File

@@ -39,7 +39,7 @@
protected override void OnParametersSet() protected override void OnParametersSet()
{ {
if(Show) if (Show)
{ {
AssignmentModal?.Show(); AssignmentModal?.Show();
} }
@@ -58,14 +58,14 @@
var newAssignment = Assignment with var newAssignment = Assignment with
{ {
Name=name, Name = name,
LockAtDueDate=lockAtDueDate, LockAtDueDate = lockAtDueDate,
Rubric=rubric, Rubric = rubric,
PointsPossible=totalRubricPoints, PointsPossible = totalRubricPoints,
SubmissionTypes=submissionTypes, SubmissionTypes = submissionTypes,
}; };
if(planner.LocalCourse != null) if (planner.LocalCourse != null)
{ {
var currentModule = planner var currentModule = planner
.LocalCourse .LocalCourse
@@ -79,7 +79,7 @@
m.Name == currentModule.Name m.Name == currentModule.Name
? currentModule with ? currentModule with
{ {
Assignments=currentModule.Assignments.Select(a => Assignments = currentModule.Assignments.Select(a =>
a.Id == newAssignment.Id a.Id == newAssignment.Id
? newAssignment ? newAssignment
: a : a
@@ -89,7 +89,7 @@
).ToArray(); ).ToArray();
planner.LocalCourse = planner.LocalCourse with planner.LocalCourse = planner.LocalCourse with
{ {
Modules=updatedModules Modules = updatedModules
}; };
} }
AssignmentModal?.Hide(); AssignmentModal?.Hide();
@@ -108,7 +108,7 @@
private async Task HandleDelete() private async Task HandleDelete()
{ {
if(planner.LocalCourse != null) if (planner.LocalCourse != null)
{ {
var assignment = Assignment; var assignment = Assignment;
var currentModule = planner var currentModule = planner
@@ -132,7 +132,7 @@
{ {
Modules = newModules Modules = newModules
}; };
if(assignment.CanvasId != null && planner.LocalCourse.CanvasId != null) if (assignment.CanvasId != null && planner.LocalCourse.CanvasId != null)
{ {
ulong courseId = planner.LocalCourse.CanvasId ?? throw new Exception("cannot delete if no course id"); ulong courseId = planner.LocalCourse.CanvasId ?? throw new Exception("cannot delete if no course id");
await canvas.Assignments.Delete(courseId, assignment); await canvas.Assignments.Delete(courseId, assignment);
@@ -145,52 +145,31 @@
<Title> <Title>
@Assignment.Name @Assignment.Name
</Title> </Title>
<Body> <Body>
<form @onsubmit:preventDefault="true" @onsubmit="submitHandler"> <form @onsubmit:preventDefault="true" @onsubmit="submitHandler">
<div class="m-1"> <div class="m-1">
<label <label class="form-label">
class="form-label"
>
Name Name
</label> </label>
<input <input class="form-control" @bind="name" />
class="form-control"
@bind="name"
/>
</div> </div>
<div class="m-1"> <div class="m-1">
<AssignmentDescriptionEditor <AssignmentDescriptionEditor Assignment="Assignment" />
Assignment="Assignment"
/>
</div> </div>
<div class="form-check m-1"> <div class="form-check m-1">
<input <input class="form-check-input" id="lockAtDueDate" type="checkbox" />
class="form-check-input" <label class="form-check-label" for="lockAtDueDate" @bind="lockAtDueDate">
id="lockAtDueDate"
type="checkbox"
/>
<label
class="form-check-label"
for="lockAtDueDate"
@bind="lockAtDueDate"
>
Lock At Due Date Lock At Due Date
</label> </label>
</div> </div>
<RubricEditor Rubric="rubric" SetRubric="updateRubric" /> <RubricEditor Rubric="rubric" SetRubric="updateRubric" />
<SubmissionTypeSelector <SubmissionTypeSelector Types="submissionTypes" SetTypes="SetTypes" />
Types="submissionTypes"
SetTypes="SetTypes"
/>
</form> </form>
</Body> </Body>
<Footer> <Footer>
<ConfirmationModal <ConfirmationModal Label="Delete" Class="btn btn-danger" OnConfirmAsync="HandleDelete" />
Label="Delete"
Class="btn btn-danger"
OnConfirmAsync="HandleDelete"
/>
<button class="btn btn-primary" @onclick="@(() => AssignmentModal?.Hide())"> <button class="btn btn-primary" @onclick="@(() => AssignmentModal?.Hide())">
Save Save
</button> </button>

View File

@@ -31,8 +31,8 @@
} }
} }
<div class="modal @modalClass"> <div class="modal @modalClass" @onclick="Hide">
<div class="modal-dialog modal-xl" role="document"> <div class="modal-dialog modal-xl" role="document" @onclick:stopPropagation="true">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h4 class="modal-title text-center w-100">@Title</h4> <h4 class="modal-title text-center w-100">@Title</h4>
@@ -46,5 +46,7 @@
@if (showBackdrop) @if (showBackdrop)
{ {
<div class="modal-backdrop fade show"></div> <div
class="modal-backdrop fade show"
></div>
} }