public function execute() { $params = $this->extractRequestParams(); $prop = array_flip((array) $params['prop']); $from = isset($params['from']) ? $params['from'] : null; $APIResult = $this->getResult(); $data = array(); /** * @var $wikiSet WikiSet */ foreach (WikiSet::getAllWikiSets($from, $params['limit'], $params['orderbyname']) as $wikiSet) { $entry = array(); $entry['id'] = $wikiSet->getId(); $entry['name'] = $wikiSet->getName(); if (isset($prop['type'])) { $entry['type'] = $wikiSet->getType(); } if (isset($prop['wikisincluded'])) { $entry['wikisincluded'] = $wikiSet->getWikis(); if (count($entry['wikisincluded'])) { $APIResult->setIndexedTagName($entry['wikisincluded'], 'wiki'); } } if (isset($prop['wikisnotincluded'])) { $entry['wikisnotincluded'] = array_diff(CentralAuthUser::getWikiList(), $wikiSet->getWikis()); if (count($entry['wikisnotincluded'])) { $APIResult->setIndexedTagName($entry['wikisnotincluded'], 'wiki'); } } $data[] = $entry; } $APIResult->setIndexedTagName($data, 'wikiset'); $APIResult->addValue('query', $this->getModuleName(), $data); }
/** * @param string $msg */ function buildMainView($msg = '') { // Give grep a chance to find the usages: centralauth-editset-legend-rw, centralauth-editset-legend-ro $msgPostfix = $this->mCanEdit ? 'rw' : 'ro'; $legend = $this->msg("centralauth-editset-legend-{$msgPostfix}")->text(); $this->getOutput()->addHTML("<fieldset><legend>{$legend}</legend>"); if ($msg) { $this->getOutput()->addHTML($msg); } // Give grep a chance to find the usages: centralauth-editset-intro-rw, centralauth-editset-intro-ro $this->getOutput()->addWikiMsg("centralauth-editset-intro-{$msgPostfix}"); $this->getOutput()->addHTML('<ul>'); // Give grep a chance to find the usages: centralauth-editset-item-rw, centralauth-editset-item-ro $sets = WikiSet::getAllWikiSets(); /** * @var $set WikiSet */ foreach ($sets as $set) { $text = $this->msg("centralauth-editset-item-{$msgPostfix}", $set->getName(), $set->getID())->parse(); $this->getOutput()->addHTML("<li>{$text}</li>"); } if ($this->mCanEdit) { $target = SpecialPage::getTitleFor('WikiSets', '0'); $newlink = Linker::link($target, $this->msg('centralauth-editset-new')->escaped()); $this->getOutput()->addHTML("<li>{$newlink}</li>"); } $this->getOutput()->addHTML('</ul></fieldset>'); }
/** * @param string $msg */ function buildMainView($msg = '') { $msgPostfix = $this->mCanEdit ? 'rw' : 'ro'; $legend = wfMsg("centralauth-editset-legend-{$msgPostfix}"); $this->getOutput()->addHTML("<fieldset><legend>{$legend}</legend>"); if ($msg) { $this->getOutput()->addHTML($msg); } $this->getOutput()->addWikiMsg("centralauth-editset-intro-{$msgPostfix}"); $this->getOutput()->addHTML('<ul>'); $sets = WikiSet::getAllWikiSets(); foreach ($sets as $set) { $text = wfMsgExt("centralauth-editset-item-{$msgPostfix}", array('parseinline'), $set->getName(), $set->getID()); $this->getOutput()->addHTML("<li>{$text}</li>"); } if ($this->mCanEdit) { $target = SpecialPage::getTitleFor('WikiSets', '0'); $newlink = Linker::makeLinkObj($target, wfMsgHtml('centralauth-editset-new')); $this->getOutput()->addHTML("<li>{$newlink}</li>"); } $this->getOutput()->addHTML('</ul></fieldset>'); }
/** * @param $group * @return string */ function buildWikiSetSelector($group) { $sets = WikiSet::getAllWikiSets(); $default = WikiSet::getWikiSetForGroup($group); if (!$this->userCanEdit($this->getUser())) { $set = WikiSet::newFromID($default); if ($set) { return Linker::link(SpecialPage::getTitleFor('WikiSets', $set->getId()), htmlspecialchars($set->getName())); } else { return $this->msg('centralauth-editgroup-nowikiset'); } } $select = new XmlSelect('set', 'wikiset', $default); $select->addOption($this->msg('centralauth-editgroup-noset')->text(), '0'); /** * @var $set WikiSet */ foreach ($sets as $set) { $select->addOption($set->getName(), $set->getID()); } $editlink = $this->msg('centralauth-editgroup-editsets')->parse(); return $select->getHTML() . " {$editlink}"; }
/** * @param $group * @return string */ function buildWikiSetSelector($group) { $sets = WikiSet::getAllWikiSets(); $default = WikiSet::getWikiSetForGroup($group); if (!$this->userCanEdit($this->getUser())) { return htmlspecialchars($default); } $select = new XmlSelect('set', 'wikiset', $default); $select->addOption(wfMsg('centralauth-editgroup-noset'), '0'); foreach ($sets as $set) { $select->addOption($set->getName(), $set->getID()); } $editlink = wfMsgExt("centralauth-editgroup-editsets", array("parseinline")); return $select->getHTML() . " {$editlink}"; }