This commit is contained in:
2024-02-07 16:21:04 -07:00
parent 292c06ecc9
commit 0881acd1f8
77 changed files with 239 additions and 204 deletions

View File

@@ -1,14 +1,14 @@
using CanvasModel.EnrollmentTerms;
using CanvasModel.Courses;
using CanvasModel;
using LocalModels;
using CanvasModel.Assignments;
using CanvasModel.Modules;
using Management.Services.Canvas;
using System.Text.RegularExpressions;
using CanvasModel.Quizzes;
using Management.Services;
using CanvasModel;
using CanvasModel.Assignments;
using CanvasModel.Courses;
using CanvasModel.EnrollmentTerms;
using CanvasModel.Modules;
using CanvasModel.Pages;
using CanvasModel.Quizzes;
using LocalModels;
using Management.Services;
using Management.Services.Canvas;
namespace Management.Planner;
@@ -181,13 +181,17 @@ public class CoursePlanner
CanvasAssignmentGroups = await canvas.AssignmentGroups.GetAll(canvasCourseId);
LocalCourse = LocalCourse with {Settings = LocalCourse.Settings with {
AssignmentGroups = LocalCourse.Settings.AssignmentGroups.Select(g => {
var canvasGroup = CanvasAssignmentGroups.FirstOrDefault(c => c.Name == g.Name);
return canvasGroup == null
? g
: g with {CanvasId = canvasGroup.Id};
})
LocalCourse = LocalCourse with
{
Settings = LocalCourse.Settings with
{
AssignmentGroups = LocalCourse.Settings.AssignmentGroups.Select(g =>
{
var canvasGroup = CanvasAssignmentGroups.FirstOrDefault(c => c.Name == g.Name);
return canvasGroup == null
? g
: g with { CanvasId = canvasGroup.Id };
})
}
};
}

View File

@@ -112,7 +112,7 @@ public class PageEditorContext(
var canvasModule = getCurrentCanvasModule(Page, planner.LocalCourse);
if(canvasPage != null)
if (canvasPage != null)
{
await canvas.CreatePageModuleItem(
(ulong)courseCanvasId,

View File

@@ -37,4 +37,4 @@ public static partial class AssignmentGroupSyncronizationExtensions
return assignmentGroups;
}
}
}

View File

@@ -140,13 +140,13 @@ public static partial class AssignmentSyncronizationExtensions
second: localAssignment.LockAt.Value.Second
)
: null;
if (canvasComparisonLockDate != localComparisonLockDate)
{
var printableLocal = localComparisonLockDate?.ToString() ?? "null";
var printableCanvas = canvasComparisonLockDate?.ToString() ?? "null";
var reason = $"Lock dates different for assignment {localAssignment.Name}, local: {printableLocal}, in canvas {printableCanvas}";
if (!quiet)
{
// Console.WriteLine(JsonSerializer.Serialize(canvasAssignment));

View File

@@ -39,14 +39,15 @@ public static partial class ModuleSyncronizationExtensions
{
var canvasModuleItems = await canvas.Modules.GetModuleItems(canvasId, moduleCanvasId);
var moduleItemsInCorrectOrder = canvasModuleItems
.OrderBy(canvasItem => {
.OrderBy(canvasItem =>
{
if(canvasItem.Type == "Page")
if (canvasItem.Type == "Page")
{
var localPage = localModule.Pages.FirstOrDefault(p => p.Name == canvasItem.Title);
Console.WriteLine(JsonSerializer.Serialize(localModule.Pages));
if(localPage != null)
if (localPage != null)
return localPage.DueAt.Date;
}
return canvasItem.ContentDetails?.DueAt?.Date;