aboutsummaryrefslogtreecommitdiff
path: root/src/View
diff options
context:
space:
mode:
authorJoris2016-07-14 15:47:33 +0200
committerJoris2016-07-14 15:47:33 +0200
commitb846aa65f8f21189f39236f88908267167004a35 (patch)
treed0c553170d4df005797139f6f304b24818ff6c29 /src/View
parent69e69017b75d1cdaa1fd2aef2818de5111b29735 (diff)
Add isPro info
Diffstat (limited to 'src/View')
-rw-r--r--src/View/Html/Ad.hs16
-rw-r--r--src/View/Html/Design.hs24
-rw-r--r--src/View/Plain/Ad.hs3
3 files changed, 29 insertions, 14 deletions
diff --git a/src/View/Html/Ad.hs b/src/View/Html/Ad.hs
index d8a3bae..53e63bf 100644
--- a/src/View/Html/Ad.hs
+++ b/src/View/Html/Ad.hs
@@ -32,7 +32,7 @@ import Model.URL
import Conf (Conf)
import qualified Conf
-import View.Html.Design
+import qualified View.Html.Design as Design
renderAds :: Conf -> [Ad] -> Text
renderAds conf = toStrict . renderHtml . (adsHtml conf)
@@ -56,10 +56,18 @@ resumeHtml resume = do
Just price ->
H.span
! A.class_ "price"
- ! A.style (textValue . toStrict $ priceDesign)
+ ! A.style (textValue . toStrict $ Design.price)
$ toHtml price
Nothing ->
H.span ""
+ if Resume.isPro resume
+ then
+ H.span
+ ! A.class_ "pro"
+ ! A.style (textValue . toStrict $ Design.pro)
+ $ "PRO"
+ else
+ ""
linkHtml (Resume.url resume)
detailHtml :: Conf -> Detail -> Html
@@ -75,7 +83,7 @@ detailHtml conf detail = do
propertiesHtml :: [Text] -> Map Text Text -> Html
propertiesHtml keys properties =
H.dl
- ! A.style (textValue . toStrict $ dlDesign)
+ ! A.style (textValue . toStrict $ Design.definitionList)
$ sequence_ (catMaybes $ map (propertyHtml properties) keys)
propertyHtml :: Map Text Text -> Text -> Maybe Html
@@ -83,7 +91,7 @@ propertyHtml properties key =
fmap
(\value -> do
H.dt $ (toHtml key)
- H.dd ! A.style (textValue . toStrict $ ddDesign) $ (toHtml value)
+ H.dd ! A.style (textValue . toStrict $ Design.definitionDescription) $ (toHtml value)
)
(M.lookup key properties)
diff --git a/src/View/Html/Design.hs b/src/View/Html/Design.hs
index 6ef5659..71fa09d 100644
--- a/src/View/Html/Design.hs
+++ b/src/View/Html/Design.hs
@@ -1,9 +1,10 @@
{-# LANGUAGE OverloadedStrings #-}
module View.Html.Design
- ( dlDesign
- , ddDesign
- , priceDesign
+ ( definitionList
+ , definitionDescription
+ , price
+ , pro
) where
import Data.Text.Lazy (Text)
@@ -11,19 +12,24 @@ import qualified Data.Text.Lazy as T
import Clay
-dlDesign :: Text
-dlDesign = inlineRender $ do
+definitionList :: Text
+definitionList = inlineRender $ do
fontWeight bold
fontSize (px 16)
-ddDesign :: Text
-ddDesign = inlineRender $ do
+definitionDescription :: Text
+definitionDescription = inlineRender $ do
marginLeft (px 0)
marginBottom (px 10)
color orangered
-priceDesign :: Text
-priceDesign = inlineRender $ do
+pro :: Text
+pro = inlineRender $ do
+ marginLeft (px 10)
+ color blue
+
+price :: Text
+price = inlineRender $ do
marginLeft (px 10)
color orangered
diff --git a/src/View/Plain/Ad.hs b/src/View/Plain/Ad.hs
index 75e35e2..b9e980e 100644
--- a/src/View/Plain/Ad.hs
+++ b/src/View/Plain/Ad.hs
@@ -75,7 +75,8 @@ renderResume :: Resume -> Text
renderResume resume =
let formatPrice price = T.concat [" - ", price]
getPrice = fromMaybe "" . fmap formatPrice . Resume.price $ resume
- titleLine = T.concat [Resume.name resume, getPrice]
+ isPro = if Resume.isPro resume then " - PRO" else ""
+ titleLine = T.concat [Resume.name resume, getPrice, isPro]
in T.intercalate "\n" [titleLine, Resume.url resume]
renderDetail :: Conf -> Detail -> Text