mediawiki-0.2: MediaWiki/API/Query/Templates.hs
--------------------------------------------------------------------
-- |
-- Module : MediaWiki.API.Query.Templates
-- Description : Representing 'templates' requests.
-- Copyright : (c) Sigbjorn Finne, 2008
-- License : BSD3
--
-- Maintainer: Sigbjorn Finne <sof@forkIO.com>
-- Stability : provisional
-- Portability: portable
--
-- Representing 'templates' requests.
--
--------------------------------------------------------------------
module MediaWiki.API.Query.Templates where
import MediaWiki.API.Types
import MediaWiki.API.Utils
data TemplatesRequest
= TemplatesRequest
{ tlNamespaces :: [NamespaceID]
, tlLimit :: Maybe Int
, tlContinueFrom :: Maybe String
}
instance APIRequest TemplatesRequest where
queryKind _ = QProp "templates"
showReq r
= [ opt1 "tlnamespace" (tlNamespaces r)
, mbOpt "tllimit" show (tlLimit r)
, mbOpt "tlcontinue" id (tlContinueFrom r)
]
emptyTemplatesRequest :: TemplatesRequest
emptyTemplatesRequest = TemplatesRequest
{ tlNamespaces = []
, tlLimit = Nothing
, tlContinueFrom = Nothing
}
data TemplatesResponse
= TemplatesResponse
{ tlPages :: [(PageTitle,[PageTitle])]
, tlContinue :: Maybe String
}
emptyTemplatesResponse :: TemplatesResponse
emptyTemplatesResponse = TemplatesResponse
{ tlPages = []
, tlContinue = Nothing
}