From 2c74b043568eb00a33e3aea5cd1a6325444855e6 Mon Sep 17 00:00:00 2001 From: Reedy Date: Thu, 1 Dec 2016 13:12:55 +0000 Subject: [PATCH] ArticleViewCustom, EditPageGetDiffText and ShowRawCssJs were removed Bug: T145728 Change-Id: Iddf29005abbaceaa1e3cc2c79e4becfb46294414 --- RELEASE-NOTES-1.29 | 2 ++ docs/hooks.txt | 21 ------------ includes/EditPage.php | 1 - includes/diff/DifferenceEngine.php | 23 +------------ includes/page/Article.php | 55 +----------------------------- 5 files changed, 4 insertions(+), 98 deletions(-) diff --git a/RELEASE-NOTES-1.29 b/RELEASE-NOTES-1.29 index ab7cdd446d..f13502906d 100644 --- a/RELEASE-NOTES-1.29 +++ b/RELEASE-NOTES-1.29 @@ -64,6 +64,8 @@ changes to languages because of Phabricator reports. 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 == diff --git a/docs/hooks.txt b/docs/hooks.txt index da12d8c367..0254e0657a 100644 --- a/docs/hooks.txt +++ b/docs/hooks.txt @@ -774,14 +774,6 @@ $article: the article &$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 @@ -1417,13 +1409,6 @@ different data types using the ContentHandler facility. $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. @@ -2841,12 +2826,6 @@ Special:ShortPages. '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 diff --git a/includes/EditPage.php b/includes/EditPage.php index 745f8deb6e..f37ce34c4a 100644 --- a/includes/EditPage.php +++ b/includes/EditPage.php @@ -3326,7 +3326,6 @@ HTML } if ( $newContent ) { - ContentHandler::runLegacyHooks( 'EditPageGetDiffText', [ $this, &$newContent ], '1.21' ); Hooks::run( 'EditPageGetDiffContent', [ $this, &$newContent ] ); $popts = ParserOptions::newFromUserAndLang( $wgUser, $wgContLang ); diff --git a/includes/diff/DifferenceEngine.php b/includes/diff/DifferenceEngine.php index a5a8676cb5..bd65fb42dc 100644 --- a/includes/diff/DifferenceEngine.php +++ b/includes/diff/DifferenceEngine.php @@ -601,28 +601,7 @@ class DifferenceEngine extends ContextSource { $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 diff --git a/includes/page/Article.php b/includes/page/Article.php index d30f034eab..cc3ef26b6b 100644 --- a/includes/page/Article.php +++ b/includes/page/Article.php @@ -621,21 +621,9 @@ class Article implements 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; } @@ -781,47 +769,6 @@ class Article implements Page { $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( - "
\n$1\n
", - '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 -- 2.20.1