$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,
* @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();
}
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.25
+ * @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.
*