]> git.localhorst.tv Git - alttp.git/commitdiff
safer method of querying local zone name
authorDaniel Karbach <daniel.karbach@localhorst.tv>
Sun, 31 Aug 2025 17:33:46 +0000 (19:33 +0200)
committerDaniel Karbach <daniel.karbach@localhorst.tv>
Sun, 31 Aug 2025 17:33:46 +0000 (19:33 +0200)
resources/js/helpers/Episode.js
resources/js/pages/Event.jsx
resources/js/pages/Schedule.jsx

index 6e280646d0926537333cdb4abbc01039d191999f..d48ccdced84543c42e86cbfb54745eec6bb04b7f 100644 (file)
@@ -50,6 +50,14 @@ export const hasSGRestream = episode => {
        );
 };
 
+export const getTimeZoneString = () => {
+       try {
+               return Intl.DateTimeFormat().resolvedOptions().timeZone || 'unknown';
+       } catch (e) {
+               return 'unknown';
+       }
+}
+
 export const isActive = episode => {
        if (!episode || !episode.start) return false;
        const now = moment();
index 2eba568e0446bed25e4016998300771ed7b404d4..908aa8a5da3794c58a76befd839848d082f65896 100644 (file)
@@ -16,6 +16,7 @@ import Loading from '../components/common/Loading';
 import EpisodeList from '../components/episodes/List';
 import Detail from '../components/events/Detail';
 import Dialog from '../components/techniques/Dialog';
+import { getTimeZoneString } from '../helpers/Episode';
 import { hasConcluded } from '../helpers/Event';
 import {
        mayEditContent,
@@ -187,7 +188,7 @@ export const Component = () => {
                                {episodes.length ? <>
                                        <div className="text-muted">
                                                {t('schedule.tzHint', {
-                                                       tzname: Intl.DateTimeFormat().resolvedOptions().timeZone,
+                                                       tzname: getTimeZoneString(),
                                                        tzoff: moment().format('Z'),
                                                })}
                                        </div>
index c4be99ead8430b9fe40c707bd64ad768b569b07c..4897824ceb112a869e3c2e26d5324ef5eead626f 100644 (file)
@@ -10,7 +10,7 @@ import ErrorBoundary from '../components/common/ErrorBoundary';
 import Icon from '../components/common/Icon';
 import Filter from '../components/episodes/Filter';
 import List from '../components/episodes/List';
-import { getFilterParams, isFilterActive } from '../helpers/Episode';
+import { getFilterParams, getTimeZoneString, isFilterActive } from '../helpers/Episode';
 import { EpisodesProvider } from '../hooks/episodes';
 
 const GAMES = [
@@ -137,7 +137,7 @@ export const Component = () => {
                                <EpisodesProvider setEpisodes={setEpisodes}>
                                        <div className="text-muted">
                                                {t('schedule.tzHint', {
-                                                       tzname: Intl.DateTimeFormat().resolvedOptions().timeZone,
+                                                       tzname: getTimeZoneString(),
                                                        tzoff: moment().format('Z'),
                                                })}
                                        </div>