From 8d3e81650cea788d85385ad524a385cc9a97a676 Mon Sep 17 00:00:00 2001 From: dev-banane Date: Tue, 7 Apr 2026 22:08:52 +0200 Subject: [PATCH] fix: flight submission --- server/db/flights.ts | 3 +++ server/routes/sessions.ts | 4 ++-- src/components/modals/AtisReminderModal.tsx | 2 +- src/pages/Create.tsx | 6 +++--- src/pages/Login.tsx | 13 +++++++------ src/pages/Sessions.tsx | 2 +- 6 files changed, 17 insertions(+), 13 deletions(-) diff --git a/server/db/flights.ts b/server/db/flights.ts index 276d8075..39c557fa 100644 --- a/server/db/flights.ts +++ b/server/db/flights.ts @@ -340,6 +340,9 @@ export async function addFlight(sessionId: string, flightData: AddFlightData) { } if (!flightData.sid) { + if (!flightData.icao && flightData.departure) { + flightData.icao = flightData.departure as string; + } const sidResult = await generateSID(flightData); flightData.sid = sidResult.sid; } diff --git a/server/routes/sessions.ts b/server/routes/sessions.ts index a894b203..891c5df7 100644 --- a/server/routes/sessions.ts +++ b/server/routes/sessions.ts @@ -60,12 +60,12 @@ router.post( const userSessions = await getSessionsByUser(createdBy); const userRoles = await getUserRoles(createdBy); - const hasSpecialRole = + const isTester = isAdmin(createdBy) || userRoles.some( (role) => role.name === 'Tester' || role.name === 'Event Controller' ); - const maxSessions = hasSpecialRole ? 50 : 10; + const maxSessions = isTester ? 100 : 50; if (userSessions.length >= maxSessions) { return res.status(400).json({ diff --git a/src/components/modals/AtisReminderModal.tsx b/src/components/modals/AtisReminderModal.tsx index b01a86ab..282d1e0d 100644 --- a/src/components/modals/AtisReminderModal.tsx +++ b/src/components/modals/AtisReminderModal.tsx @@ -82,7 +82,7 @@ export default function AtisReminderModal({ return (
-
+

PFATC Network ATIS Format Reminder

diff --git a/src/pages/Create.tsx b/src/pages/Create.tsx index 9e3f5e34..e0b9d69b 100644 --- a/src/pages/Create.tsx +++ b/src/pages/Create.tsx @@ -61,7 +61,7 @@ export default function Create() { if (user) { fetchMySessions() .then((sessions) => { - const maxSessions = user.isAdmin || user.isTester ? 50 : 10; + const maxSessions = user.isAdmin || user.isTester ? 100 : 50; setSessionCount(sessions.length); setSessionLimitReached(sessions.length >= maxSessions); }) @@ -163,7 +163,7 @@ export default function Create() { } if (sessionLimitReached) { - const maxSessions = user?.isAdmin || user?.isTester ? 50 : 10; + const maxSessions = user?.isAdmin || user?.isTester ? 100 : 50; setError( `Session limit reached. You can create up to ${maxSessions} sessions.` ); @@ -302,7 +302,7 @@ export default function Create() { /> Sessions: {sessionCount}/ - {user?.isAdmin || user?.isTester ? 50 : 10} + {user?.isAdmin || user?.isTester ? 100 : 50} {sessionLimitReached && ' (Limit reached)'}
diff --git a/src/pages/Login.tsx b/src/pages/Login.tsx index aa95db2c..9b16442c 100644 --- a/src/pages/Login.tsx +++ b/src/pages/Login.tsx @@ -80,7 +80,7 @@ export default function Login() {
-
+
diff --git a/src/pages/Sessions.tsx b/src/pages/Sessions.tsx index a26be948..070c1ad4 100644 --- a/src/pages/Sessions.tsx +++ b/src/pages/Sessions.tsx @@ -49,7 +49,7 @@ export default function Sessions() { const [availableImages, setAvailableImages] = useState([]); const [customLoaded, setCustomLoaded] = useState(false); - const maxSessions = user?.isAdmin || user?.isTester ? 50 : 10; + const maxSessions = user?.isAdmin || user?.isTester ? 100 : 50; useEffect(() => { if (!user) {