Thiemo Mättig (WMDE) has uploaded a new change for review. https://gerrit.wikimedia.org/r/179135
Change subject: Fall back to page title if wikibase-titletext is n/a ...................................................................... Fall back to page title if wikibase-titletext is n/a Change-Id: Ic20c54407447e517e3fd7926060c0bc85013892a --- M client/includes/Usage/ParserOutputUsageAccumulator.php M client/includes/hooks/SidebarHookHandlers.php M repo/Wikibase.hooks.php M repo/includes/EntityParserOutputGenerator.php M repo/includes/actions/EditEntityAction.php M repo/includes/actions/ViewEntityAction.php 6 files changed, 17 insertions(+), 25 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase refs/changes/35/179135/1 diff --git a/client/includes/Usage/ParserOutputUsageAccumulator.php b/client/includes/Usage/ParserOutputUsageAccumulator.php index 59b1528..2a272e2 100644 --- a/client/includes/Usage/ParserOutputUsageAccumulator.php +++ b/client/includes/Usage/ParserOutputUsageAccumulator.php @@ -47,7 +47,7 @@ */ public function getUsages() { $usages = $this->parserOutput->getExtensionData( 'wikibase-entity-usage' ); - return $usages === null ? array() : $usages; + return $usages ?: array(); } /** diff --git a/client/includes/hooks/SidebarHookHandlers.php b/client/includes/hooks/SidebarHookHandlers.php index 51ab7c7..5c8b497 100644 --- a/client/includes/hooks/SidebarHookHandlers.php +++ b/client/includes/hooks/SidebarHookHandlers.php @@ -147,25 +147,21 @@ } $noExternalLangLinks = NoLangLinkHandler::getNoExternalLangLinks( $parserOutput ); - if ( !empty( $noExternalLangLinks ) ) { $out->setProperty( 'noexternallanglinks', $noExternalLangLinks ); } $itemId = $parserOutput->getProperty( 'wikibase_item' ); - if ( $itemId !== false ) { $out->setProperty( 'wikibase_item', $itemId ); } $otherProjects = $parserOutput->getExtensionData( 'wikibase-otherprojects-sidebar' ); - if ( $otherProjects !== null ) { $out->setProperty( 'wikibase-otherprojects-sidebar', $otherProjects ); } $badges = $parserOutput->getExtensionData( 'wikibase_badges' ); - if ( $badges !== null ) { $out->setProperty( 'wikibase_badges', $badges ); } diff --git a/repo/Wikibase.hooks.php b/repo/Wikibase.hooks.php index fceee04..7681057 100644 --- a/repo/Wikibase.hooks.php +++ b/repo/Wikibase.hooks.php @@ -956,19 +956,18 @@ * @return bool */ public static function onOutputPageParserOutput( OutputPage $out, ParserOutput $parserOutput ) { + // Set in EntityParserOutputGenerator. $placeholders = $parserOutput->getExtensionData( 'wikibase-view-chunks' ); - - if ( $placeholders ) { + if ( $placeholders !== null ) { $out->setProperty( 'wikibase-view-chunks', $placeholders ); } - // used in ViewEntityAction and EditEntityAction to override the page html title + // Used in ViewEntityAction and EditEntityAction to override the page HTML title // with the label, if available, or else the id. Passed via parser output // and output page to save overhead of fetching content and accessing an entity // on page view. $titleText = $parserOutput->getExtensionData( 'wikibase-titletext' ); - - if ( $titleText ) { + if ( $titleText !== null ) { $out->setProperty( 'wikibase-titletext', $titleText ); } @@ -988,7 +987,7 @@ public static function onOutputPageBeforeHTML( OutputPage $out, &$html ) { $placeholders = $out->getProperty( 'wikibase-view-chunks' ); - if ( $placeholders ) { + if ( !empty( $placeholders ) ) { $injector = new TextInjector( $placeholders ); $userLanguageLookup = new UserLanguageLookup(); $expander = new EntityViewPlaceholderExpander( diff --git a/repo/includes/EntityParserOutputGenerator.php b/repo/includes/EntityParserOutputGenerator.php index cf389f5..23fba58 100644 --- a/repo/includes/EntityParserOutputGenerator.php +++ b/repo/includes/EntityParserOutputGenerator.php @@ -2,7 +2,6 @@ namespace Wikibase; -use OutOfBoundsException; use ParserOutput; use Wikibase\DataModel\Entity\Entity; use Wikibase\DataModel\Entity\Item; @@ -259,7 +258,7 @@ } else { $entityId = $entity->getId(); - if ( !$entityId ) { + if ( $entityId === null ) { return; } diff --git a/repo/includes/actions/EditEntityAction.php b/repo/includes/actions/EditEntityAction.php index e4970e5..901109d 100644 --- a/repo/includes/actions/EditEntityAction.php +++ b/repo/includes/actions/EditEntityAction.php @@ -276,7 +276,6 @@ /** * @var EntityContent $latestContent - * @var EntityContent $olderContent * @var EntityContent $newerContent */ $olderContent = $olderRevision->getContent(); @@ -343,7 +342,7 @@ } /** - * Used for overriding the page html title with the label, if available, or else the id. + * Used for overriding the page HTML title with the label, if available, or else the id. * This is passed via parser output and output page to save overhead on view / edit actions. * * @return string @@ -352,7 +351,7 @@ $titleText = $this->getOutput()->getProperty( 'wikibase-titletext' ); if ( $titleText === null ) { - $titleText = ''; + $titleText = $this->getTitle()->getPrefixedText(); } return $titleText; diff --git a/repo/includes/actions/ViewEntityAction.php b/repo/includes/actions/ViewEntityAction.php index 4e36631..3f343e6 100644 --- a/repo/includes/actions/ViewEntityAction.php +++ b/repo/includes/actions/ViewEntityAction.php @@ -9,7 +9,6 @@ use SpecialPage; use ViewAction; use Wikibase\Repo\Content\EntityHandler; -use Wikibase\Repo\WikibaseRepo; /** * Handles the view action for Wikibase entities. @@ -111,7 +110,7 @@ $titleText = $this->getOutput()->getProperty( 'wikibase-titletext' ); if ( $titleText === null ) { - return; + $titleText = $this->getTitle()->getPrefixedText(); } if ( $this->isDiff() ) { @@ -123,9 +122,9 @@ /** * @param OutputPage $outputPage - * @param string $labelText + * @param string $titleText */ - private function setPageTitle( OutputPage $outputPage, $labelText ) { + private function setPageTitle( OutputPage $outputPage, $titleText ) { // Escaping HTML characters in order to retain original label that may contain HTML // characters. This prevents having characters evaluated or stripped via // OutputPage::setPageTitle: @@ -133,21 +132,21 @@ $this->msg( 'difference-title' // This should be something like the following, - // $labelLang->getDirMark() . $labelText . $wgLang->getDirMark() + // $labelLang->getDirMark() . $titleText . $wgLang->getDirMark() // or should set the attribute of the h1 to correct direction. // Still note that the direction is "auto" so guessing should // give the right direction in most cases. - )->rawParams( htmlspecialchars( $labelText ) ) + )->rawParams( htmlspecialchars( $titleText ) ) ); } /** * @param OutputPage $outputPage - * @param string $labelText + * @param string $titleText */ - private function setHTMLTitle( OutputPage $outputPage, $labelText ) { + private function setHTMLTitle( OutputPage $outputPage, $titleText ) { // Prevent replacing {{...}} by using rawParams() instead of params(): - $outputPage->setHTMLTitle( $this->msg( 'pagetitle' )->rawParams( $labelText ) ); + $outputPage->setHTMLTitle( $this->msg( 'pagetitle' )->rawParams( $titleText ) ); } /** -- To view, visit https://gerrit.wikimedia.org/r/179135 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic20c54407447e517e3fd7926060c0bc85013892a Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/Wikibase Gerrit-Branch: master Gerrit-Owner: Thiemo Mättig (WMDE) <thiemo.maet...@wikimedia.de> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits