module Jobs.Handler.SendNotification ( dispatchJobSendNotification ) where import Import import Jobs.Types import Jobs.Handler.SendNotification.SubmissionRated import Jobs.Handler.SendNotification.SheetActive import Jobs.Handler.SendNotification.SheetInactive import Jobs.Handler.SendNotification.CorrectionsAssigned import Jobs.Handler.SendNotification.CorrectionsNotDistributed import Jobs.Handler.SendNotification.UserRightsUpdate import Jobs.Handler.SendNotification.UserAuthModeUpdate import Jobs.Handler.SendNotification.ExamActive import Jobs.Handler.SendNotification.ExamResult import Jobs.Handler.SendNotification.Allocation import Jobs.Handler.SendNotification.ExamOffice import Jobs.Handler.SendNotification.CourseRegistered import Jobs.Handler.SendNotification.SubmissionEdited dispatchJobSendNotification :: UserId -> Notification -> Handler () dispatchJobSendNotification jRecipient jNotification = do $(dispatchTH ''Notification) jNotification jRecipient instanceID' <- getsYesod $ view instanceID now <- liftIO getCurrentTime runDB . insert_ $ SentNotification (toJSON jNotification) jRecipient now instanceID'