mediawiki-0.2: MediaWiki/API/Action/Rollback.hs
--------------------------------------------------------------------
-- |
-- Module : MediaWiki.API.Action.Rollback
-- Description : Representing Rollback requests.
-- Copyright : (c) Sigbjorn Finne, 2008
-- License : BSD3
--
-- Maintainer: Sigbjorn Finne <sof@forkIO.com>
-- Stability : provisional
-- Portability: portable
--
-- Representing Rollback requests.
--
--------------------------------------------------------------------
module MediaWiki.API.Action.Rollback where
import MediaWiki.API.Types
import MediaWiki.API.Utils
data RollbackRequest
= RollbackRequest
{ rbTitle :: PageName
, rbUser :: UserName
, rbToken :: Token
, rbSummary :: Maybe String
, rbMarkBot :: Maybe Bool
}
instance APIRequest RollbackRequest where
isPostable _ = True
showReq r =
[ opt "title" (rbTitle r)
, opt "user" (rbUser r)
, opt "token" (rbToken r)
, mbOpt "summary" id (rbSummary r)
, mbOpt "markbot" (\ x -> if x then "1" else "0") (rbMarkBot r)
]
emptyRollbackRequest :: RollbackRequest
emptyRollbackRequest = RollbackRequest
{ rbTitle = ""
, rbUser = ""
, rbToken = ""
, rbSummary = Nothing
, rbMarkBot = Nothing
}