bamboo-2009.6.6: src/Bamboo/View/Control/Post.hs
{-# LANGUAGE NoImplicitPrelude #-}
module Bamboo.View.Control.Post where
-- env
import Bamboo.Helper.StateHelper
import Bamboo.Model.Post
import Bamboo.Type.State hiding (uid)
import Bamboo.View.Atom.Post
import Bamboo.View.Control.Helper
import Bamboo.View.Env hiding (p)
import Bamboo.View.Widget.Template
import qualified Bamboo.Model.Comment as Comment
import qualified Bamboo.Type as C
import qualified Bamboo.View.Control.Comment as CommentV
-- entry view
view :: Widget
view s = (x.render +++ comment_view ).page s
where
x = s.posts.first
render = entry s
xs = s.comments
comment_view = html_only_for Comment $
CommentV.list xs
+++ CommentV.create s (x.uid.Comment.from_post_id)
-- list view
list :: Widget
list s = s.posts.(map render > (+++ nav p (s.config.root)) > page s)
where
p = s.pager
render = entry s