{-# LANGUAGE OverloadedStrings #-} module View.Scaffold where import Servant.Links import qualified Text.Blaze.Html5 as H import qualified Text.Blaze.Html5.Attributes as H import qualified Data.Text as T import Data.String (fromString) import Data.Text.I18n -- internal imports import Types.Page import API scaffold :: L10n -> Locale -> Page H.Html T.Text -> H.Html -> H.Html scaffold l10n locale page content = template page $ do H.header $ H.nav $ H.ul $ do H.li $ H.a H.! H.href (fromString $ show $ linkURI $ userSelectLink) $ H.toHtml $ localize l10n locale $ gettext "Home" H.hr H.div H.! H.id "main" H.! H.role "main" $ do content