@using Management.Web.Shared.Components @using Management.Web.Shared.Components.AssignmentForm @inject DragContainer dragContainer @inject CoursePlanner planner @inject NavigationManager Navigation @inject AssignmentEditorContext assignmentContext @inherits DroppableAssignment @code { [Parameter] [EditorRequired] public LocalModule Module { get; set; } = new(); private bool showUpdateForm = false; protected override void OnInitialized() { planner.StateHasChanged += reload; } private void reload() { this.InvokeAsync(this.StateHasChanged); } public void Dispose() { planner.StateHasChanged -= reload; } private bool showAll { get; set; } = false; private void HandleDragStart() { dragContainer.DropCallback = DropCallback; } private void HandleDragEnd() { dragContainer.DropCallback = null; } private bool isSyncedWithCanvas => planner .CanvasAssignments? .FirstOrDefault( a => a.Id == Assignment.CanvasId ) != null; private void OnClick() { assignmentContext.Assignment = Assignment; Navigation.NavigateTo("/course/" + planner.LocalCourse?.Settings.Name + "/assignment/" + Assignment.Id); } }

@Assignment.Name

@if(isSyncedWithCanvas) { @if(planner.LocalCourse != null && planner.LocalCourse.Settings.CanvasId != null && planner.CanvasAssignments != null && planner.CanvasModules != null && Assignment.NeedsUpdates( planner.CanvasAssignments, planner.LocalCourse.Settings.AssignmentTemplates, Assignment.GetCanvasAssignmentGroupId(planner.LocalCourse.Settings.AssignmentGroups) ) ) { } else { } } else { }
@if(!showAll) {
Points: @Assignment.PointsPossible
Due At: @Assignment.DueAt
} else {
@((MarkupString) @Assignment.GetDescriptionHtml(planner.LocalCourse?.Settings.AssignmentTemplates))
Points: @Assignment.PointsPossible
Due At: @Assignment.DueAt
Lock At: @Assignment.LockAt
Submission Types:
    @foreach(var type in Assignment.SubmissionTypes) {
  • @type
  • }
} @if(!showAll) {
} else {
}