bamboo-2009.5.13: src/Bamboo/View/Widget/Template.hs
{-# LANGUAGE NoMonomorphismRestriction#-}
{-# LANGUAGE NoImplicitPrelude #-}
module Bamboo.View.Widget.Template (page) where
import Bamboo.View.Widget.Head
import Bamboo.View.Widget.Body
import Bamboo.View.Widget.Header
import Bamboo.View.Widget.Navigation
import Bamboo.View.Widget.Sidebar
import Bamboo.View.Widget.Footer
import qualified Text.XHtml.Strict as Html
import qualified Bamboo.Config.Global as G
import qualified Bamboo.Type.Theme as T
import Bamboo.Helper.Env hiding (header, body)
-- extension
import Bamboo.Type.Extension
import Bamboo.Helper.StateHelper
import Web.HCheat
body t state x = Html.body <<
[ div_class (t.T.container) <<
[ header (t.T.header)
, navigation (t.T.navigation) state
, div_id "page" << [ div_class (t.T.main) << body_content x, sidebar (t.T.sidebar) state ]
, footer (t.T.footer)
]
, only_for Analytics $ primHtml (analytics G.analytics_account_id)
]
template t state x = [html_head state, body t state x] .toHtml
page = template G.theme