{-# LANGUAGE RecordWildCards #-} {-# OPTIONS_GHC -F -pgmFhsx2hs #-} module Clckwrks.Bugs.Page.BugList where import Clckwrks import Clckwrks.Bugs.Acid import Clckwrks.Bugs.Monad import Clckwrks.Bugs.Types import Clckwrks.Bugs.URL import Clckwrks.Bugs.Page.Template (template) import Clckwrks.ProfileData.Acid (GetProfileData(..)) import qualified Data.IxSet as IxSet import Data.List (find) import Data.String (fromString) import qualified Data.Text.Lazy as Text import Numeric (showFFloat) import HSP.XML import HSP.XMLGenerator bugList :: BugsM Response bugList = template (fromString "Bug List") () <%>

Bug List

<% bugListWidget %> bugListWidget :: XMLGenT BugsM XML bugListWidget = do bugs <- query (AllBugMeta (Desc SortByBugId))
<% map showBugMeta bugs %>
# Title Status Assigned
showBugMeta :: BugMeta -> XMLGenT BugsM XML showBugMeta BugMeta{..} = <% bugId %> <% bugTitle %> <% show bugStatus %> <% case bugAssigned of Nothing -> <% () %> (Just u) -> do mpd <- query (GetProfileData u) case mpd of Nothing -> <% () %> (Just pd) -> <% username pd %> %>