32 lines
1.1 KiB
Haskell
32 lines
1.1 KiB
Haskell
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
|
|
|
|
|
|
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'
|