mirror of
https://github.com/alexmickelson/canvasManagement.git
synced 2026-03-26 07:38:33 -06:00
finished CRUD on pages
This commit is contained in:
@@ -55,6 +55,39 @@
|
||||
private async Task HandleDelete()
|
||||
{
|
||||
|
||||
if (planner.LocalCourse != null && pageContext.Page != null)
|
||||
{
|
||||
var page = pageContext.Page;
|
||||
|
||||
var currentModule = planner
|
||||
.LocalCourse
|
||||
.Modules
|
||||
.First(m =>
|
||||
m.Pages.Contains(page)
|
||||
) ?? throw new Exception("handling page delete, could not find module");
|
||||
|
||||
var newModules = planner.LocalCourse.Modules.Select(m =>
|
||||
m.Name == currentModule.Name
|
||||
? m with
|
||||
{
|
||||
Pages = m.Pages.Where(p => p != page).ToArray()
|
||||
}
|
||||
: m
|
||||
)
|
||||
.ToArray();
|
||||
|
||||
planner.LocalCourse = planner.LocalCourse with
|
||||
{
|
||||
Modules = newModules
|
||||
};
|
||||
|
||||
if (pageInCanvas != null && planner.LocalCourse.Settings.CanvasId != null)
|
||||
{
|
||||
ulong courseId = planner.LocalCourse.Settings.CanvasId ?? throw new Exception("cannot delete if no course id");
|
||||
await canvas.Pages.Delete(courseId, pageInCanvas.PageId);
|
||||
}
|
||||
Navigation.NavigateTo("/course/" + planner.LocalCourse?.Settings.Name);
|
||||
}
|
||||
}
|
||||
|
||||
private void handleNameChange(ChangeEventArgs e)
|
||||
@@ -94,11 +127,10 @@
|
||||
return;
|
||||
|
||||
deletingPageFromCanvas = true;
|
||||
@* await canvas.Pages.Delete(
|
||||
await canvas.Pages.Delete(
|
||||
(ulong)planner.LocalCourse.Settings.CanvasId,
|
||||
pageInCanvas.Id,
|
||||
assignmentContext.Assignment.Name
|
||||
); *@
|
||||
pageInCanvas.PageId
|
||||
);
|
||||
await planner.LoadCanvasData();
|
||||
deletingPageFromCanvas = false;
|
||||
StateHasChanged();
|
||||
|
||||
Reference in New Issue
Block a user