本文整理匯總了PHP中RequestContext::canUseWikiPage方法的典型用法代碼示例。如果您正苦於以下問題:PHP RequestContext::canUseWikiPage方法的具體用法?PHP RequestContext::canUseWikiPage怎麽用?PHP RequestContext::canUseWikiPage使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類RequestContext
的用法示例。
在下文中一共展示了RequestContext::canUseWikiPage方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: confirmEditMerged
/**
* An efficient edit filter callback based on the text after section merging
* @param RequestContext $context
* @param Content $content
* @param Status $status
* @param $summary
* @param $user
* @param $minorEdit
* @return bool
*/
function confirmEditMerged($context, $content, $status, $summary, $user, $minorEdit)
{
$legacyMode = !defined('MW_EDITFILTERMERGED_SUPPORTS_API');
if (defined('MW_API') && $legacyMode) {
# API mode
# The CAPTCHA was already checked and approved
return true;
}
if (!$context->canUseWikiPage()) {
// we check WikiPage only
// try to get an appropriate title for this page
$title = $context->getTitle();
if ($title instanceof Title) {
$title = $title->getFullText();
} else {
// otherwise it's an unknown page where this function is called from
$title = 'unknown';
}
// log this error, it could be a problem in another extension, edits should always have a WikiPage if
// they go through EditFilterMergedContent.
wfDebug(__METHOD__ . ': Skipped ConfirmEdit check: No WikiPage for title ' . $title);
return true;
}
$page = $context->getWikiPage();
if (!$this->doConfirmEdit($page, $content, false, $context)) {
if ($legacyMode) {
$status->fatal('hookaborted');
}
$status->value = EditPage::AS_HOOK_ERROR_EXPECTED;
$status->apiHookResult = array();
$this->addCaptchaAPI($status->apiHookResult);
$page->ConfirmEdit_ActivateCaptcha = true;
return $legacyMode;
}
return true;
}