From 86f9991deeb44a6cc81044e61a9ad3ee001c5ced Mon Sep 17 00:00:00 2001 From: Joris Guyonvarch Date: Sat, 18 Apr 2015 15:46:44 +0200 Subject: Send both plain text and html in mail notifications --- src/View/Ad.hs | 92 ---------------------------------------------------------- 1 file changed, 92 deletions(-) delete mode 100644 src/View/Ad.hs (limited to 'src/View/Ad.hs') diff --git a/src/View/Ad.hs b/src/View/Ad.hs deleted file mode 100644 index ec5da2d..0000000 --- a/src/View/Ad.hs +++ /dev/null @@ -1,92 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} - -module View.Ad - ( renderConsoleAds - , renderAds - ) where - -import Data.List (intersperse) -import Data.Maybe (fromMaybe) - -import Data.Text (Text) -import qualified Data.Text as T - -import Model.Ad (Ad(..)) -import qualified Model.Ad as Ad - -import Model.Resume (Resume(..)) -import qualified Model.Resume as Resume - -import Model.Detail (Detail(..)) -import qualified Model.Detail as Detail - -import Model.URL - -renderConsoleAds :: Text -> [Ad] -> Text -renderConsoleAds time ads = - let (title, message) = renderAds ads - titleWithTime = - T.concat - [ "\n[" - , time - , "] " - , title - ] - line = T.map (\_ -> '-') titleWithTime - in T.intercalate - "\n" - [ titleWithTime - , line - , "" - , message - ] - -renderAds :: [Ad] -> (Text, Text) -renderAds ads = - let titleMessage = renderTitle $ length ads - adsMessage = T.intercalate "\n\n" . map renderAd $ ads - in (titleMessage, adsMessage) - -renderTitle :: Int -> Text -renderTitle count = - T.concat - [ T.pack . show $ count - , agreement " nouvelle" - , agreement " annonce" - ] - where agreement word = - T.concat - [ word - , if count > 1 then "s" else "" - ] - -renderAd :: Ad -> Text -renderAd ad = - T.concat - [ renderResume (Ad.resume ad) - , "\n\n" - , renderDetail (Ad.detail ad) - ] - -renderResume :: Resume -> Text -renderResume resume = - let formatPrice price = T.concat [" - ", price] - price = fromMaybe "" . fmap formatPrice . Resume.price $ resume - titleLine = T.concat [Resume.name resume, price] - in T.intercalate "\n" [titleLine, Resume.url resume] - -renderDetail :: Detail -> Text -renderDetail detail = - T.concat - [ fromMaybe "−" (Detail.description detail) - , renderURLs "\n\nImages" (Detail.images detail) - ] - -renderURLs :: Text -> [URL] -> Text -renderURLs title [] = "" -renderURLs title urls = - T.concat - [ title - , "\n\n" - , T.intercalate "\n" urls - ] -- cgit v1.2.3