diff --git a/src/Audit/Types.hs b/src/Audit/Types.hs index 5e0deef1d..c9e48beff 100644 --- a/src/Audit/Types.hs +++ b/src/Audit/Types.hs @@ -48,6 +48,10 @@ data Transaction , transactionUser :: UserId , transactionCourseApplication :: CourseApplicationId } + | TransactionSubmissionsCorrectorAssigned + { transactionSubmissions :: [SubmissionId] + , transactionUser :: UserId + } | TransactionSubmissionCorrectorUpdated { transactionSubmission :: SubmissionId , transactionMbUser :: Maybe UserId diff --git a/src/Handler/Corrections.hs b/src/Handler/Corrections.hs index b366885d3..240aeb720 100644 --- a/src/Handler/Corrections.hs +++ b/src/Handler/Corrections.hs @@ -459,11 +459,13 @@ correctionsR whereClause displayColumns dbtFilterUI psValidator actions = do content = Right $(widgetFile "messages/submissionsAssignUnauthorized") addMessageModal Warning trigger content unless (null unassignedAuth) $ do - num <- updateWhereCount [SubmissionId <-. Set.toList unassignedAuth] + let sIds = Set.toList unassignedAuth + num <- updateWhereCount [SubmissionId <-. sIds] [ SubmissionRatingBy =. Just uid , SubmissionRatingAssigned =. Just now -- save, since only applies to unassigned ] addMessageI Success $ MsgUpdatedAssignedCorrectorSingle num + audit $ TransactionSubmissionsCorrectorAssigned sIds uid (E.Value selfCorrectors:_) <- E.select . E.from $ \(submission `E.InnerJoin` subuser) -> do E.on $ submission E.^. SubmissionId E.==. subuser E.^. SubmissionUserSubmission E.where_ $ submission E.^. SubmissionId `E.in_` E.valList subs