本文整理汇总了PHP中wfMessageFallback函数的典型用法代码示例。如果您正苦于以下问题:PHP wfMessageFallback函数的具体用法?PHP wfMessageFallback怎么用?PHP wfMessageFallback使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了wfMessageFallback函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: openShowImage
//.........这里部分代码省略.........
} else {
$thumb1 = '';
}
if ($page < $count) {
$label = wfMessage('imgmultipagenext')->text();
$link = Linker::linkKnown($this->getTitle(), $label, array(), array('page' => $page + 1));
$thumb2 = Linker::makeThumbLinkObj($this->getTitle(), $this->displayImg, $link, $label, 'none', array('page' => $page + 1));
} else {
$thumb2 = '';
}
global $wgScript;
$formParams = array('name' => 'pageselector', 'action' => $wgScript);
$options = array();
for ($i = 1; $i <= $count; $i++) {
$options[] = Xml::option($lang->formatNum($i), $i, $i == $page);
}
$select = Xml::tags('select', array('id' => 'pageselector', 'name' => 'page'), implode("\n", $options));
$out->addHTML('</td><td><div class="multipageimagenavbox">' . Xml::openElement('form', $formParams) . Html::hidden('title', $this->getTitle()->getPrefixedDBkey()) . wfMessage('imgmultigoto')->rawParams($select)->parse() . Xml::submitButton(wfMessage('imgmultigo')->text()) . Xml::closeElement('form') . "<hr />{$thumb1}\n{$thumb2}<br style=\"clear: both\" /></div></td></tr></table>");
}
} elseif ($this->displayImg->isSafeFile()) {
# if direct link is allowed but it's not a renderable image, show an icon.
$icon = $this->displayImg->iconThumb();
$out->addHTML('<div class="fullImageLink" id="file">' . $icon->toHtml(array('file-link' => true)) . "</div>\n");
}
$longDesc = wfMessage('parentheses', $this->displayImg->getLongDesc())->text();
$medialink = "[[Media:{$filename}|{$linktext}]]";
if (!$this->displayImg->isSafeFile()) {
$warning = wfMessage('mediawarning')->plain();
// dirmark is needed here to separate the file name, which
// most likely ends in Latin characters, from the description,
// which may begin with the file type. In RTL environment
// this will get messy.
// The dirmark, however, must not be immediately adjacent
// to the filename, because it can get copied with it.
// See bug 25277.
$out->addWikiText(<<<EOT
<div class="fullMedia"><span class="dangerousLink">{$medialink}</span> {$dirmark}<span class="fileInfo">{$longDesc}</span></div>
<div class="mediaWarning">{$warning}</div>
EOT
);
} else {
$out->addWikiText(<<<EOT
<div class="fullMedia">{$medialink} {$dirmark}<span class="fileInfo">{$longDesc}</span>
</div>
EOT
);
}
$renderLangOptions = $this->displayImg->getAvailableLanguages();
if (count($renderLangOptions) >= 1) {
$currentLanguage = $renderLang;
$defaultLang = $this->displayImg->getDefaultRenderLanguage();
if (is_null($currentLanguage)) {
$currentLanguage = $defaultLang;
}
$out->addHtml($this->doRenderLangOpt($renderLangOptions, $currentLanguage, $defaultLang));
}
// Add cannot animate thumbnail warning
if (!$this->displayImg->canAnimateThumbIfAppropriate()) {
// Include the extension so wiki admins can
// customize it on a per file-type basis
// (aka say things like use format X instead).
// additionally have a specific message for
// file-no-thumb-animation-gif
$ext = $this->displayImg->getExtension();
$noAnimMesg = wfMessageFallback('file-no-thumb-animation-' . $ext, 'file-no-thumb-animation')->plain();
$out->addWikiText(<<<EOT
<div class="mw-noanimatethumb">{$noAnimMesg}</div>
EOT
);
}
if (!$this->displayImg->isLocal()) {
$this->printSharedImageText();
}
} else {
# Image does not exist
if (!$this->getID()) {
# No article exists either
# Show deletion log to be consistent with normal articles
LogEventsList::showLogExtract($out, array('delete', 'move'), $this->getTitle()->getPrefixedText(), '', array('lim' => 10, 'conds' => array("log_action != 'revision'"), 'showIfEmpty' => false, 'msgKey' => array('moveddeleted-notice')));
}
if ($wgEnableUploads && $user->isAllowed('upload')) {
// Only show an upload link if the user can upload
$uploadTitle = SpecialPage::getTitleFor('Upload');
$nofile = array('filepage-nofile-link', $uploadTitle->getFullURL(array('wpDestFile' => $this->mPage->getFile()->getName())));
} else {
$nofile = 'filepage-nofile';
}
// Note, if there is an image description page, but
// no image, then this setRobotPolicy is overridden
// by Article::View().
$out->setRobotPolicy('noindex,nofollow');
$out->wrapWikiMsg("<div id='mw-imagepage-nofile' class='plainlinks'>\n\$1\n</div>", $nofile);
if (!$this->getID() && $wgSend404Code) {
// If there is no image, no shared image, and no description page,
// output a 404, to be consistent with articles.
$request->response()->header('HTTP/1.1 404 Not Found');
}
}
$out->setFileVersion($this->displayImg);
}
示例2: getDisplayName
/**
* Get the human-readable name of the repo
*
* @return string
*/
public function getDisplayName()
{
// We don't name our own repo, return nothing
if ($this->isLocal()) {
return null;
}
// 'shared-repo-name-wikimediacommons' is used when $wgUseInstantCommons = true
return wfMessageFallback('shared-repo-name-' . $this->name, 'shared-repo')->text();
}
示例3: getDisplayName
/**
* Get the human-readable name of the repo
*
* @return string
*/
public function getDisplayName()
{
global $wgSitename;
if ($this->isLocal()) {
return $wgSitename;
}
// 'shared-repo-name-wikimediacommons' is used when $wgUseInstantCommons = true
return wfMessageFallback('shared-repo-name-' . $this->name, 'shared-repo')->text();
}
示例4: buildContentNavigationUrls
/**
* a structured array of links usually used for the tabs in a skin
*
* There are 4 standard sections
* namespaces: Used for namespace tabs like special, page, and talk namespaces
* views: Used for primary page views like read, edit, history
* actions: Used for most extra page actions like deletion, protection, etc...
* variants: Used to list the language variants for the page
*
* Each section's value is a key/value array of links for that section.
* The links themselves have these common keys:
* - class: The css classes to apply to the tab
* - text: The text to display on the tab
* - href: The href for the tab to point to
* - rel: An optional rel= for the tab's link
* - redundant: If true the tab will be dropped in skins using content_actions
* this is useful for tabs like "Read" which only have meaning in skins that
* take special meaning from the grouped structure of content_navigation
*
* Views also have an extra key which can be used:
* - primary: If this is not true skins like vector may try to hide the tab
* when the user has limited space in their browser window
*
* content_navigation using code also expects these ids to be present on the
* links, however these are usually automatically generated by SkinTemplate
* itself and are not necessary when using a hook. The only things these may
* matter to are people modifying content_navigation after it's initial creation:
* - id: A "preferred" id, most skins are best off outputting this preferred
* id for best compatibility.
* - tooltiponly: This is set to true for some tabs in cases where the system
* believes that the accesskey should not be added to the tab.
*
* @return array
*/
protected function buildContentNavigationUrls()
{
global $wgDisableLangConversion;
// Display tabs for the relevant title rather than always the title itself
$title = $this->getRelevantTitle();
$onPage = $title->equals($this->getTitle());
$out = $this->getOutput();
$request = $this->getRequest();
$user = $this->getUser();
$content_navigation = array('namespaces' => array(), 'views' => array(), 'actions' => array(), 'variants' => array());
// parameters
$action = $request->getVal('action', 'view');
$userCanRead = $title->quickUserCan('read', $user);
$preventActiveTabs = false;
Hooks::run('SkinTemplatePreventOtherActiveTabs', array(&$this, &$preventActiveTabs));
// Checks if page is some kind of content
if ($title->canExist()) {
// Gets page objects for the related namespaces
$subjectPage = $title->getSubjectPage();
$talkPage = $title->getTalkPage();
// Determines if this is a talk page
$isTalk = $title->isTalkPage();
// Generates XML IDs from namespace names
$subjectId = $title->getNamespaceKey('');
if ($subjectId == 'main') {
$talkId = 'talk';
} else {
$talkId = "{$subjectId}_talk";
}
$skname = $this->skinname;
// Adds namespace links
$subjectMsg = array("nstab-{$subjectId}");
if ($subjectPage->isMainPage()) {
array_unshift($subjectMsg, 'mainpage-nstab');
}
$content_navigation['namespaces'][$subjectId] = $this->tabAction($subjectPage, $subjectMsg, !$isTalk && !$preventActiveTabs, '', $userCanRead);
$content_navigation['namespaces'][$subjectId]['context'] = 'subject';
$content_navigation['namespaces'][$talkId] = $this->tabAction($talkPage, array("nstab-{$talkId}", 'talk'), $isTalk && !$preventActiveTabs, '', $userCanRead);
$content_navigation['namespaces'][$talkId]['context'] = 'talk';
if ($userCanRead) {
$isForeignFile = $title->inNamespace(NS_FILE) && $this->canUseWikiPage() && $this->getWikiPage() instanceof WikiFilePage && !$this->getWikiPage()->isLocal();
// Adds view view link
if ($title->exists() || $isForeignFile) {
$content_navigation['views']['view'] = $this->tabAction($isTalk ? $talkPage : $subjectPage, array("{$skname}-view-view", 'view'), $onPage && ($action == 'view' || $action == 'purge'), '', true);
// signal to hide this from simple content_actions
$content_navigation['views']['view']['redundant'] = true;
}
// If it is a non-local file, show a link to the file in its own repository
if ($isForeignFile) {
$file = $this->getWikiPage()->getFile();
$content_navigation['views']['view-foreign'] = array('class' => '', 'text' => wfMessageFallback("{$skname}-view-foreign", 'view-foreign')->setContext($this->getContext())->params($file->getRepo()->getDisplayName())->text(), 'href' => $file->getDescriptionUrl(), 'primary' => false);
}
// Checks if user can edit the current page if it exists or create it otherwise
if ($title->quickUserCan('edit', $user) && ($title->exists() || $title->quickUserCan('create', $user))) {
// Builds CSS class for talk page links
$isTalkClass = $isTalk ? ' istalk' : '';
// Whether the user is editing the page
$isEditing = $onPage && ($action == 'edit' || $action == 'submit');
// Whether to show the "Add a new section" tab
// Checks if this is a current rev of talk page and is not forced to be hidden
$showNewSection = !$out->forceHideNewSectionLink() && ($isTalk && $this->isRevisionCurrent() || $out->showNewSectionLink());
$section = $request->getVal('section');
if ($title->exists() || $title->getNamespace() == NS_MEDIAWIKI && $title->getDefaultMessageText() !== false) {
$msgKey = $isForeignFile ? 'edit-local' : 'edit';
} else {
$msgKey = $isForeignFile ? 'create-local' : 'create';
//.........这里部分代码省略.........
示例5: buildContentNavigationUrls
/**
* a structured array of links usually used for the tabs in a skin
*
* There are 4 standard sections
* namespaces: Used for namespace tabs like special, page, and talk namespaces
* views: Used for primary page views like read, edit, history
* actions: Used for most extra page actions like deletion, protection, etc...
* variants: Used to list the language variants for the page
*
* Each section's value is a key/value array of links for that section.
* The links themseves have these common keys:
* - class: The css classes to apply to the tab
* - text: The text to display on the tab
* - href: The href for the tab to point to
* - rel: An optional rel= for the tab's link
* - redundant: If true the tab will be dropped in skins using content_actions
* this is useful for tabs like "Read" which only have meaning in skins that
* take special meaning from the grouped structure of content_navigation
*
* Views also have an extra key which can be used:
* - primary: If this is not true skins like vector may try to hide the tab
* when the user has limited space in their browser window
*
* content_navigation using code also expects these ids to be present on the
* links, however these are usually automatically generated by SkinTemplate
* itself and are not necessary when using a hook. The only things these may
* matter to are people modifying content_navigation after it's initial creation:
* - id: A "preferred" id, most skins are best off outputting this preferred id for best compatibility
* - tooltiponly: This is set to true for some tabs in cases where the system
* believes that the accesskey should not be added to the tab.
*
* @return array
*/
protected function buildContentNavigationUrls(OutputPage $out)
{
global $wgContLang, $wgLang, $wgUser, $wgRequest;
global $wgDisableLangConversion;
wfProfileIn(__METHOD__);
$title = $this->getRelevantTitle();
// Display tabs for the relevant title rather than always the title itself
$onPage = $title->equals($this->getTitle());
$content_navigation = array('namespaces' => array(), 'views' => array(), 'actions' => array(), 'variants' => array());
// parameters
$action = $wgRequest->getVal('action', 'view');
$section = $wgRequest->getVal('section');
$userCanRead = $title->userCanRead();
$skname = $this->skinname;
$preventActiveTabs = false;
wfRunHooks('SkinTemplatePreventOtherActiveTabs', array(&$this, &$preventActiveTabs));
// Checks if page is some kind of content
if ($title->canExist()) {
// Gets page objects for the related namespaces
$subjectPage = $title->getSubjectPage();
$talkPage = $title->getTalkPage();
// Determines if this is a talk page
$isTalk = $title->isTalkPage();
// Generates XML IDs from namespace names
$subjectId = $title->getNamespaceKey('');
if ($subjectId == 'main') {
$talkId = 'talk';
} else {
$talkId = "{$subjectId}_talk";
}
// Adds namespace links
$subjectMsg = array("nstab-{$subjectId}");
if ($subjectPage->isMainPage()) {
array_unshift($subjectMsg, 'mainpage-nstab');
}
$content_navigation['namespaces'][$subjectId] = $this->tabAction($subjectPage, $subjectMsg, !$isTalk && !$preventActiveTabs, '', $userCanRead);
$content_navigation['namespaces'][$subjectId]['context'] = 'subject';
$content_navigation['namespaces'][$talkId] = $this->tabAction($talkPage, array("nstab-{$talkId}", 'talk'), $isTalk && !$preventActiveTabs, '', $userCanRead);
$content_navigation['namespaces'][$talkId]['context'] = 'talk';
// Adds view view link
if ($title->exists() && $userCanRead) {
$content_navigation['views']['view'] = $this->tabAction($isTalk ? $talkPage : $subjectPage, array("{$skname}-view-view", 'view'), $onPage && ($action == 'view' || $action == 'purge'), '', true);
$content_navigation['views']['view']['redundant'] = true;
// signal to hide this from simple content_actions
}
wfProfileIn(__METHOD__ . '-edit');
// Checks if user can...
if ($userCanRead && $title->quickUserCan('edit') && ($title->exists() || $title->quickUserCan('create'))) {
// Builds CSS class for talk page links
$isTalkClass = $isTalk ? ' istalk' : '';
// Determines if we're in edit mode
$selected = $onPage && ($action == 'edit' || $action == 'submit') && $section != 'new';
$msgKey = $title->exists() || $title->getNamespace() == NS_MEDIAWIKI && $title->getDefaultMessageText() !== false ? "edit" : "create";
$content_navigation['views']['edit'] = array('class' => ($selected ? 'selected' : '') . $isTalkClass, 'text' => wfMessageFallback("{$skname}-view-{$msgKey}", $msgKey)->text(), 'href' => $title->getLocalURL($this->editUrlOptions()), 'primary' => true);
// Checks if this is a current rev of talk page and we should show a new
// section link
if ($isTalk && $this->isRevisionCurrent() || $out->showNewSectionLink()) {
// Checks if we should ever show a new section link
if (!$out->forceHideNewSectionLink()) {
// Adds new section link
//$content_navigation['actions']['addsection']
$content_navigation['views']['addsection'] = array('class' => $section == 'new' ? 'selected' : false, 'text' => wfMessageFallback("{$skname}-action-addsection", 'addsection')->text(), 'href' => $title->getLocalURL('action=edit§ion=new'));
}
}
// Checks if the page has some kind of viewable content
} elseif ($title->hasSourceText() && $userCanRead) {
// Adds view source view link
//.........这里部分代码省略.........