本文整理汇总了PHP中RequestContext::getWikiPage方法的典型用法代码示例。如果您正苦于以下问题:PHP RequestContext::getWikiPage方法的具体用法?PHP RequestContext::getWikiPage怎么用?PHP RequestContext::getWikiPage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RequestContext
的用法示例。
在下文中一共展示了RequestContext::getWikiPage方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testWikiPageTitle
/**
* Test the relationship between title and wikipage in RequestContext
* @covers RequestContext::getWikiPage
* @covers RequestContext::getTitle
*/
public function testWikiPageTitle()
{
$context = new RequestContext();
$curTitle = Title::newFromText("A");
$context->setTitle($curTitle);
$this->assertTrue($curTitle->equals($context->getWikiPage()->getTitle()), "When a title is first set WikiPage should be created on-demand for that title.");
$curTitle = Title::newFromText("B");
$context->setWikiPage(WikiPage::factory($curTitle));
$this->assertTrue($curTitle->equals($context->getTitle()), "Title must be updated when a new WikiPage is provided.");
$curTitle = Title::newFromText("C");
$context->setTitle($curTitle);
$this->assertTrue($curTitle->equals($context->getWikiPage()->getTitle()), "When a title is updated the WikiPage should be purged " . "and recreated on-demand with the new title.");
}
示例2: 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;
}
$page = $context->getWikiPage();
if (!$this->doConfirmEdit($page, $content, false, true)) {
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;
}
示例3: 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;
}