* Custom Code for Pilot IDents
Adds a new setting to customize the ident or to use a fixed icao code in a multi airline environment.
If settings is null/empty, airline icao will be used as like before.
* StyleFix
* Aircraft level Hub definitions
* Add ability to define a hub for an aircraft apart from its subfleet.
* Update csv import/export capability for hub_id field
* Fix importertest source csv
* Fix source csv for updating too
* Update aircraft_empty_cols.csv
Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
* Discord notifications for events #433
* Style fixes
* Check for blank webhook urls and disable
* Cleanup items after review
* Changes and fixes
* Style fixes
* Don't load env for testing
* Fix status text
* Refactor saving fields/fares so events get the latest data
* Cleanup
* Style fixes
* Block Aircraft with SimBrief
Changes aim to have the ability to block an aircraft's usage if it is used to generate a SimBrief OFP.
Unused/Expired briefings will be deleted by cron like before but will now be checked by HourlyCron, so admins can define more precise restrictions for them (and the blockage period of their aircraft)
Owner of the SimBrief OFP will be able to start a flight with acars using that particular aircraft, but pilots will get an Aircraft Not Available error (similar to Aircraft State check)
To prevent SimBrief OFP packs being marked as expired/unused, during pirep prefile, pirep_id will be saved to SimBrief model along with flight_id.
And when a flight is finished (pirep file), flight_id will be removed from SimBrief model as before. Only pirep_id will remain and aircraft will be available for another OFP generation.
* Update PirepController
In case a pirep is being saved/submitted with manual entry (but the va is using simbrief effectively) same logic should be applied during save/submit button selection.
Save will act like a pirep prefile , Submit will be pirep file.
* Manual Pirep Checks
Manual pireps, prefiled from a generated simbrief should be checked too. Also pirep.show blade's submit button should provide the same simbrief checks.
* Update PirepService.php
* Change settings and move sb cron to hourly
* StyleFix (SimBriefService)
* Another StyleFix (SimBriefService)
* Update SimBriefController
Removed null check of pirep_id for aircraft list generation to prevent live flights' aircraft being listed for another ofp generation.
( Active acars flights will have both flight_id and pirep_id at simbrief table)
* Update PirepService.php
Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
* Add defaults for 100LL and MOGAS prices
Add missing defaults for 100LL and MOGAS Fuel prices.
* Calculate Fuel Cost according to Fuel Type
Calculate pirep fuel costs according to aircraft (subfleet) fuel type, use JetA as fail safe default.
* Fix for Failing AwardTest
At least attempting to fix
* Fix fuel types logic
* Style
* Invert the logic
Co-authored-by: Nabeel Shahzad <nabeel@nabeel.sh>
* Alphanumeric Callsign For Flights
PR adds ability to define alphanumeric callsigns to flights, display them and use them during SimBrief OFP generation (if pilot ident as callsign option is not enabled)
Translations for en/es/it/pt-br added.
* Change db table name
* Change db column name, fix rules
* Change db column name
* Another db column name change
* Just another one more
* Last one from anumeric_callsign to callsign
Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
* Remove "Remove bid on accept" setting and remove bids after PIREP was filed
fixes#1039
* Add migration to remove setting from database
* fix migration naming and remove obsolete code
Co-authored-by: Andreas Palm <ap@ewsp.de>
* Move SimBrief aircraft selection to Controller
Instead of passing subfleets to blade (and doing two foreach loops and ifs to populate the dropdown), we are building a proper aircraft list here.
Did not removed $subfleets from data being passed to blade on purpose, it may be removed later on.
* Style Fix
* Update aircraft selection blade to use $aircrafts
* Order generated Aircrafts collection
First ICAO then Registration
* Add privatized name setting for simbrief
To prevent possible privacy issues according to latest regulations.
* Add privatized name to SimBrief form
It is controlled with a setting, if not enabled we will not pass any names to SimBrief via API (this will result users SimBrief membership name being used at the OFP as before)
* Add boolean field "disable activity checks" to role, check for this field inside PilotLeave-Check, add tests
* fix checkbox on form
* CS fixes
* CS fixes again :-)
Co-authored-by: Andreas Palm <ap@ewsp.de>
* Refactoring simbrief fares and aircraft
* Hide user full name/email
* Sort PIREP fields desc; fix cargo counts
* Change the sorting
* Extra logs
* Fix tests
* Return fare information through the API
* Style fixes
* Test fix
* Another test fix
* More fixes
* Set aircraft and fares in prefile
* Formatting
* Advanced Fuel Calculations
PR aims to have realistic fuel debit calculations as in the real ops. When enabled, remaining fuel amounts from previous flight will be reduced from block fuel and airline will only pay for uplifted fuel amount.
If onboard fuel is enough for the flight or exceeds the required amount no fuel debit will be issued.
If this is the first flight of the aircraft or the tanks are dry, full block fuel will be treated as uplifted.
Disabled / uses current default (fuel_used will be debited)
Aircraft table also will hold the fuel_onboard value (not needed for calculations, just saving for displaying purposes)
* Style Fix
* Another Style Fix
Love StyleCi
* Fix Settings
Moved new setting under other pirep settings
* Fix Setting Check
* Fix EOF settings.yml
* Fix Settings
* SimBrief Integration Update
* Added SimBrief Type field to subfleets, can be used to assign simbrief airframes to subfleets and fix non existing or wrong types. If not used simbrief form will use aircraft's icao type code
* Added Passenger and Baggage weights to settings
* Added setting for using PhpVms Pilot/User Ident as simbrief atc callsign
* SimBrief form code cleaned up a bit and improved. Now form supports both cargo and passenger fares to be used at the same time.
Generated passenger baggage weight will be reduced from aircraft's cargo capacity and remaining amount will be used for random cargo generation.
Also multiple cargo fares or any mix is possible now (like only cargo, only passenger, multiple cargo and passenger fares)
* StyleFix (SimBrief Controller)
* Fix Callsign Setting Check
* Code Cleanup
Reduced loops and removed if's in loops, getting fares from aircraft instead of flight/subfleets.
No need to go through getReconciledFaresForFlight anymore. Aircraft provides all fare info we need.
Removed unnecessary html elements, added some comments.
* Update Simbrief Controller
Fixed setting checks.
Removed non used $subfleet and from main form and $aircraft from aircraft selection form blade.
Added/fixed comments.
* StyleFix for Controller
* Update SubFleet Model
Add hub_id for storing subfleet's main base/hub airport, define a relationship with airport model to get details of the base/hub airport when needed.
* Update Admin / SubFleetController
Added the ability to read and pass hub airports to admin view for create/edit options.
* Update Admin/SubFleets.fields.blade
Added the dropdown for adding/editing main base/hub of a subfleet.
* Add migration for the hub_id column
Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
Co-authored-by: Nabeel Shahzad <nshahzad@live.com>