antagonist-0.1.0.26: ironforge-yesod.hs
{-# LANGUAGE QuasiQuotes, TemplateHaskell, TypeFamilies, MultiParamTypeClasses, OverloadedStrings #-}
import Game.Antisplice.Dungeon.Ironforge
import Web.Antagonist.Server
import Data.Chatty.AVL
import Data.IORef
import Text.Hamlet
import qualified Data.Text as T
import Yesod
data Master = Master { getSingleUserSub :: SingleUserSub }
mkYesod "Master" [parseRoutes|
/ HomeR GET
/su SubsiteR SingleUserSub getSingleUserSub
|]
instance Yesod Master
instance YesodAntagonist Master
instance RenderMessage Master FormMessage where
renderMessage _ _ = defaultFormMessage
getHomeR :: HandlerT Master IO Html
getHomeR = defaultLayout $ do
setTitle $ toHtml ("Antisplice-Web" :: T.Text)
toWidget $ $(hamletFile "home.htm")
main = do
ctrref <- newIORef 0
avlref <- newIORef EmptyAVL
warp 3000 $ Master $ SingleUserSub ctrref avlref ironforge