-- SPDX-FileCopyrightText: 2022 Gregor Kleen <gregor.kleen@ifi.lmu.de>,Steffen Jost <jost@tcs.ifi.lmu.de>
--
-- SPDX-License-Identifier: AGPL-3.0-or-later

{-# OPTIONS_GHC -fno-warn-unused-do-bind #-} -- ihamletFile discards do results

module Jobs.Handler.SendNotification.UserAuthModeUpdate
  ( dispatchNotificationUserAuthModeUpdate
  ) where

import Import

import Auth.PWHash (PWHashMessage(..))

import Handler.Utils.Mail
-- import Handler.Utils.Widgets (simpleLink, simpleLinkI)
import Jobs.Handler.SendNotification.Utils

import Text.Hamlet
-- import qualified Data.CaseInsensitive as CI

dispatchNotificationUserAuthModeUpdate :: UserId -> UserId -> Handler ()
dispatchNotificationUserAuthModeUpdate  nUser jRecipient = userMailT jRecipient $ do
    User{..} <- liftHandler . runDB $ getJust nUser
    replaceMailHeader "Auto-Submitted" $ Just "auto-generated"
    setSubjectI MsgMailSubjectUserAuthModeUpdate

    editNotifications <- ihamletSomeMessage <$> mkEditNotifications jRecipient
    -- let linkRoot :: Widget = simpleLink (text2widget "FRADrive")  NewsR -- TODO: use MsgMailFradrive instead
    addHtmlMarkdownAlternatives ($(ihamletFile "templates/mail/userAuthModeUpdate.hamlet") :: HtmlUrlI18n (SomeMessage UniWorX) (Route UniWorX))

