{-# LANGUAGE NoImplicitPrelude #-} module Bamboo.Theme.MiniHTML5.Widget.Sidebar where import Bamboo.Theme.MiniHTML5.Env import Bamboo.Theme.MiniHTML5.Widget.Helper import qualified Bamboo.Model.Tag as Tag import qualified Bamboo.Type.Config as C import qualified Bamboo.Type.State as State import qualified Bamboo.Type.StaticWidget as Sidebar import qualified Data.Set as Set sidebar :: Widget sidebar s = aside [_class "sidebar"] - do section' - do header' - str "Subscribe" rss_url_link_pair s .snd hr' section' - do header' - str "Tags" ul' - do s.State.tags.Tag.sorted.mapM_ tag_link' s.config.C.sidebar.mapM_ custom_side where custom_side x = do hr' section' - do header' - str - x.Sidebar.name x.markup.show_html tag_link' x = li' - do a [href - s.env.slashed_script_name / x.Tag.uid] - str - x.Tag.name str - " (" ++ x.Tag.resources.Set.size.show ++ ")"