Bugfix: Homepage show multiple sheets

This commit is contained in:
SJost 2018-07-05 16:00:41 +02:00
parent 274cfc8987
commit 0341f8347e

View File

@ -120,13 +120,19 @@ homeUser uid = do
, E.SqlExpr (E.Value Text)
, E.SqlExpr (E.Value UTCTime)
, E.SqlExpr (E.Value (Maybe SubmissionId)))
tableData ((participant `E.InnerJoin` course `E.InnerJoin` sheet) `E.LeftOuterJoin` submission) = do
tableData ((participant `E.InnerJoin` course `E.InnerJoin` sheet) `E.LeftOuterJoin` (submission `E.InnerJoin` subuser)) = do
E.on $ submission E.?. SubmissionId E.==. subuser E.?. SubmissionUserSubmission
E.on $ E.just(sheet E.^. SheetId) E.==. submission E.?. SubmissionSheet
E.on $ course E.^. CourseId E.==. sheet E.^. SheetCourse
E.on $ course E.^. CourseId E.==. participant E.^. CourseParticipantCourse
E.where_ $ participant E.^. CourseParticipantUser E.==. E.val uid
E.&&. sheet E.^. SheetActiveTo E.<=. E.val fTime
E.&&. sheet E.^. SheetActiveTo E.>=. E.val cTime
E.&&. (
(subuser E.?. SubmissionUserUser E.==. (E.just $ E.val uid))
E.||.
(E.isNothing $ subuser E.?. SubmissionUserUser)
)
-- E.limit nrSheetDeadlines
return
( course E.^. CourseTerm
@ -182,7 +188,7 @@ homeUser uid = do
, SortColumn $ \(_ `E.InnerJoin` _ `E.InnerJoin` sheet `E.LeftOuterJoin` _) -> sheet E.^. SheetActiveTo
)
, ( "done"
, SortColumn $ \(_ `E.InnerJoin` _ `E.InnerJoin` _ `E.LeftOuterJoin` subm) -> E.isNothing $ subm E.?. SubmissionId
, SortColumn $ \(_ `E.InnerJoin` _ `E.InnerJoin` _ `E.LeftOuterJoin` (subm `E.InnerJoin` _)) -> E.isNothing $ subm E.?. SubmissionId
)
]
, dbtFilter = mempty {- [ ( "term"