From c77727ebd23c5a612a75d0e2abe376ff63686805 Mon Sep 17 00:00:00 2001 From: Marcus Tonge <mt01158@surrey.ac.uk> Date: Fri, 28 Apr 2023 18:35:33 +0100 Subject: [PATCH] Delete button for bookings page --- src/pages/bookings/bookings.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/pages/bookings/bookings.js b/src/pages/bookings/bookings.js index 6fa0a82..4f6746a 100644 --- a/src/pages/bookings/bookings.js +++ b/src/pages/bookings/bookings.js @@ -61,6 +61,24 @@ const BookingsPage = () => { setIsOpen(true); }; + const handleDeleteBooking = async (selectedBooking) => { + try { + const response = await fetch(`${bookingServiceBaseUrl}/bookings/delete/${selectedBooking.id}`, { + method: "DELETE", + headers: { + Authorization: `Bearer ${localStorage.getItem("token")}`, + }, + }); + if (response.ok) { + setBookings(bookings.filter((booking) => booking.id !== selectedBooking.id)); + } else { + setError("Booking extension failed"); + } + } catch (error) { + setError(error.message); + } + }; + const handleSubmitExtend = async () => { setIsOpen(false); setExtendTime(null); @@ -119,9 +137,15 @@ const BookingsPage = () => { <Text> <strong>Expiry Time:</strong> {booking.endTime} </Text> + <Stack> + <Button mt={4} onClick={() => handleExtendBooking(booking)}> Extend booking </Button> + <Button color={"white"} backgroundColor={"red.500"} mt={4} onClick={() => handleDeleteBooking(booking)}> + Delete booking + </Button> + </Stack> </Box> ))} </Stack> -- GitLab