{-# 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