diff --git a/backend/src/db/migrations/20231017141022-fix-event-dates.ts b/backend/src/db/migrations/20231017141022-fix-event-dates.ts index b7e23479c..3c4302f13 100644 --- a/backend/src/db/migrations/20231017141022-fix-event-dates.ts +++ b/backend/src/db/migrations/20231017141022-fix-event-dates.ts @@ -19,11 +19,11 @@ export async function up(next) { for (const event of events.records) { let [id, eventStart, eventEnd] = event let date = new Date(eventStart) - date.setHours(date.getHours() - 2) + date.setHours(date.getHours() - 1) eventStart = date.toISOString() if (eventEnd) { date = new Date(eventEnd) - date.setHours(date.getHours() - 2) + date.setHours(date.getHours() - 1) eventEnd = date.toISOString() } await transaction.run(` diff --git a/backend/src/schema/resolvers/helpers/events.ts b/backend/src/schema/resolvers/helpers/events.ts index 835088d8c..d4fc1fb11 100644 --- a/backend/src/schema/resolvers/helpers/events.ts +++ b/backend/src/schema/resolvers/helpers/events.ts @@ -34,6 +34,8 @@ const validateEventDate = (dateString) => { const date = new Date(dateString) if (date.toString() === 'Invalid Date') throw new UserInputError('Event start date must be a valid date!') + if (date.toISOString() !== dateString) + throw new UserInputError('Event start date must be in ISO format!') const now = new Date() if (date.getTime() < now.getTime()) { throw new UserInputError('Event start date must be in the future!') @@ -44,6 +46,8 @@ const validateEventEnd = (start, end) => { const endDate = new Date(end) if (endDate.toString() === 'Invalid Date') throw new UserInputError('Event end date must be a valid date!') + if (endDate.toISOString() !== end) + throw new UserInputError('Event end date must be in ISO format!') const startDate = new Date(start) if (endDate < startDate) throw new UserInputError('Event end date must be a after event start date!')