本文整理汇总了PHP中SpecialPageFactory::getUsablePages方法的典型用法代码示例。如果您正苦于以下问题:PHP SpecialPageFactory::getUsablePages方法的具体用法?PHP SpecialPageFactory::getUsablePages怎么用?PHP SpecialPageFactory::getUsablePages使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SpecialPageFactory
的用法示例。
在下文中一共展示了SpecialPageFactory::getUsablePages方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getPageGroups
private function getPageGroups()
{
$pages = SpecialPageFactory::getUsablePages($this->getUser());
if (!count($pages)) {
# Yeah, that was pointless. Thanks for coming.
return false;
}
/** Put them into a sortable array */
$groups = [];
/** @var SpecialPage $page */
foreach ($pages as $page) {
if ($page->isListed()) {
$group = $page->getFinalGroupName();
if (!isset($groups[$group])) {
$groups[$group] = [];
}
$groups[$group][$page->getDescription()] = [$page->getPageTitle(), $page->isRestricted(), $page->isCached()];
}
}
/** Sort */
foreach ($groups as $group => $sortedPages) {
ksort($groups[$group]);
}
/** Always move "other" to end */
if (array_key_exists('other', $groups)) {
$other = $groups['other'];
unset($groups['other']);
$groups['other'] = $other;
}
return $groups;
}
示例2: getPageGroups
private function getPageGroups()
{
global $wgSortSpecialPages;
$pages = SpecialPageFactory::getUsablePages($this->getUser());
if (!count($pages)) {
# Yeah, that was pointless. Thanks for coming.
return false;
}
/** Put them into a sortable array */
$groups = array();
foreach ($pages as $page) {
if ($page->isListed()) {
$group = SpecialPageFactory::getGroup($page);
if (!isset($groups[$group])) {
$groups[$group] = array();
}
$groups[$group][$page->getDescription()] = array($page->getTitle(), $page->isRestricted(), $page->isExpensive());
}
}
/** Sort */
if ($wgSortSpecialPages) {
foreach ($groups as $group => $sortedPages) {
ksort($groups[$group]);
}
}
/** Always move "other" to end */
if (array_key_exists('other', $groups)) {
$other = $groups['other'];
unset($groups['other']);
$groups['other'] = $other;
}
return $groups;
}
示例3: getAdvancedSection
/**
* @brief Copied and pasted code from wfSpecialSpecialpages() that have been modified and refactored. Also removes some special pages from list.
*
*/
public function getAdvancedSection()
{
if (!$this->wg->User->isAllowed('admindashboard')) {
$this->displayRestrictionError();
return false;
// skip rendering
}
$this->sk = $this->wg->User->getSkin();
$pages = SpecialPageFactory::getUsablePages();
if (count($pages) == 0) {
return;
}
/** Put them into a sortable array */
$groups = array();
foreach ($pages as $pagename => $page) {
if (!AdminDashboardLogic::isGeneralApp($pagename) && $page->isListed()) {
$group = SpecialPageFactory::getGroup($page);
if (!isset($groups[$group])) {
$groups[$group] = array();
}
$groups[$group][$page->getDescription()] = array($page->getTitle(), $page->isRestricted());
}
}
/** Sort */
if ($this->wg->SortSpecialPages) {
foreach ($groups as $group => $sortedPages) {
ksort($groups[$group]);
}
}
/** Always move "other" to end */
if (array_key_exists('other', $groups)) {
$other = $groups['other'];
unset($groups['other']);
$groups['other'] = $other;
}
$this->groups = $groups;
}
示例4: specialPagesList
/**
* Show a drop-down box of special pages
* @return string
*/
function specialPagesList()
{
global $wgScript;
$select = new XmlSelect('title');
$pages = SpecialPageFactory::getUsablePages();
array_unshift($pages, SpecialPageFactory::getPage('SpecialPages'));
foreach ($pages as $obj) {
$select->addOption($obj->getDescription(), $obj->getTitle()->getPrefixedDBkey());
}
return Html::rawElement('form', array('id' => 'specialpages', 'method' => 'get', 'action' => $wgScript), $select->getHTML() . Xml::submitButton(wfMessage('go')->text()));
}
示例5: getUsablePages
/**
* Return categorised listable special pages which are available
* for the current user, and everyone.
*
* @param $user User object to check permissions, $wgUser will be used
* if not provided
* @return array Associative array mapping page's name to its SpecialPage object
* @deprecated since 1.18 call SpecialPageFactory method directly
*/
static function getUsablePages(User $user = null)
{
wfDeprecated(__METHOD__, '1.18');
return SpecialPageFactory::getUsablePages($user);
}
示例6: getUsablePages
/**
* Return categorised listable special pages which are available
* for the current user, and everyone.
*
* @return Associative array mapping page's name to its SpecialPage object
* @deprecated since 1.18 call SpecialPageFactory method directly
*/
static function getUsablePages()
{
return SpecialPageFactory::getUsablePages();
}
示例7: specialPagesList
/**
* Show a drop-down box of special pages
*/
function specialPagesList()
{
global $wgContLang, $wgServer, $wgRedirectScript;
$pages = SpecialPageFactory::getUsablePages();
foreach ($pages as $name => $page) {
$pages[$name] = $page->getDescription();
}
$go = wfMsg('go');
$sp = wfMsg('specialpages');
$spp = $wgContLang->specialPage('Specialpages');
$s = '<form id="specialpages" method="get" ' . 'action="' . htmlspecialchars("{$wgServer}{$wgRedirectScript}") . "\">\n";
$s .= "<select name=\"wpDropdown\">\n";
$s .= "<option value=\"{$spp}\">{$sp}</option>\n";
foreach ($pages as $name => $desc) {
$p = $wgContLang->specialPage($name);
$s .= "<option value=\"{$p}\">{$desc}</option>\n";
}
$s .= "</select>\n";
$s .= "<input type='submit' value=\"{$go}\" name='redirect' />\n";
$s .= "</form>\n";
return $s;
}
示例8: crawl
/**
* Prepares list of documents to be indexed for wikis.
* @return int Number of documents to be indexed.
*/
public function crawl()
{
$this->oDocumentsDb = SpecialPageFactory::getUsablePages(RequestContext::getMain()->getUser());
$this->totalNoDocumentsCrawled = count($this->oDocumentsDb);
return $this->totalNoDocumentsCrawled;
}
开发者ID:hfroese,项目名称:mediawiki-extensions-BlueSpiceExtensions,代码行数:10,代码来源:BuildIndexMwSpecial.class.php