From e5eb121ab75fdf0d5b5ffa1b4fef61107329e4cf Mon Sep 17 00:00:00 2001 From: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Date: Mon, 15 Jan 2024 22:22:04 +0530 Subject: [PATCH] fix: Reschedule a cancelled booking (#13170) * fix: Reschedule a cancelled booking * canceled instead of cancelled --------- Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> --- apps/web/public/static/locales/en/common.json | 1 + packages/features/bookings/lib/handleNewBooking.ts | 7 +++++++ packages/lib/errorCodes.ts | 1 + 3 files changed, 9 insertions(+) diff --git a/apps/web/public/static/locales/en/common.json b/apps/web/public/static/locales/en/common.json index d303b2d8c8..5b99871105 100644 --- a/apps/web/public/static/locales/en/common.json +++ b/apps/web/public/static/locales/en/common.json @@ -1307,6 +1307,7 @@ "do_this": "Do this", "turn_off": "Turn off", "turn_on": "Turn on", + "cancelled_bookings_cannot_be_rescheduled":"Canceled bookings cannot be rescheduled", "settings_updated_successfully": "Settings updated successfully", "error_updating_settings": "Error updating settings", "personal_cal_url": "My personal {{appName}} URL", diff --git a/packages/features/bookings/lib/handleNewBooking.ts b/packages/features/bookings/lib/handleNewBooking.ts index ce29e75f94..055460cd07 100644 --- a/packages/features/bookings/lib/handleNewBooking.ts +++ b/packages/features/bookings/lib/handleNewBooking.ts @@ -1224,6 +1224,13 @@ async function handler( if (!originalRescheduledBooking) { throw new HttpError({ statusCode: 404, message: "Could not find original booking" }); } + + if ( + originalRescheduledBooking.status === BookingStatus.CANCELLED && + !originalRescheduledBooking.rescheduled + ) { + throw new HttpError({ statusCode: 403, message: ErrorCode.CancelledBookingsCannotBeRescheduled }); + } } //checks what users are available diff --git a/packages/lib/errorCodes.ts b/packages/lib/errorCodes.ts index 07c51ae693..e7320a5726 100644 --- a/packages/lib/errorCodes.ts +++ b/packages/lib/errorCodes.ts @@ -6,4 +6,5 @@ export enum ErrorCode { AlreadySignedUpForBooking = "already_signed_up_for_this_booking_error", HostsUnavailableForBooking = "hosts_unavailable_for_booking", EventTypeNotFound = "event_type_not_found_error", + CancelledBookingsCannotBeRescheduled = "cancelled_bookings_cannot_be_rescheduled", }