module WeekDaze.TeacherView.Lesson(
Lesson,
fromStudentView,
toStudentView
) where
import qualified WeekDaze.Aggregate.StudentClass as Aggregate.StudentClass
import qualified WeekDaze.Model.Lesson as Model.Lesson
import qualified WeekDaze.StudentView.Lesson as StudentView.Lesson
import qualified WeekDaze.TeacherView.LessonResourceIds as TeacherView.LessonResourceIds
type Lesson locationId level = Model.Lesson.Lesson (TeacherView.LessonResourceIds.LessonResourceIds locationId) level
fromStudentView :: Show locationId => StudentView.Lesson.Lesson locationId teacherId level -> Aggregate.StudentClass.StudentClass -> Lesson locationId level
fromStudentView studentViewLesson studentClass = studentViewLesson {
Model.Lesson.getResourceIds = TeacherView.LessonResourceIds.fromStudentView (Model.Lesson.getResourceIds studentViewLesson) studentClass
}
toStudentView :: teacherId -> Lesson locationId level -> StudentView.Lesson.Lesson locationId teacherId level
toStudentView teacherId lesson = lesson {
Model.Lesson.getResourceIds = TeacherView.LessonResourceIds.toStudentView teacherId $ Model.Lesson.getResourceIds lesson
}