purr

password generation and secret sharing
Log | Files | Refs | README | LICENSE

Templates.hs (894B)


      1 {-# LANGUAGE QuasiQuotes     #-}
      2 {-# LANGUAGE TemplateHaskell #-}
      3 
      4 module Core.Templates ( renderIndex, renderStyle, hxVals ) where
      5 
      6 import           Text.Blaze.Html
      7 import           Text.Blaze.Html.Renderer.Text (renderHtml)
      8 import           Text.Cassius                  (cassiusFile, renderCss)
      9 import           Text.Hamlet                   (shamletFile)
     10 
     11 import qualified Data.Text                     as T
     12 import qualified Data.Text.Lazy                as LT
     13 
     14 import           Prelude
     15 
     16 renderIndex :: String -> String -> LT.Text
     17 renderIndex link email = renderHtml ( $(shamletFile "./views/index.hamlet") )
     18   where
     19     hsUserLink = hxVals "userLink" link
     20 
     21 renderStyle :: LT.Text
     22 renderStyle = renderCss ( $(cassiusFile "./views/cassius/style.cassius") "/style.css" )
     23 
     24 hxVals :: String -> String -> (String, String)
     25 hxVals attr str = ("hx-vals", "{\"" <> attr <> "\": \"" <> str <> "\"}")