module Panda.View.Control.Post where

-- env
import Panda.Helper.Env
import Prelude hiding ((.), (/), (^), id, span)

import qualified Panda.Type.State as State
import qualified Panda.Config.Global as G

import Panda.Type.Extension
import Panda.Helper.StateHelper

-- model
import qualified Panda.Model.Comment as Comment
import Panda.View.Atom.Post
import Panda.Model.Post

-- view
import Panda.View.Control.Helper
import qualified Panda.View.Control.Comment as CommentV
import Panda.View.Widget.Template

-- entry view
view state xs x = (x.render_data +++ comment_view ).page state
  where comment_view = only_for Comment $ CommentV.list xs +++ CommentV.create state (x.uid.Comment.from_post_id)

-- list view
list state = for_current_page p >>> map render >>> (+++ nav p G.root) >>> page state where 
  p = state.State.pager
  render = render_summary G.summary_for_root