Repository navigation
Fix - DB, Mail and Browser tab title
[1.1.0] — 2026-03-06
Added
- Admin URL in guide displayed as a clickable link
- Sidebar navigation hint in admin guide section: Addons → LR Corrections
Changed
- Guide layout redesigned to match SkyOps style — section titles outside card, content in dark bordered card
- Abuse warning box rewritten to be clear and direct — no specific tool names, focus on the rule: no proof = no request
- Contradicting FAQ entry removed ("I don't remember the exact rate — what do I enter?") as it conflicted with the no-guessing policy
- Guide tab icon changed to 📖 with clean label "Guide" / "Handbuch"
- Admin guide URL changed from static code block to live clickable link
- Database tables renamed to follow community
lrc_prefix convention:landing_rate_corrections→lrc_correctionslrc_notification_recipients→lrc_recipients
- Browser tab title now follows phpVMS language setting (DE: "Landeratenkorrekturen" / EN: "Landing Rate Corrections")
Fixed
- Status badges (
✓ Genehmigt,✗ Abgelehnt) no longer wrap across two lines (white-space: nowrap) - Guide panel no longer wrapped in
lrc-cardborder — removed oversized frame around guide tab - Admin email notifications no longer cause ~30 second delay on form submit — replaced per-recipient
foreachloop with singleNotification::send()call (one SMTP connection for all recipients)
Security
saveRecipientsnow validates that submitted user IDs are actually admin users — arbitrary user IDs rejectedauditLogquery on pilot dashboard limited to 100 entries — prevents unbounded database reads- Evidence filenames sanitized before storing (
getClientOriginalNameoutput stripped of special characters) Content-Dispositionresponse header sanitized to prevent header injection via filenames- Approve/reject race condition mitigated with
->fresh()->isPending()DB-level re-check - Composite database index added on
(pilot_id, status)for pilot dashboard queries
💚 Support This Project
Landing Rate Corrections is developed independently and maintained in my free time for the virtual aviation community.
Developing and maintaining phpVMS modules requires many hours of:
- development
- testing
- documentation
- support
- maintenance
If this module helps your virtual airline, please consider supporting the project.
Your support helps fund:
- continued development
- new features
- bug fixes
- development infrastructure
- long-term maintenance
Every contribution helps keep the project alive ❤️
☕ Donate via PayPal
Support the project here:
https://www.paypal.com/donate/?hosted_button_id=7QEUD3PZLZPV2
❤️ Author
Developed for the German Sky Group Virtual Airline
Thomas Kant
Built on phpVMS 7 using the nWidart Laravel Modules framework.
Issues and pull requests are welcome.
Full Changelog: v1.0.0...v1.1.0