X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2FMWTimestamp.php;h=937aedbddc2726b902222729dd34b80e18f8e6b9;hb=2c085ac5a3c8020958d52554e13317feef30ffaf;hp=d28f88e5049e6bf6d7aa9696cdef8564b656cbbf;hpb=355fdffe3eb08838e56909f7c36f6bff786c8b94;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/MWTimestamp.php b/includes/MWTimestamp.php index d28f88e504..937aedbddc 100644 --- a/includes/MWTimestamp.php +++ b/includes/MWTimestamp.php @@ -106,7 +106,7 @@ class MWTimestamp { $ts, $da ) ) { - #TS_ISO_8601_BASIC + # TS_ISO_8601_BASIC } elseif ( preg_match( '/^(\d{4})\-(\d\d)\-(\d\d) (\d\d):(\d\d):(\d\d)\.*\d*[\+\- ](\d\d)$/', $ts, @@ -203,11 +203,15 @@ class MWTimestamp { * @deprecated since 1.26 Use Language::getHumanTimestamp directly * * @param MWTimestamp|null $relativeTo The base timestamp to compare to (defaults to now) - * @param User|null $user User the timestamp is being generated for (or null to use main context's user) - * @param Language|null $lang Language to use to make the human timestamp (or null to use main context's language) + * @param User|null $user User the timestamp is being generated for + * (or null to use main context's user) + * @param Language|null $lang Language to use to make the human timestamp + * (or null to use main context's language) * @return string Formatted timestamp */ - public function getHumanTimestamp( MWTimestamp $relativeTo = null, User $user = null, Language $lang = null ) { + public function getHumanTimestamp( + MWTimestamp $relativeTo = null, User $user = null, Language $lang = null + ) { if ( $lang === null ) { $lang = RequestContext::getMain()->getLanguage(); } @@ -367,6 +371,26 @@ class MWTimestamp { return $this->timestamp->getTimezone(); } + /** + * Get the localized timezone message, if available. + * + * Premade translations are not shipped as format() may return whatever the + * system uses, localized or not, so translation must be done through wiki. + * + * @since 1.27 + * @return Message The localized timezone message + */ + public function getTimezoneMessage() { + $tzMsg = $this->format( 'T' ); // might vary on DST changeover! + $key = 'timezone-' . strtolower( trim( $tzMsg ) ); + $msg = wfMessage( $key ); + if ( $msg->exists() ) { + return $msg; + } else { + return new RawMessage( $tzMsg ); + } + } + /** * Format the timestamp in a given format. *