diff --git a/src/resources/views/pages/airport/index.edge b/src/resources/views/pages/airport/index.edge index 509d358..57a780c 100644 --- a/src/resources/views/pages/airport/index.edge +++ b/src/resources/views/pages/airport/index.edge @@ -81,9 +81,48 @@ {{ airport.City ? airport.City.name : '-' }} {{ airport.City ? airport.City.country : '-' }} - +
+ @component('components/ui/modal', { + title: 'Edit Airport', + buttonClass: 'shadow-md py-2 px-4 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent bg-yellow-300 text-yellow-800 hover:bg-yellow-400 focus:outline-none focus:bg-yellow-200 disabled:opacity-50 disabled:pointer-events-none', + }) + @slot('header') + Edit + @end + @slot('content') +
+

Edit Airport

+ {{ airport.iataCode }} + +
+ {{-- --}} + +
+
+ + @end + @end + @component('components/ui/modal', { + title: 'Delete Airport', + buttonClass: 'shadow-md py-2 px-4 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent bg-red-300 text-red-800 hover:bg-red-400 focus:outline-none focus:bg-red-200 disabled:opacity-50 disabled:pointer-events-none', + }) + @slot('header') + Delete + @end + @slot('content') +
+

Are you sure you want to delete this Airport?

+

{{ airport.name }}

+ +
+ + +
+
+ + @end + @end +
@else @@ -145,6 +184,35 @@ }); }); + + function deleteAirport(iataCode) { + $.ajax({ + url: '{{ api }}/api/v1/airports/' + iataCode, + method: 'DELETE', + headers: { + 'Authorization': `Bearer ${token}` + }, + success: function (response) { + showToast("success", "Success", "Airport deleted successfully!"); + setTimeout(() => { + window.location.reload(); + }, 1000); + }, + error: function (xhr) { + if (xhr.responseJSON && xhr.responseJSON.errors) { + const errors = xhr.responseJSON.errors; + let errorMessages = ''; + errors.forEach(error => { + errorMessages += `${error.field}: ${error.message}\n`; + }); + showToast("error", "Error", errorMessages); + } else { + showToast("error", "Error", "An error occurred. Please try again."); + } + }, + }); + } + @endslot