From 90a5f07c0412c6820f935b483db8645bcefba160 Mon Sep 17 00:00:00 2001 From: Steffen Jost Date: Tue, 20 Dec 2022 17:39:21 +0100 Subject: [PATCH] fix(mail): fix various minor email attachment problems --- .../categories/send/send_notifications/de-de-formal.msg | 2 +- src/Handler/Admin/Avs.hs | 2 +- src/Handler/Utils/Mail.hs | 8 ++++++-- src/Utils/Print.hs | 2 +- templates/mail/genericMailLetter.hamlet | 8 ++++---- 5 files changed, 13 insertions(+), 9 deletions(-) diff --git a/messages/uniworx/categories/send/send_notifications/de-de-formal.msg b/messages/uniworx/categories/send/send_notifications/de-de-formal.msg index d41551a38..e3d2592f9 100644 --- a/messages/uniworx/categories/send/send_notifications/de-de-formal.msg +++ b/messages/uniworx/categories/send/send_notifications/de-de-formal.msg @@ -98,6 +98,6 @@ MailEditNotifications: Benachrichtigungen ein-/ausschalten MailSupervisorNote: Hinweis für Ansprechpartner MailSupervisorBody undername@Text supername@Text: Sie erhalten diese Nachricht, da #{supername} als Ansprechpartner für #{undername} eingetragen ist in MailSupervisorCopy undermail@Text: Diese Nachricht ist eine Kopie einer Nachricht, welche an #{undermail} gesendet wurde. -MailSupervisorNoCopy: Warnung: Diese Nachricht wurde nicht an den eingentlichen Empfänger versandt! Für die Weiterleitung sind alle für diesen Empfänger in FRADrive eingetragenen Ansprechpartner verantwortlich! +MailSupervisorNoCopy: Warnung: Diese Nachricht wurde nicht an den eigentlichen Empfänger versandt! Für die Weiterleitung sind alle für diesen Empfänger in FRADrive eingetragenen Ansprechpartner verantwortlich! MailSupervisedNote: Hinweis MailSupervisedBody: Eine Kopie dieser Nachricht wurde auch an folgende in FRADrive eingetragene Ansprechpartner gesendet: \ No newline at end of file diff --git a/src/Handler/Admin/Avs.hs b/src/Handler/Admin/Avs.hs index 7cefeec17..a9c8f3fc4 100644 --- a/src/Handler/Admin/Avs.hs +++ b/src/Handler/Admin/Avs.hs @@ -305,7 +305,7 @@ data LicenceTableActionData = LicenceTableChangeAvsData postProblemAvsSynchR, getProblemAvsSynchR :: Handler Html postProblemAvsSynchR = getProblemAvsSynchR getProblemAvsSynchR = do - _now <- liftIO getCurrentTime + now <- liftIO getCurrentTime let _nowaday = utctDay now -- TODO: just for Testing diff --git a/src/Handler/Utils/Mail.hs b/src/Handler/Utils/Mail.hs index 227e5ebf2..81d200698 100644 --- a/src/Handler/Utils/Mail.hs +++ b/src/Handler/Utils/Mail.hs @@ -61,6 +61,7 @@ userMailT uid mAct = do let undername = underling ^. _userDisplayName -- nameHtml' underling undermail = CI.original $ underling ^. _userEmail infoSupervised :: Hamlet.HtmlUrlI18n UniWorXSendMessage (Route UniWorX) = [ihamlet| +

_{MsgMailSupervisedNote}

_{MsgMailSupervisedBody} @@ -88,12 +89,13 @@ userMailT uid mAct = do } supername = supervisor ^. _userDisplayName -- nameHtml' supervisor infoSupervisor :: Hamlet.HtmlUrlI18n UniWorXSendMessage (Route UniWorX) = [ihamlet| +

_{MsgMailSupervisorNote}

_{MsgMailSupervisorBody undername supername} # FRADrive - . + . # $if undercopy _{MsgMailSupervisorCopy undermail} $else @@ -105,7 +107,7 @@ userMailT uid mAct = do if uid==svr then when (2 <= length receivers) $ addHtmlMarkdownAlternatives' "InfoSupervised" infoSupervised -- notify about supervisors else do - mapSubject ("[SUPERVISOR]" <>) + mapSubject ("[SUPERVISOR] " <>) addHtmlMarkdownAlternatives' "InfoSupervisor" infoSupervisor -- adding explanation why the supervisor received this email @@ -188,6 +190,7 @@ addHtmlMarkdownAlternatives html' = do where writerOptions = markdownWriterOptions { P.writerReferenceLinks = True + , P.writerPreferAscii = True } -- | Like @addHtmlMarkdownAlternatives, but adds subseqeunt parts with "content-disposition: inline" and the provided filename, if inline display is not permitted (receiver's choice) @@ -205,4 +208,5 @@ addHtmlMarkdownAlternatives' fn html' = do where writerOptions = markdownWriterOptions { P.writerReferenceLinks = True + , P.writerPreferAscii = True } diff --git a/src/Utils/Print.hs b/src/Utils/Print.hs index ca46799ed..56ca0af3e 100644 --- a/src/Utils/Print.hs +++ b/src/Utils/Print.hs @@ -472,7 +472,7 @@ sendEmailOrLetter recipient letter = do editNotifications <- mkEditNotifications svr let supername = rcvrUsr ^. _userDisplayName -- nameHtml' rcvrUsr addHtmlMarkdownAlternatives $(ihamletFile "templates/mail/genericMailLetter.hamlet") - addPart (File { fileTitle = T.unpack $ pjiName pjid + addPart (File { fileTitle = T.unpack $ pjiName pjid <> ".pdf" , fileModified = now , fileContent = Just $ yield $ LBS.toStrict attachment } :: PureFile) diff --git a/templates/mail/genericMailLetter.hamlet b/templates/mail/genericMailLetter.hamlet index e705cc467..703596b65 100644 --- a/templates/mail/genericMailLetter.hamlet +++ b/templates/mail/genericMailLetter.hamlet @@ -19,7 +19,7 @@ $# SPDX-License-Identifier: AGPL-3.0-or-later _{mailSubject}

- _{mailBody} + _{mailBody} $if isSupervised

_{SomeMessage MsgMailSupervisorNote} @@ -27,12 +27,12 @@ $# SPDX-License-Identifier: AGPL-3.0-or-later _{SomeMessage (MsgMailSupervisorBody undername supername)} # FRADrive - . + . # $if undercopy _{SomeMessage (MsgMailSupervisorCopy undermail)} $else _{SomeMessage MsgMailSupervisorNoCopy} - $else + $else

_{SomeMessage MsgMailSupervisedNote}

_{SomeMessage MsgMailSupervisedBody} @@ -40,5 +40,5 @@ $# SPDX-License-Identifier: AGPL-3.0-or-later $forall svr <- receivers

  • #{nameHtml' svr} - + ^{ihamletSomeMessage editNotifications}