本文整理匯總了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;
}