smarter canvas updates, only update when a change is detected

This commit is contained in:
2023-07-31 14:06:40 -06:00
parent e987df30d3
commit 70db40867c
13 changed files with 465 additions and 204 deletions

View File

@@ -14,19 +14,24 @@
}
protected override async Task OnInitializedAsync()
{
if(
planner.CanvasAssignments == null
&& planner.LocalCourse != null
&& planner.LocalCourse.CanvasId != null
)
{
var canvasId = planner.LocalCourse.CanvasId ?? throw new Exception("no canvas id found for selected course");
planner.CanvasAssignments = await canvas.GetAssignments(canvasId);
planner.CanvasModules = await canvas.GetModules(canvasId);
System.Console.WriteLine(JsonSerializer.Serialize(planner.CanvasAssignments));
}
await base.OnInitializedAsync();
}
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if(firstRender)
{
if(
planner.CanvasAssignments == null
&& planner.LocalCourse != null
&& planner.LocalCourse.CanvasId != null
)
{
await planner.LoadCanvasData();
}
}
}
private void reload()
{

View File

@@ -140,7 +140,19 @@
</h4>
@if(isSyncedWithCanvas)
{
<div>Synced With Canvas</div>
@if(planner.LocalCourse != null
&& planner.LocalCourse.CanvasId != null
&& planner.CanvasAssignments != null
&& planner.CanvasModules != null
&& planner.AssignmentNeedsUpdates(Assignment)
)
{
<div>need to update canvas</div>
}
else
{
<div>Canvas is up to date</div>
}
}
else
{