From b9b85843572bf283f48285001e276ba7e61b63f6 Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Sun, 22 Feb 2009 13:37:51 +0100 Subject: updated to MediaWiki 1.14.0 --- includes/api/ApiPurge.php | 106 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 includes/api/ApiPurge.php (limited to 'includes/api/ApiPurge.php') diff --git a/includes/api/ApiPurge.php b/includes/api/ApiPurge.php new file mode 100644 index 00000000..d7202a46 --- /dev/null +++ b/includes/api/ApiPurge.php @@ -0,0 +1,106 @@ +extractRequestParams(); + if(!$wgUser->isAllowed('purge')) + $this->dieUsageMsg(array('cantpurge')); + if(!isset($params['titles'])) + $this->dieUsageMsg(array('missingparam', 'titles')); + $result = array(); + foreach($params['titles'] as $t) { + $r = array(); + $title = Title::newFromText($t); + if(!$title instanceof Title) + { + $r['title'] = $t; + $r['invalid'] = ''; + $result[] = $r; + continue; + } + ApiQueryBase::addTitleInfo($r, $title); + if(!$title->exists()) + { + $r['missing'] = ''; + $result[] = $r; + continue; + } + $article = new Article($title); + $article->doPurge(); // Directly purge and skip the UI part of purge(). + $r['purged'] = ''; + $result[] = $r; + } + $this->getResult()->setIndexedTagName($result, 'page'); + $this->getResult()->addValue(null, $this->getModuleName(), $result); + } + + public function getAllowedParams() { + return array ( + 'titles' => array( + ApiBase :: PARAM_ISMULTI => true + ) + ); + } + + public function getParamDescription() { + return array ( + 'titles' => 'A list of titles', + ); + } + + public function getDescription() { + return array ( + 'Purge the cache for the given titles.' + ); + } + + protected function getExamples() { + return array( + 'api.php?action=purge&titles=Main_Page|API' + ); + } + + public function getVersion() { + return __CLASS__ . ': $Id: ApiPurge.php 41020 2008-09-19 00:21:03Z demon $'; + } +} -- cgit v1.2.3-54-g00ecf