jenkins-bot has submitted this change and it was merged. Change subject: Show absolute block expiry in user timezone on block logs ......................................................................
Show absolute block expiry in user timezone on block logs For this add an user parameter to Language::translateBlockExpiry. This allows the function to display the absolute block expiry in the user's time zone. Use this when formatting block log entries. This also avoids the use of $wgUser Bug: T131241 Change-Id: If0a1d3c88bb4242a016eb9b2df115413de786149 --- M includes/logging/BlockLogFormatter.php M languages/Language.php M languages/classes/LanguageFi.php 3 files changed, 11 insertions(+), 7 deletions(-) Approvals: Florianschmidtwelzow: Looks good to me, approved jenkins-bot: Verified diff --git a/includes/logging/BlockLogFormatter.php b/includes/logging/BlockLogFormatter.php index aa90d1d..21e40ec 100644 --- a/includes/logging/BlockLogFormatter.php +++ b/includes/logging/BlockLogFormatter.php @@ -58,7 +58,8 @@ // is shown on the correct side of the tooltip text. $durationTooltip = '‎' . htmlspecialchars( $params[4] ); $params[4] = Message::rawParam( "<span class='blockExpiry' title='$durationTooltip'>" . - $this->context->getLanguage()->translateBlockExpiry( $params[4] ) . '</span>' ); + $this->context->getLanguage()->translateBlockExpiry( $params[4], + $this->context->getUser() ) . '</span>' ); $params[5] = isset( $params[5] ) ? self::formatBlockFlags( $params[5], $this->context->getLanguage() ) : ''; } diff --git a/languages/Language.php b/languages/Language.php index f13f9d6..4af4830 100644 --- a/languages/Language.php +++ b/languages/Language.php @@ -3966,10 +3966,11 @@ * match up with it. * * @param string $str The validated block duration in English + * @param User $user User object to use timezone from or null for $wgUser * @return string Somehow translated block duration * @see LanguageFi.php for example implementation */ - function translateBlockExpiry( $str ) { + function translateBlockExpiry( $str, User $user = null ) { $duration = SpecialBlock::getSuggestedDurations( $this ); foreach ( $duration as $show => $value ) { if ( strcmp( $str, $value ) == 0 ) { @@ -3995,10 +3996,12 @@ } else { // It's an absolute timestamp. if ( $time === 0 ) { // wfTimestamp() handles 0 as current time instead of epoch. - return $this->timeanddate( '19700101000000' ); - } else { - return $this->timeanddate( $time ); + $time = '19700101000000'; } + if ( $user ) { + return $this->userTimeAndDate( $time, $user ); + } + return $this->timeanddate( $time ); } } diff --git a/languages/classes/LanguageFi.php b/languages/classes/LanguageFi.php index c3c40ef..867a2f6 100644 --- a/languages/classes/LanguageFi.php +++ b/languages/classes/LanguageFi.php @@ -85,10 +85,10 @@ /** * @param string $str - * @param bool $forContent + * @param User $user User object to use timezone from or null for $wgUser * @return string */ - function translateBlockExpiry( $str, $forContent = false ) { + function translateBlockExpiry( $str, User $user = null ) { /* 'ago', 'now', 'today', 'this', 'next', 'first', 'third', 'fourth', 'fifth', 'sixth', 'seventh', 'eighth', 'ninth', -- To view, visit https://gerrit.wikimedia.org/r/281692 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: If0a1d3c88bb4242a016eb9b2df115413de786149 Gerrit-PatchSet: 4 Gerrit-Project: mediawiki/core Gerrit-Branch: master Gerrit-Owner: Umherirrender <umherirrender_de...@web.de> Gerrit-Reviewer: Florianschmidtwelzow <florian.schmidt.stargatewis...@gmail.com> Gerrit-Reviewer: Raimond Spekking <raimond.spekk...@gmail.com> Gerrit-Reviewer: Umherirrender <umherirrender_de...@web.de> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits