working with quiz editor

This commit is contained in:
2023-08-14 09:03:52 -06:00
parent 4de6122549
commit 1fe232f6a8
12 changed files with 250 additions and 58 deletions

View File

@@ -26,9 +26,7 @@ public class QuizEditorContext
{
if (planner.LocalCourse != null)
{
var currentModule =
planner.LocalCourse.Modules.First(m => m.Quizzes.Select(q => q.Id).Contains(newQuiz.Id))
?? throw new Exception("could not find current module in quiz editor context");
var currentModule = getCurrentModule(newQuiz, planner.LocalCourse);
var updatedModules = planner.LocalCourse.Modules
.Select(
@@ -48,4 +46,25 @@ public class QuizEditorContext
Quiz = newQuiz;
}
}
public void DeleteQuiz()
{
if (planner.LocalCourse != null && Quiz != null)
{
var currentModule = getCurrentModule(Quiz, planner.LocalCourse);
var updatedModules = planner.LocalCourse.Modules
.Where(m => m.Name != currentModule.Name)
.ToArray();
planner.LocalCourse = planner.LocalCourse with { Modules = updatedModules };
Quiz = null;
}
}
private static LocalModule getCurrentModule(LocalQuiz newQuiz, LocalCourse course)
{
return course.Modules.First(m => m.Quizzes.Select(q => q.Id).Contains(newQuiz.Id))
?? throw new Exception("could not find current module in quiz editor context");
}
}