From c319c6d5ea35480ddc8367cdd04e823bcb999451 Mon Sep 17 00:00:00 2001 From: Jonas Braathen Date: Wed, 8 Jan 2020 01:43:11 +0100 Subject: [PATCH] Workaround daylight saving time issues --- src/components/EventList.js | 14 ++++++++------ src/templates/event-organizer.js | 4 ---- src/templates/event.js | 16 +++++++++------- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/components/EventList.js b/src/components/EventList.js index b72f08b..d7cbc5d 100644 --- a/src/components/EventList.js +++ b/src/components/EventList.js @@ -25,6 +25,8 @@ const eventOrganizersQuery = graphql` ` const EventList = props => { const renderEvent = event => { + /* TODO: Make API return proper UTC datetimes */ + const startTime = moment(event.start_time).utcOffset(1) return (
@@ -35,23 +37,23 @@ const EventList = props => {
- {moment(event.start_time).format('dddd')}{' '} + {startTime.format('dddd')}{' '} - {moment(event.start_time).format('D.')}{' '} - {moment(event.start_time).format('MMMM')}{' '} + {startTime.format('D.')}{' '} + {startTime.format('MMMM')}{' '} {/* Only specify year if different. */} - {!moment(event.start_time).isSame(new Date(), 'year') && ( + {!startTime.isSame(new Date(), 'year') && ( - {moment(event.start_time).format('YYYY')}{' '} + {startTime.format('YYYY')}{' '} )}

{event.title}

- kl. {moment(event.start_time).format('HH:mm')} + kl. {startTime.format('HH:mm')} {event.event_types && event.event_types.length && (
diff --git a/src/templates/event-organizer.js b/src/templates/event-organizer.js index 3290c8e..6cc8d90 100644 --- a/src/templates/event-organizer.js +++ b/src/templates/event-organizer.js @@ -1,15 +1,11 @@ import React from 'react' import PropTypes from 'prop-types' import { graphql, Link } from 'gatsby' -import moment from 'moment' -import 'moment/locale/nb' import Meta from '../components/Meta' import Layout from '../components/Layout' import EventList from '../components/EventList' -moment.locale('nb') - export default class EventOrganizerPage extends React.Component { render() { const { data, pageContext } = this.props diff --git a/src/templates/event.js b/src/templates/event.js index e742ad9..5a8bcd5 100644 --- a/src/templates/event.js +++ b/src/templates/event.js @@ -51,6 +51,8 @@ export const EventTemplate = ({ organizers, }) => { const hasFeaturedMedia = featuredMedia && !!featuredMedia.localFile + /* TODO: Make API return proper UTC datetimes */ + const start = moment(startTime).utcOffset(1) return (
@@ -72,25 +74,25 @@ export const EventTemplate = ({
- {moment(startTime).format('dddd')}{' '} + {start.format('dddd')}{' '} - {moment(startTime).format('D.')}{' '} + {start.format('D.')}{' '} - {moment(startTime).format('MMMM')}{' '} + {start.format('MMMM')}{' '} {/* Only specify year if different. */} - {!moment(startTime).isSame(new Date(), 'year') && ( + {!start.isSame(new Date(), 'year') && ( - {moment(startTime).format('YYYY')}{' '} + {start.format('YYYY')}{' '} )}
{/* TODO: make the API stop assuming event duration is 2 hours when unspecified? */} - kl. {moment(startTime).format('HH:mm')} - {endTime && <>—{moment(endTime).format('HH:mm')}} + kl. {start.format('HH:mm')} + {endTime && <>—{moment(endTime).utcOffset(1).format('HH:mm')}}
Pris: {formatPrices(priceRegular, priceStudent)}