bamboo-2009.6.6: src/Bamboo/Controller/Static.hs
{-# LANGUAGE NoMonomorphismRestriction #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE NamedFieldPuns #-}
module Bamboo.Controller.Static where
import Bamboo.Controller.Env
import qualified Bamboo.Model.Static as Static
import qualified Bamboo.Type as T
import qualified Bamboo.Type.State as S
import qualified Bamboo.View.Control.Static as StaticV
static_controller :: Controller
static_controller = do
init_state
s <- get
let uid = s.env.uri
static_model <- T.get uid .io
let nav_id = static_model.Static.uid.id_to_resource
nav_location =
if nav_id.belongs_to (s.config.T.navigation)
then nav_id
else no_navigation
put s
{ uid
, S.resource_title = static_model.resource_title
, nav_location
, S.static = static_model
}
static_view :: View
static_view = StaticV.view > output_html
static :: Application
static = run static_controller static_view