本文整理汇总了PHP中DifferenceEngine::getContext方法的典型用法代码示例。如果您正苦于以下问题:PHP DifferenceEngine::getContext方法的具体用法?PHP DifferenceEngine::getContext怎么用?PHP DifferenceEngine::getContext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DifferenceEngine
的用法示例。
在下文中一共展示了DifferenceEngine::getContext方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: onDiffViewHeader
/**
* DiffViewHeader hook handler
* @see https://www.mediawiki.org/wiki/Manual:Hooks/DiffViewHeader
*
* Redirect Diff page to mobile version if appropriate
*
* @param DifferenceEngine $diff DifferenceEngine object that's calling
* @param Revision $oldRev Revision object of the "old" revision (may be null/invalid)
* @param Revision $newRev Revision object of the "new" revision
* @return bool
*/
public static function onDiffViewHeader($diff, $oldRev, $newRev)
{
$context = MobileContext::singleton();
// Only do redirects to MobileDiff if user is in mobile view and it's not a special page
if ($context->shouldDisplayMobileView() && !$diff->getContext()->getTitle()->isSpecialPage()) {
$output = $context->getOutput();
$newRevId = $newRev->getId();
// The MobileDiff page currently only supports showing a single revision, so
// only redirect to MobileDiff if we are sure this isn't a multi-revision diff.
if ($oldRev) {
// Get the revision immediately before the new revision
$prevRev = $newRev->getPrevious();
if ($prevRev) {
$prevRevId = $prevRev->getId();
$oldRevId = $oldRev->getId();
if ($prevRevId === $oldRevId) {
$output->redirect(SpecialPage::getTitleFor('MobileDiff', $newRevId)->getFullURL());
}
}
} else {
$output->redirect(SpecialPage::getTitleFor('MobileDiff', $newRevId)->getFullURL());
}
}
return true;
}