fix tz issue when booking in non-utc time

This commit is contained in:
Thomas Ruoff
2022-03-18 00:10:33 +01:00
parent c6158f602f
commit 1fd922e362
2 changed files with 22 additions and 6 deletions

View File

@@ -1,6 +1,20 @@
import { BookFormData } from '../context/book'
import { BOOKING_STATUS } from '../db/enums'
import { dateFormatBackend } from './date';
import fetch from './fetch'
function getBody(formData: BookFormData) {
const body: any = {
...formData,
};
// if existend, convert dates to TZ less YYYY-MM-DD format
body.startDate && (body.startDate = dateFormatBackend(body.startDate))
body.endDate && (body.endDate = dateFormatBackend(body.endDate))
return body;
}
export function getBookingStatus(status: BOOKING_STATUS) {
switch (status) {
case BOOKING_STATUS.REQUESTED:
@@ -16,10 +30,10 @@ export function getBookingStatus(status: BOOKING_STATUS) {
}
}
export async function createBooking(formData: object) {
export async function createBooking(formData: BookFormData) {
return fetch('/api/bookings', {
method: 'POST',
body: formData,
body: getBody(formData),
})
}
@@ -30,9 +44,9 @@ export async function cancelBooking(uuid: string) {
})
}
export async function patchBooking(uuid: string, bookingData: object) {
export async function patchBooking(uuid: string, bookingData: BookFormData) {
return fetch(`/api/bookings/${uuid}`, {
method: 'PATCH',
body: { ...bookingData },
body: getBody(bookingData),
})
}