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