From: jenkins-bot Date: Wed, 28 Aug 2019 06:57:34 +0000 (+0000) Subject: Merge "Let Html::element do the HTML encoding" X-Git-Tag: 1.34.0-rc.0~536 X-Git-Url: https://git.cyclocoop.org/%7B%24admin_url%7Dmembres/supprimer.php?a=commitdiff_plain;h=786524a94a5dd8f34c10b183bc59c91e2ad96589;hp=-c;p=lhc%2Fweb%2Fwiklou.git Merge "Let Html::element do the HTML encoding" --- 786524a94a5dd8f34c10b183bc59c91e2ad96589 diff --combined includes/Linker.php index a79ec3a8f1,f4be32642a..03d2516667 --- a/includes/Linker.php +++ b/includes/Linker.php @@@ -688,35 -688,37 +688,37 @@@ class Linker if ( $label == '' ) { $label = $title->getPrefixedText(); } - $encLabel = htmlspecialchars( $label ); $currentExists = $time && MediaWikiServices::getInstance()->getRepoGroup()->findFile( $title ) !== false; if ( ( $wgUploadMissingFileUrl || $wgUploadNavigationUrl || $wgEnableUploads ) && !$currentExists ) { - $redir = RepoGroup::singleton()->getLocalRepo()->checkRedirect( $title ); - - if ( $redir ) { - // We already know it's a redirect, so mark it - // accordingly + if ( RepoGroup::singleton()->getLocalRepo()->checkRedirect( $title ) ) { + // We already know it's a redirect, so mark it accordingly return self::link( $title, - $encLabel, + htmlspecialchars( $label ), [ 'class' => 'mw-redirect' ], wfCgiToArray( $query ), [ 'known', 'noclasses' ] ); } - $href = self::getUploadUrl( $title, $query ); - - return '' . - $encLabel . ''; + return Html::element( 'a', [ + 'href' => self::getUploadUrl( $title, $query ), + 'class' => 'new', + 'title' => $title->getPrefixedText() + ], $label ); } - return self::link( $title, $encLabel, [], wfCgiToArray( $query ), [ 'known', 'noclasses' ] ); + return self::link( + $title, + htmlspecialchars( $label ), + [], + wfCgiToArray( $query ), + [ 'known', 'noclasses' ] + ); } /** @@@ -978,9 -980,7 +980,9 @@@ $items[] = self::link( $contribsPage, wfMessage( 'contribslink' )->escaped(), $attribs ); } - if ( $blockable && $wgUser->isAllowed( 'block' ) ) { + $userCanBlock = MediaWikiServices::getInstance()->getPermissionManager() + ->userHasRight( $wgUser, 'block' ); + if ( $blockable && $userCanBlock ) { $items[] = self::blockLink( $userId, $userText ); } @@@ -1322,7 -1322,7 +1324,7 @@@ $services->getNamespaceInfo()->getCanonicalName( NS_MEDIA ), '/' ); $medians .= '|'; $medians .= preg_quote( - MediaWikiServices::getInstance()->getContentLanguage()->getNsText( NS_MEDIA ), + $services->getContentLanguage()->getNsText( NS_MEDIA ), '/' ) . '):'; @@@ -1359,7 -1359,7 +1361,7 @@@ } if ( $match[1] !== false && $match[1] !== '' ) { if ( preg_match( - MediaWikiServices::getInstance()->getContentLanguage()->linkTrail(), + $services->getContentLanguage()->linkTrail(), $match[3], $submatch ) ) { @@@ -1375,7 -1375,7 +1377,7 @@@ Title::newFromText( $linkTarget ); try { - $target = MediaWikiServices::getInstance()->getTitleParser()-> + $target = $services->getTitleParser()-> parseTitle( $linkTarget ); if ( $target->getText() == '' && !$target->isExternal() @@@ -2105,10 -2105,8 +2107,10 @@@ * @return string HTML fragment */ public static function getRevDeleteLink( User $user, Revision $rev, LinkTarget $title ) { - $canHide = $user->isAllowed( 'deleterevision' ); - if ( !$canHide && !( $rev->getVisibility() && $user->isAllowed( 'deletedhistory' ) ) ) { + $permissionManager = MediaWikiServices::getInstance()->getPermissionManager(); + $canHide = $permissionManager->userHasRight( $user, 'deleterevision' ); + $canHideHistory = $permissionManager->userHasRight( $user, 'deletedhistory' ); + if ( !$canHide && !( $rev->getVisibility() && $canHideHistory ) ) { return ''; } diff --combined tests/parser/parserTests.txt index f4b110ed5f,3728b9a507..0fa91d4afc --- a/tests/parser/parserTests.txt +++ b/tests/parser/parserTests.txt @@@ -8073,7 -8073,7 +8073,7 @@@ File containing double quotes and space !! wikitext [[File:Cool "Gator".png]] !! html/php+tidy -

File:Cool "Gator".png +

File:Cool "Gator".png

!! html/parsoid

File:Cool "Gator".png

@@@ -8150,8 -8150,8 +8150,8 @@@ Broken image links with HTML captions ( [[File:Nonexistent|<]] [[File:Nonexistent|abc]] !! html/php -

<script></script> - <script></script> +

<script></script> + <script></script> < abc

@@@ -15828,7 -15828,7 +15828,7 @@@ parsoid=wt2html,wt2wt,html2htm ################### !! test -Link to image page- image page normally doesn't exists, hence edit link +Link to image page- image page normally doesn't exist, hence edit link Add test with existing image page #

Image:test !! wikitext