fix(schedule): treat exam occurrences independently from course schedule opts
This commit is contained in:
parent
b0023dfa67
commit
4282af893d
@ -90,16 +90,12 @@ examOccurrenceShouldBeDisplayed muid@(Just uid) ata now course exam examOcc = E.
|
|||||||
return $ examOccScheduleOpt E.^. ExamOccurrenceScheduleOptOpt
|
return $ examOccScheduleOpt E.^. ExamOccurrenceScheduleOptOpt
|
||||||
|
|
||||||
mCourseOpt = E.subSelect $ getCourseScheduleOpt course user
|
mCourseOpt = E.subSelect $ getCourseScheduleOpt course user
|
||||||
|
|
||||||
--_hasExamOccurrenceDisplayOptIn examOccurrence = E.exists . E.from $ \examOccurrenceScheduleOpt -> E.where_ $
|
|
||||||
-- examOccurrenceScheduleOpt E.^. ExamOccurrenceScheduleOptExamOccurrence E.==. examOccurrence E.^. ExamOccurrenceId
|
|
||||||
-- E.&&. E.just (examOccurrenceScheduleOpt E.^. ExamOccurrenceScheduleOptUser) E.==. E.val muid
|
|
||||||
-- E.&&. examOccurrenceScheduleOpt E.^. ExamOccurrenceScheduleOptOpt
|
|
||||||
in E.where_ $ user E.^. UserId E.==. E.val uid
|
in E.where_ $ user E.^. UserId E.==. E.val uid
|
||||||
E.&&. E.fromMaybe
|
E.&&. E.fromMaybe
|
||||||
( E.fromMaybe
|
( ( E.fromMaybe
|
||||||
( user E.^. UserScheduleOccurrenceDisplayDefault
|
(user E.^. UserScheduleOccurrenceDisplayDefault)
|
||||||
E.&&. ( isCourseLecturer muid ata (course E.^. CourseId)
|
mCourseOpt
|
||||||
|
) E.&&. ( isCourseLecturer muid ata (course E.^. CourseId)
|
||||||
E.||. ( mayViewCourse muid ata now course Nothing -- do NOT remove, this is actually necessary here!
|
E.||. ( mayViewCourse muid ata now course Nothing -- do NOT remove, this is actually necessary here!
|
||||||
-- (There can be exam participants that are
|
-- (There can be exam participants that are
|
||||||
-- not enrolled, me thinks)
|
-- not enrolled, me thinks)
|
||||||
@ -111,9 +107,7 @@ examOccurrenceShouldBeDisplayed muid@(Just uid) ata now course exam examOcc = E.
|
|||||||
E.&&. E.maybe E.true (\registrationOccurrence -> E.maybe E.false (const E.true) mExamOccOpt E.||. registrationOccurrence E.==. examOcc E.^. ExamOccurrenceId) (examRegistration E.^. ExamRegistrationOccurrence) -- if registered for a specific occurrence, get only this one and occurrences with an opt-in, otherwise get every occurrence available
|
E.&&. E.maybe E.true (\registrationOccurrence -> E.maybe E.false (const E.true) mExamOccOpt E.||. registrationOccurrence E.==. examOcc E.^. ExamOccurrenceId) (examRegistration E.^. ExamRegistrationOccurrence) -- if registered for a specific occurrence, get only this one and occurrences with an opt-in, otherwise get every occurrence available
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
|
||||||
)
|
)
|
||||||
mCourseOpt
|
|
||||||
)
|
)
|
||||||
mExamOccOpt
|
mExamOccOpt
|
||||||
examOccurrenceShouldBeDisplayed _ _ _ _ _ _ = E.false
|
examOccurrenceShouldBeDisplayed _ _ _ _ _ _ = E.false
|
||||||
|
|||||||
Reference in New Issue
Block a user