{-# LANGUAGE TemplateHaskell, QuasiQuotes, TypeFamilies, ViewPatterns, OverloadedStrings #-} module Web.Informative.Data where import Data.Text import Yesod data Informative = Informative { getSegment :: Text, getPrefix :: Text } mkYesodSubData "Informative" [parseRoutes| /article/#Text ArticleR GET /articleid/#Text ArticleIdR GET /edit/#Text EditR GET POST /insert/#Text InsertR GET POST /prepend/#Text PrependR GET POST /down/#Text DownR POST /up/#Text UpR POST /delete/#Text DeleteR POST /create/#Text CreateR GET POST |] data TextFormat = Markdown | MediaWiki | ReStructuredText | LaTeX | Textile | Source Text Int | Plain deriving (Eq,Ord,Show,Read) derivePersistField "TextFormat" data TextKind = Article | Table | Mapping | Hint | Error deriving (Eq, Ord, Show, Read, Enum, Bounded) derivePersistField "TextKind"