Integration of VATSIM validation & tracking
What's new
-
Network Flight Verification via VATSIM & IVAO Live Feeds
Pilots flying on VATSIM or IVAO can now have their flights automatically verified against the live network feeds. A scheduler running every minute polls the VATSIM data feed and the IVAO Whazzup feed, recording heartbeat sightings for any active live flight whose pilot is found online with a matching callsign and airborne groundspeed. When a flight is completed via ACARS, if conditions are met within the flight window, the PIREP is marked as verified_network = 'vatsim' or verified_network = 'ivao', which feeds into the existing network scoring rules.
-
Support Page
New public /support page showing live donation stats for the current month — total donated, monthly costs, percentage covered, a live progress bar, and a list of recent supporters. Stats are driven by actual donation records and the monthly cost breakdown.
-
Donate Page
Dedicated /donate page with a Monthly / One-time tab toggle. Monthly panel shows three supporter tiers (€5 Supporter, €10 Crew Member, €25 First Officer) each linking to a Stripe payment link. One-time panel provides a custom amount input. Includes a reassurance grid (cancel anytime, no account required, supporter badge) and a Stripe security badge.
-
Stripe Webhook Handler
Webhook endpoint for stripe. Completed donations are recorded with amount, donor identity, and subscription status.
-
Donation Management in Aegis
Finance section in Aegis with two new resources: Donations (read-only list with a Mark as Supporter action) and Monthly Costs (full CRUD for managing infrastructure cost line items).
What's improved
-
Unified Public Navigation & Footer
The navbar and footer across all public-facing pages are now powered by a single shared component. This ensures a consistent look and behaviour site-wide, with the mobile menu working correctly on every page.
-
Network Verification via Position Reports
VATSIM and IVAO online status is now verified directly through the Connect API. A live flight record is automatically created on the first contact report for each booking and checked against the network feeds in real time.
-
PIREP Network Field Population
When a PIREP is submitted via the Connect API, it is automatically linked to the pilot\'s live flight record. When staff approve the PIREP, the verified network (VATSIM or IVAO) is carried over and stored on the PIREP.
What's fixed
- PIREPs always showing Network: Null — live flight records were never created from the Connect API flow, so network verification had no data to read from.
- Live flights table remaining empty for all Connect API flights — live flights are now created automatically on first position report.