fixed typo

This commit is contained in:
2025-10-01 00:10:21 -05:00
parent 30b2b76290
commit bd247fbec6
5 changed files with 128 additions and 10 deletions

View File

@@ -1,5 +1,7 @@
from django.contrib import admin
from django.contrib import messages
from .models import Carrier, AircraftBase, Equipment, Aerodrome, Flight
from .services import cancel_flight_cascade
# Register your models here.
admin.site.register(Carrier)
@@ -19,6 +21,7 @@ class FlightAdmin(admin.ModelAdmin): # type: ignore[type-arg]
"arrival_time_display",
"status_display",
)
actions = ["cancel_selected_flights"]
@admin.display(description="Flight")
def flight_number_display(self, obj):
@@ -31,3 +34,24 @@ class FlightAdmin(admin.ModelAdmin): # type: ignore[type-arg]
@admin.display(description="Status")
def status_display(self, obj):
return obj.status
@admin.action(description="Cancel selected flights (and dependent flights)")
def cancel_selected_flights(self, request, queryset):
total_canceled = []
for flight in queryset:
if not flight.canceled:
canceled_flights = cancel_flight_cascade(flight)
total_canceled.extend(canceled_flights)
if total_canceled:
self.message_user(
request,
f"Canceled {len(total_canceled)} flight(s) including dependent flights.",
messages.SUCCESS,
)
else:
self.message_user(
request,
"No flights were canceled (already canceled).",
messages.WARNING,
)