were removed.
* Article::getAutosummary() and WikiPage::getAutosummary (deprecated in 1.21)
were removed.
+* Hooks ArticleViewCustom, EditPageGetDiffText and ShowRawCssJs (deprecated in 1.21)
+ were removed.
== Compatibility ==
&$sectionanchor: The section anchor link (e.g. "#overview" )
&$extraq: Extra query parameters which can be added via hooked functions
-'ArticleViewCustom': DEPRECATED! Use ArticleContentViewCustom instead.
-Allows to output the text of the article in a different format than wikitext.
-Note that it is preferable to implement proper handing for a custom data type
-using the ContentHandler facility.
-$text: text of the page
-$title: title of the page
-$output: reference to $wgOut
-
'ArticleViewFooter': After showing the footer section of an ordinary page view
$article: Article object
$patrolFooterShown: boolean whether patrol footer is shown
$editPage: EditPage object
&$newtext: wikitext that will be used as "your version"
-'EditPageGetDiffText': DEPRECATED! Use EditPageGetDiffContent instead.
-Allow modifying the wikitext that will be used in "Show changes". Note that it
-is preferable to implement diff handling for different data types using the
-ContentHandler facility.
-$editPage: EditPage object
-&$newtext: wikitext that will be used as "your version"
-
'EditPageGetPreviewContent': Allow modifying the wikitext that will be
previewed. Note that it is preferable to implement previews for different data
types using the ContentHandler facility.
'ShowMissingArticle': Called when generating the output for a non-existent page.
$article: The article object corresponding to the page
-'ShowRawCssJs': DEPRECATED! Use the ContentGetParserOutput hook instead.
-Customise the output of raw CSS and JavaScript in page views.
-$text: Text being shown
-$title: Title of the custom script/stylesheet page
-$output: Current OutputPage object
-
'ShowSearchHit': Customize display of search hit.
$searchPage: The SpecialSearch instance.
$result: The SearchResult to show
}
if ( $newContent ) {
- ContentHandler::runLegacyHooks( 'EditPageGetDiffText', [ $this, &$newContent ], '1.21' );
Hooks::run( 'EditPageGetDiffContent', [ $this, &$newContent ] );
$popts = ParserOptions::newFromUserAndLang( $wgUser, $wgContLang );
$out->setRevisionTimestamp( $this->mNewRev->getTimestamp() );
$out->setArticleFlag( true );
- // NOTE: only needed for B/C: custom rendering of JS/CSS via hook
- if ( $this->mNewPage->isCssJsSubpage() || $this->mNewPage->isCssOrJsPage() ) {
- // This needs to be synchronised with Article::showCssOrJsPage(), which sucks
- // Give hooks a chance to customise the output
- // @todo standardize this crap into one function
- if ( ContentHandler::runLegacyHooks( 'ShowRawCssJs', [ $this->mNewContent, $this->mNewPage, $out ], '1.24' ) ) {
- // NOTE: deprecated hook, B/C only
- // use the content object's own rendering
- $cnt = $this->mNewRev->getContent();
- $po = $cnt ? $cnt->getParserOutput( $this->mNewRev->getTitle(), $this->mNewRev->getId() ) : null;
- if ( $po ) {
- $out->addParserOutputContent( $po );
- }
- }
- } elseif ( !Hooks::run( 'ArticleContentViewCustom', [ $this->mNewContent, $this->mNewPage, $out ] ) ) {
- // Handled by extension
- } elseif ( !ContentHandler::runLegacyHooks(
- 'ArticleViewCustom',
- [ $this->mNewContent, $this->mNewPage, $out ],
- '1.21'
- ) ) {
- // NOTE: deprecated hook, B/C only
+ if ( !Hooks::run( 'ArticleContentViewCustom', [ $this->mNewContent, $this->mNewPage, $out ] ) ) {
// Handled by extension
} else {
// Normal page
# Preload timestamp to avoid a DB hit
$outputPage->setRevisionTimestamp( $this->mPage->getTimestamp() );
- # Pages containing custom CSS or JavaScript get special treatment
- if ( $this->getTitle()->isCssOrJsPage() || $this->getTitle()->isCssJsSubpage() ) {
- wfDebug( __METHOD__ . ": showing CSS/JS source\n" );
- $this->showCssOrJsPage();
- $outputDone = true;
- } elseif ( !Hooks::run( 'ArticleContentViewCustom',
+ if ( !Hooks::run( 'ArticleContentViewCustom',
[ $this->fetchContentObject(), $this->getTitle(), $outputPage ] ) ) {
- # Allow extensions do their own custom view for certain pages
- $outputDone = true;
- } elseif ( !ContentHandler::runLegacyHooks(
- 'ArticleViewCustom',
- [ $this->fetchContentObject(), $this->getTitle(), $outputPage ],
- '1.21'
- ) ) {
# Allow extensions do their own custom view for certain pages
$outputDone = true;
}
$this->mPage->doViewUpdates( $user, (int)$new );
}
- /**
- * Show a page view for a page formatted as CSS or JavaScript. To be called by
- * Article::view() only.
- *
- * This exists mostly to serve the deprecated ShowRawCssJs hook (used to customize these views).
- * It has been replaced by the ContentGetParserOutput hook, which lets you do the same but with
- * more flexibility.
- *
- * @param bool $showCacheHint Whether to show a message telling the user
- * to clear the browser cache (default: true).
- */
- protected function showCssOrJsPage( $showCacheHint = true ) {
- $outputPage = $this->getContext()->getOutput();
-
- if ( $showCacheHint ) {
- $dir = $this->getContext()->getLanguage()->getDir();
- $lang = $this->getContext()->getLanguage()->getHtmlCode();
-
- $outputPage->wrapWikiMsg(
- "<div id='mw-clearyourcache' lang='$lang' dir='$dir' class='mw-content-$dir'>\n$1\n</div>",
- 'clearyourcache'
- );
- }
-
- $this->fetchContentObject();
-
- if ( $this->mContentObject ) {
- // Give hooks a chance to customise the output
- if ( ContentHandler::runLegacyHooks(
- 'ShowRawCssJs',
- [ $this->mContentObject, $this->getTitle(), $outputPage ],
- '1.24'
- ) ) {
- // If no legacy hooks ran, display the content of the parser output, including RL modules,
- // but excluding metadata like categories and language links
- $po = $this->mContentObject->getParserOutput( $this->getTitle() );
- $outputPage->addParserOutputContent( $po );
- }
- }
- }
-
/**
* Get the robot policy to be used for the current view
* @param string $action The action= GET parameter