X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Flogging%2FTagLogFormatter.php;h=8458e0b40a2e340d681870551c0496e28714825d;hb=4905504faded8f85a9b3d68b27da5c9e2f11bd06;hp=230d13b60b0729fbf8906f8eb0162e5c947b8220;hpb=61898ad28ed69c5b391eb43e0db9386279b9612c;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/logging/TagLogFormatter.php b/includes/logging/TagLogFormatter.php index 230d13b60b..8458e0b40a 100644 --- a/includes/logging/TagLogFormatter.php +++ b/includes/logging/TagLogFormatter.php @@ -30,6 +30,45 @@ * @since 1.25 */ class TagLogFormatter extends LogFormatter { + + protected function getMessageParameters() { + $params = parent::getMessageParameters(); + + $isRevLink = !empty( $params[3] ); + if ( $isRevLink ) { + $id = $params[3]; + $target = $this->entry->getTarget(); + $query = [ + 'oldid' => $id, + 'diff' => 'prev' + ]; + } else { + $id = $params[4]; + $target = SpecialPage::getTitleValueFor( 'Log' ); + $query = [ + 'logid' => $id, + ]; + } + + $formattedNumber = $this->context->getLanguage()->formatNum( $id, true ); + if ( $this->plaintext ) { + $link = $formattedNumber; + } elseif ( !$isRevLink || $target->exists() ) { + $link = $this->getLinkRenderer()->makeKnownLink( + $target, $formattedNumber, [], $query ); + } else { + $link = htmlspecialchars( $formattedNumber ); + } + + if ( $isRevLink ) { + $params[3] = Message::rawParam( $link ); + } else { + $params[4] = Message::rawParam( $link ); + } + + return $params; + } + protected function getMessageKey() { $key = parent::getMessageKey(); $params = $this->getMessageParameters(); @@ -50,4 +89,5 @@ class TagLogFormatter extends LogFormatter { return $key; } + }