{-# LANGUAGE FlexibleContexts, OverloadedStrings, RecordWildCards #-} {-# OPTIONS_GHC -F -pgmFtrhsx #-} module Theme where import Clckwrks import Clckwrks.NavBar.API (getNavBarData) import Clckwrks.NavBar.Types (NavBar(..), NavBarItem(..)) import Clckwrks.ProfileData.Acid (HasRole(..)) import Data.Maybe (fromMaybe) import qualified Data.Set as Set import Data.Text (Text, unpack) import HSP import Paths_clckwrks_theme_happstack (getDataDir) ------------------------------------------------------------------------------ -- theme ------------------------------------------------------------------------------ theme :: Theme theme = Theme { themeName = "happstack" , _themeTemplate = standardTemplate , themeDataDir = getDataDir } ------------------------------------------------------------------------------ -- custom NavBar ------------------------------------------------------------------------------ genNavBar :: GenXML (Clck ClckURL) genNavBar = do menu <- lift getNavBarData navBarHTML menu navBarHTML :: NavBar -> GenXML (Clck ClckURL) navBarHTML (NavBar menuItems) =
mkNavBarItem :: NavBarItem -> GenXML (Clck ClckURL) mkNavBarItem (NBLink (NamedLink ttl lnk)) =