mirror of
https://github.com/alexmickelson/canvasManagement.git
synced 2026-03-25 23:28:33 -06:00
moved assignment editing to its own page
This commit is contained in:
@@ -190,7 +190,7 @@
|
||||
<div class="col">
|
||||
<textarea
|
||||
id="description"
|
||||
class="form-control"
|
||||
class="form-control h-100"
|
||||
rows=12
|
||||
@bind="description"
|
||||
@oninput="handleNewDescription"
|
||||
|
||||
@@ -4,18 +4,19 @@
|
||||
|
||||
@inject CoursePlanner planner
|
||||
@inject CanvasService canvas
|
||||
@inject NavigationManager Navigation
|
||||
@inject AssignmentEditorContext assignmentContext
|
||||
|
||||
@code {
|
||||
protected override void OnInitialized()
|
||||
{
|
||||
assignmentContext.StateHasChanged += reload;
|
||||
reload();
|
||||
}
|
||||
private void reload()
|
||||
{
|
||||
if (assignmentContext.Assignment != null)
|
||||
{
|
||||
AssignmentModal?.Show();
|
||||
name = assignmentContext.Assignment.Name;
|
||||
lockAtDueDate = assignmentContext.Assignment.LockAtDueDate;
|
||||
}
|
||||
@@ -32,7 +33,6 @@
|
||||
name = "";
|
||||
lockAtDueDate = false;
|
||||
}
|
||||
public Modal? AssignmentModal { get; set; } = null;
|
||||
private string name { get; set; } = String.Empty;
|
||||
private bool lockAtDueDate { get; set; }
|
||||
|
||||
@@ -48,7 +48,6 @@
|
||||
|
||||
assignmentContext.SaveAssignment(newAssignment);
|
||||
}
|
||||
AssignmentModal?.Hide();
|
||||
assignmentContext.Assignment = null;
|
||||
}
|
||||
|
||||
@@ -86,7 +85,6 @@
|
||||
await canvas.Assignments.Delete(courseId, assignment);
|
||||
}
|
||||
}
|
||||
AssignmentModal?.Hide();
|
||||
}
|
||||
|
||||
private void handleNameChange(ChangeEventArgs e)
|
||||
@@ -134,65 +132,58 @@
|
||||
.FirstOrDefault(g => g.Id == assignmentContext.Assignment?.LocalAssignmentGroupId);
|
||||
}
|
||||
|
||||
<Modal @ref="AssignmentModal" OnHide="OnHide" Size="xl">
|
||||
<Title>
|
||||
@assignmentContext.Assignment?.Name
|
||||
</Title>
|
||||
@assignmentContext.Assignment?.Name
|
||||
|
||||
<Body>
|
||||
@if (assignmentContext.Assignment != null)
|
||||
{
|
||||
<div class="m-1">
|
||||
<label class="form-label">
|
||||
Name
|
||||
</label>
|
||||
<input
|
||||
class="form-control"
|
||||
@bind="name"
|
||||
@oninput="handleNameChange"
|
||||
/>
|
||||
</div>
|
||||
<ButtonSelect
|
||||
Label="Assignment Group"
|
||||
Options="planner.LocalCourse.AssignmentGroups"
|
||||
GetId="(g) => g.Id"
|
||||
GetName="(g) => g.Name"
|
||||
OnSelect="(g) => setAssignmentGroup(g)"
|
||||
SelectedOption="selectedAssignmentGroup"
|
||||
/>
|
||||
<div class="m-1">
|
||||
<AssignmentDescriptionEditor />
|
||||
</div>
|
||||
@if (assignmentContext.Assignment != null)
|
||||
{
|
||||
<div class="m-1">
|
||||
<label class="form-label">
|
||||
Name
|
||||
</label>
|
||||
<input
|
||||
class="form-control"
|
||||
@bind="name"
|
||||
@oninput="handleNameChange"
|
||||
/>
|
||||
</div>
|
||||
<ButtonSelect
|
||||
Label="Assignment Group"
|
||||
Options="planner.LocalCourse.AssignmentGroups"
|
||||
GetId="(g) => g.Id"
|
||||
GetName="(g) => g.Name"
|
||||
OnSelect="(g) => setAssignmentGroup(g)"
|
||||
SelectedOption="selectedAssignmentGroup"
|
||||
/>
|
||||
<div class="m-1">
|
||||
<AssignmentDescriptionEditor />
|
||||
</div>
|
||||
|
||||
<div class="form-check m-1">
|
||||
<input
|
||||
class="form-check-input"
|
||||
id="lockAtDueDate"
|
||||
type="checkbox"
|
||||
@bind="lockAtDueDate"
|
||||
@oninput="handleLockAtDueDateChange"
|
||||
/>
|
||||
<label
|
||||
class="form-check-label"
|
||||
for="lockAtDueDate"
|
||||
>
|
||||
Lock At Due Date
|
||||
</label>
|
||||
</div>
|
||||
<RubricEditor />
|
||||
<SubmissionTypeSelector />
|
||||
}
|
||||
</Body>
|
||||
<Footer>
|
||||
<ConfirmationModal Label="Delete" Class="btn btn-danger" OnConfirmAsync="HandleDelete" />
|
||||
<button
|
||||
class="btn btn-primary"
|
||||
@onclick="@(() => {
|
||||
AssignmentModal?.Hide();
|
||||
assignmentContext.Assignment = null;
|
||||
})"
|
||||
<div class="form-check m-1">
|
||||
<input
|
||||
class="form-check-input"
|
||||
id="lockAtDueDate"
|
||||
type="checkbox"
|
||||
@bind="lockAtDueDate"
|
||||
@oninput="handleLockAtDueDateChange"
|
||||
/>
|
||||
<label
|
||||
class="form-check-label"
|
||||
for="lockAtDueDate"
|
||||
>
|
||||
Done
|
||||
</button>
|
||||
</Footer>
|
||||
</Modal>
|
||||
Lock At Due Date
|
||||
</label>
|
||||
</div>
|
||||
<RubricEditor />
|
||||
<SubmissionTypeSelector />
|
||||
}
|
||||
<ConfirmationModal Label="Delete" Class="btn btn-danger" OnConfirmAsync="HandleDelete" />
|
||||
<button
|
||||
class="btn btn-primary"
|
||||
@onclick="@(() => {
|
||||
assignmentContext.Assignment = null;
|
||||
Navigation.NavigateTo("/course/" + planner.LocalCourse?.Name);
|
||||
})"
|
||||
>
|
||||
Done
|
||||
</button>
|
||||
|
||||
|
||||
@@ -40,7 +40,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
<AssignmentForm />
|
||||
<QuizForm />
|
||||
|
||||
<div class="row">
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
|
||||
void handleClick(MouseEventArgs e, LocalCourse course)
|
||||
{
|
||||
logger.LogInformation("here");
|
||||
@* logger.LogInformation("here"); *@
|
||||
planner.LocalCourse = course;
|
||||
Navigation.NavigateTo("/course/" + course.Name);
|
||||
Console.WriteLine("navigated to course detail");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
<div class="text-center">
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
@inject DragContainer dragContainer
|
||||
@inject CoursePlanner planner
|
||||
@inject NavigationManager Navigation
|
||||
@inject AssignmentEditorContext assignmentContext
|
||||
|
||||
@inherits DroppableAssignment
|
||||
@@ -44,6 +45,11 @@
|
||||
.FirstOrDefault(
|
||||
a => a.Id == Assignment.CanvasId
|
||||
) != null;
|
||||
private void OnClick()
|
||||
{
|
||||
assignmentContext.Assignment = Assignment;
|
||||
Navigation.NavigateTo("/course/" + planner.LocalCourse.Name + "/assignment/" + Assignment.Id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -51,7 +57,7 @@
|
||||
draggable="true"
|
||||
@ondragstart="HandleDragStart"
|
||||
@ondragend="HandleDragEnd"
|
||||
@onclick="@(() => assignmentContext.Assignment = Assignment)"
|
||||
@onclick="OnClick"
|
||||
role="button"
|
||||
>
|
||||
<div class="card">
|
||||
|
||||
@@ -2,8 +2,10 @@
|
||||
|
||||
@inject DragContainer dragContainer
|
||||
@inject CoursePlanner planner
|
||||
@inject NavigationManager Navigation
|
||||
@inject AssignmentEditorContext assignmentContext
|
||||
|
||||
@inject ILogger<AssignmentInDay> logger
|
||||
@inherits DroppableAssignment
|
||||
|
||||
@code {
|
||||
@@ -29,13 +31,23 @@
|
||||
{
|
||||
dragContainer.DropCallback = null;
|
||||
}
|
||||
|
||||
private void OnClick()
|
||||
{
|
||||
if(planner.LocalCourse != null)
|
||||
{
|
||||
assignmentContext.Assignment = Assignment;
|
||||
Navigation.NavigateTo("/course/" + planner.LocalCourse.Name + "/assignment/" + Assignment.Id);
|
||||
logger.LogInformation("navigating to assignment page");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
<div
|
||||
draggable="true"
|
||||
@ondragstart="HandleDragStart"
|
||||
@ondragend="HandleDragEnd"
|
||||
@onclick="@(() => assignmentContext.Assignment = Assignment)"
|
||||
@onclick="OnClick"
|
||||
role="button"
|
||||
>
|
||||
@Assignment.Name
|
||||
|
||||
Reference in New Issue
Block a user