diff --git a/server/scripts/modules/almanac.mjs b/server/scripts/modules/almanac.mjs index e2bf666..92be74e 100644 --- a/server/scripts/modules/almanac.mjs +++ b/server/scripts/modules/almanac.mjs @@ -3,7 +3,7 @@ import { loadImg, preloadImg } from './utils/image.mjs'; import { DateTime } from '../vendor/auto/luxon.mjs'; import STATUS from './status.mjs'; import WeatherDisplay from './weatherdisplay.mjs'; -import { registerDisplay } from './navigation.mjs'; +import { registerDisplay, timeZone } from './navigation.mjs'; class Almanac extends WeatherDisplay { constructor(navId, elemId) { @@ -123,10 +123,10 @@ class Almanac extends WeatherDisplay { // sun and moon data this.elem.querySelector('.day-1').innerHTML = Today.toLocaleString({ weekday: 'long' }); this.elem.querySelector('.day-2').innerHTML = Tomorrow.toLocaleString({ weekday: 'long' }); - this.elem.querySelector('.rise-1').innerHTML = DateTime.fromJSDate(info.sun[0].sunrise).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); - this.elem.querySelector('.rise-2').innerHTML = DateTime.fromJSDate(info.sun[1].sunrise).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); - this.elem.querySelector('.set-1').innerHTML = DateTime.fromJSDate(info.sun[0].sunset).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); - this.elem.querySelector('.set-2').innerHTML = DateTime.fromJSDate(info.sun[1].sunset).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); + this.elem.querySelector('.rise-1').innerHTML = DateTime.fromJSDate(info.sun[0].sunrise).setZone(timeZone()).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); + this.elem.querySelector('.rise-2').innerHTML = DateTime.fromJSDate(info.sun[1].sunrise).setZone(timeZone()).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); + this.elem.querySelector('.set-1').innerHTML = DateTime.fromJSDate(info.sun[0].sunset).setZone(timeZone()).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); + this.elem.querySelector('.set-2').innerHTML = DateTime.fromJSDate(info.sun[1].sunset).setZone(timeZone()).toLocaleString(DateTime.TIME_SIMPLE).toLowerCase(); const days = info.moon.map((MoonPhase) => { const fill = {}; diff --git a/server/scripts/modules/hourly-graph.mjs b/server/scripts/modules/hourly-graph.mjs index e34421f..a0609c4 100644 --- a/server/scripts/modules/hourly-graph.mjs +++ b/server/scripts/modules/hourly-graph.mjs @@ -3,7 +3,7 @@ import STATUS from './status.mjs'; import getHourlyData from './hourly.mjs'; import WeatherDisplay from './weatherdisplay.mjs'; -import { registerDisplay } from './navigation.mjs'; +import { registerDisplay, timeZone } from './navigation.mjs'; import { DateTime } from '../vendor/auto/luxon.mjs'; class HourlyGraph extends WeatherDisplay { @@ -145,7 +145,7 @@ const drawPath = (path, ctx, options) => { }; // format as 1p, 12a, etc. -const formatTime = (time) => time.toFormat('ha').slice(0, -1); +const formatTime = (time) => time.setZone(timeZone()).toFormat('ha').slice(0, -1); // register display registerDisplay(new HourlyGraph(4, 'hourly-graph')); diff --git a/server/scripts/modules/hourly.mjs b/server/scripts/modules/hourly.mjs index 88791e4..6e350d4 100644 --- a/server/scripts/modules/hourly.mjs +++ b/server/scripts/modules/hourly.mjs @@ -7,7 +7,7 @@ import { temperature as temperatureUnit, distanceKilometers } from './utils/unit import { getHourlyIcon } from './icons.mjs'; import { directionToNSEW } from './utils/calc.mjs'; import WeatherDisplay from './weatherdisplay.mjs'; -import { registerDisplay } from './navigation.mjs'; +import { registerDisplay, timeZone } from './navigation.mjs'; import getSun from './almanac.mjs'; class Hourly extends WeatherDisplay { @@ -59,7 +59,7 @@ class Hourly extends WeatherDisplay { // get a unit converter const temperatureConverter = temperatureUnit(); - const startingHour = DateTime.local(); + const startingHour = DateTime.local().setZone(timeZone()); const lines = this.data.map((data, index) => { const fillValues = {};