-------------------------------------------------------------------- -- | -- Module : MediaWiki.API.Action.Rollback -- Description : Representing Rollback requests. -- Copyright : (c) Sigbjorn Finne, 2008 -- License : BSD3 -- -- Maintainer: Sigbjorn Finne -- 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 }