/** * Executes special page */ public function execute($par) { global $wgRequest; $wgFarmer = MediaWikiFarmer::getInstance(); $this->setHeaders(); $request = $par !== null ? $par : $wgRequest->getText('request'); $arr = explode('/', $request); if (count($arr) && $arr[0]) { if ($arr[0] == 'create') { $this->_executeCreate($wgFarmer, isset($arr[1]) ? $arr[1] : null); } elseif ($arr[0] == 'manageExtensions') { $this->_executeManageExtensions($wgFarmer); } elseif ($arr[0] == 'updateList') { $this->_executeUpdateList($wgFarmer); } elseif ($arr[0] == 'list') { $this->_executeList($wgFarmer); } elseif ($arr[0] == 'admin') { $this->_executeAdminister($wgFarmer); } elseif ($arr[0] == 'delete') { $this->_executeDelete($wgFarmer); } } else { // no parameters were given // display the main page $this->_executeMainPage($wgFarmer); } }
protected function _deleteWikiGroups() { if (MediaWikiFarmer::getInstance()->sharingGroups()) { $db = $this->getDatabase(); $query = 'DELETE FROM ' . $db->tableName('user_groups') . ' WHERE ug_group LIKE '; $query .= '\'[farmer][' . $this->_name . ']%\''; $db->query($query, __METHOD__); } }