mirror of
https://github.com/alexmickelson/canvasManagement.git
synced 2026-03-26 07:38:33 -06:00
before i get in a deeper hole
This commit is contained in:
@@ -92,6 +92,8 @@ public class CoursePlanner
|
||||
StateHasChanged?.Invoke();
|
||||
|
||||
var (canvasAssignments, canvasModules, canvasModuleItems) = await LoadCanvasData();
|
||||
LoadingCanvasData = true;
|
||||
StateHasChanged?.Invoke();
|
||||
LocalCourse = LocalCourse.deleteCanvasIdsThatNoLongerExist(canvasModules, canvasAssignments);
|
||||
|
||||
var canvasId =
|
||||
@@ -105,7 +107,7 @@ public class CoursePlanner
|
||||
|
||||
LocalCourse = await LocalCourse.SyncModulesWithCanvasData(canvasId, CanvasModules, canvas);
|
||||
|
||||
await LocalCourse.SyncAssignmentsWithCanvas(canvasId, CanvasAssignments, canvas);
|
||||
LocalCourse = await LocalCourse.SyncAssignmentsWithCanvas(canvasId, CanvasAssignments, canvas);
|
||||
CanvasAssignments = await canvas.Assignments.GetAll(canvasId);
|
||||
|
||||
await syncModuleItemsWithCanvas(canvasId);
|
||||
|
||||
@@ -111,7 +111,7 @@ public static class CoursePlannerSyncronizationExtensions
|
||||
|
||||
var canvasHtmlDescription = canvasAssignment.Description;
|
||||
canvasHtmlDescription = Regex.Replace(canvasHtmlDescription, "<script.*script>", "");
|
||||
canvasHtmlDescription = Regex.Replace(canvasHtmlDescription, "<link .*\">", "");
|
||||
canvasHtmlDescription = Regex.Replace(canvasHtmlDescription, "<link\\s+rel=\"[^\"]*\"\\s+href=\"[^\"]*\"[^>]*>", "");
|
||||
|
||||
var dueDatesSame = canvasAssignment.DueAt == localAssignment.due_at;
|
||||
var descriptionSame = canvasHtmlDescription == localHtmlDescription;
|
||||
@@ -131,11 +131,21 @@ public static class CoursePlannerSyncronizationExtensions
|
||||
|
||||
if (!descriptionSame)
|
||||
{
|
||||
Console.WriteLine();
|
||||
Console.WriteLine($"descriptions different for {localAssignment.name}");
|
||||
Console.WriteLine();
|
||||
|
||||
Console.WriteLine("Local Description:");
|
||||
Console.WriteLine(localHtmlDescription);
|
||||
Console.WriteLine();
|
||||
Console.WriteLine("Canvas Description: ");
|
||||
Console.WriteLine(canvasHtmlDescription);
|
||||
Console.WriteLine();
|
||||
Console.WriteLine("Canvas Raw Description: ");
|
||||
Console.WriteLine(canvasAssignment.Description);
|
||||
Console.WriteLine();
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (!nameSame)
|
||||
|
||||
@@ -8,17 +8,33 @@ public static class CoursePlannerExtensions
|
||||
{
|
||||
public static LocalCourse GeneralCourseCleanup(this LocalCourse incomingCourse)
|
||||
{
|
||||
var modulesWithUniqueAssignments = incomingCourse.Modules.Select(
|
||||
var cleanModules = incomingCourse.Modules.Select(
|
||||
module =>
|
||||
module with
|
||||
{
|
||||
Assignments = module.Assignments.OrderBy(a => a.due_at).DistinctBy(a => a.id)
|
||||
Assignments = module.Assignments
|
||||
.OrderBy(a => a.due_at)
|
||||
.DistinctBy(a => a.id)
|
||||
.Select(a => a.validateSubmissionTypes())
|
||||
}
|
||||
);
|
||||
|
||||
var cleanStartDay = new DateTime(
|
||||
incomingCourse.StartDate.Year,
|
||||
incomingCourse.StartDate.Month,
|
||||
incomingCourse.StartDate.Day
|
||||
);
|
||||
var cleanEndDay = new DateTime(
|
||||
incomingCourse.EndDate.Year,
|
||||
incomingCourse.EndDate.Month,
|
||||
incomingCourse.EndDate.Day
|
||||
);
|
||||
|
||||
return incomingCourse with
|
||||
{
|
||||
Modules = modulesWithUniqueAssignments
|
||||
Modules = cleanModules,
|
||||
StartDate = cleanStartDay,
|
||||
EndDate = cleanEndDay,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -80,4 +96,17 @@ public static class CoursePlannerExtensions
|
||||
}
|
||||
return assignment;
|
||||
}
|
||||
|
||||
public static LocalAssignment validateSubmissionTypes(this LocalAssignment assignment)
|
||||
{
|
||||
var containsDiscussion =
|
||||
assignment.submission_types.FirstOrDefault(t => t == SubmissionType.discussion_topic) != null;
|
||||
|
||||
if (containsDiscussion)
|
||||
return assignment with
|
||||
{
|
||||
submission_types = new string[] { SubmissionType.discussion_topic }
|
||||
};
|
||||
return assignment;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user