74 Commits
Author SHA1 Message Date
B.Fatih KOZ ced2012578 Update simbrief_briefing.blade.php (#1497)
Change in blade forms to SimBrief provided direct links.
2022-11-30 07:47:10 -06:00
B.Fatih KOZ 2f9e8583f2 Flight Visibility Visuals (#1485)
Added "visible" field display and form checkbox to control it easily from admin side (instead of going through database)
2022-10-14 13:27:46 -04:00
B.Fatih KOZ 3461672f10 Fixes (#1481)
Fare Service : Return the note, do not force it to an empty string

Airport Importer : Make IATA nullable (as in the model)
2022-08-29 15:39:58 -04:00
B.Fatih KOZ b4d5114ea2 Apply color customization (#1479) 2022-08-29 12:43:50 -04:00
B.Fatih KOZandNabeel S b1ae0240be Roles Update (#1474)
Adds member count to roles\index and member list to roles\edit pages.

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2022-08-21 10:59:19 -04:00
B.Fatih KOZ 64e470abec Add Radio Callsign To Airlines (#1475)
Adds a new db field for radio telephony callsign for airlines.

Also adds necessary field to admin template.
2022-08-21 10:48:18 -04:00
B.Fatih KOZandNabeel S 0e1b55c6d7 Add baggage weight to acdata (#1464)
Follow up for improved SimBrief API, sending separate pax and bag weights is possible now.

Core v7 already had them separated ;)

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2022-08-15 11:32:52 -04:00
B.Fatih KOZandNabeel S ba5b4e23c7 Fix dead links (#1455)
* Fix dead links

Fixed one dead link, removed another one and changed load factor and variance fields to accept only numbers between 0-100.

* Update fields.blade.php

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2022-08-15 11:26:34 -04:00
B.Fatih KOZandNabeel S ef38d39ec4 Add "Notes" to Airports (#1467)
* Notes for Airports

Adds capability of having notes/remarks for airports, includes

* New database field
* Airport Model change
* CSV Import/Export capability for notes
* Admin Airports list page change
* Admin Airports edit page change
* Default Template Airport show page change

* Update Airport Tests

* Add the new field to source csv
* Check if the import works

* Update AirportFactory.php

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2022-08-15 11:23:39 -04:00
B.Fatih KOZ ccebc69be2 Add ability to export members of a subfleet only (#1471)
* Export Subfleet Members

* Style Fix

* Fix php-cs style complaints

* Disable php-cs-fixer and fix styles
2022-08-15 10:45:10 -04:00
B.Fatih KOZ 00bf18c225 Fix Cron Deleting Paused Pireps (#1434) 2022-03-07 09:55:30 -05:00
B.Fatih KOZ 7a40a9d128 Add DRAFT state in conditional check (#1422)
Add DRAFT state in conditional check
2022-02-28 09:52:57 -05:00
B.Fatih KOZ 9d368e8efa Allow bids on same flight by multiple users
Dash out unnecessary check, let multiple users to bid on same flight according to settings.
2022-02-25 14:40:53 -05:00
B.Fatih KOZ 08f82f8a2e Admin and Discord Notification Improvements (#1407)
* Backend changes

Sorting for : Airlines, Subfleets, Type Ratings and exported Flights

Blade : Added WYSIWYG editor to flight remarks/notes field

Notifications :

Mails > Added enabled/disabled settings for mails. Discord > Dashed out PirepPreFiled, re-enabled PirepStatusChanged with reduced messages

* Update PirepStatusChanged.php

* Update NotificationEventsHandler.php

* in_array fix

* Fix Discord Notifications

* Discord Notifications

Removed the pirep url from message as it is mostly private at phpvms side.

Also removed the Flight Ident from fields 'cause it is being used in the title.

Added the user avatar as thumbnail, and pirep filed message uses the airline logo as the main image.

Even though the outgoing pirep status messages are reduced, it is still possible to enable/disable them from admin settings.

Pirep Filed is always being sent (if the webhook is defined)

* StyleFix
2022-02-14 16:24:22 -05:00
B.Fatih KOZ 607ea6f5e5 Add Notes to Users (#1406)
* Fix migration

Add Notes

* Migration to add mediumtext field
* Model update
* Admin blade update

* Hide notes by default

* Fix fields layout
2022-02-11 15:58:16 -05:00
B.Fatih KOZ 9253d39848 Custom Code for Pilot IDents (#1398)
* 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
2022-02-07 17:47:57 -05:00
B.Fatih KOZandNabeel S c518175244 Update User Model (#1396)
Current GDPR compliant Private Name attribute is not compatible with multi byte strings, and when encountered it fails and returns an empty string for the name_private attribute.

`substr($last_name, 0, 1)` or just `$last_name[0]` is not multi byte compatible, therefore only solution is to use `mb_substr`.

It also supports encoding definitions like `mb_substr($last_name, 0, 1, 'UTF-8')`

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2022-02-07 16:10:58 -05:00
B.Fatih KOZ 08624042f2 Make name and e-mail based searches with like for easier administration. (#1397)
* Update UserRepository.php

Make `name` and `e-mail` based searches with `like` for easier administration and search.

* Update search.blade.php

Remove old dashed out code

* Update index.blade.php

Add proper state selections
2022-02-07 16:02:17 -05:00
B.Fatih KOZ 94735103aa French Translation (#1392)
Author: Jacques M.
( Jbaltazar67 from phpVMS Forum/Discord )
2022-02-04 15:39:10 -05:00
B.Fatih KOZ 7fabd57e13 Fix flight and subfleet import with edited fares (#1379)
* Fix fare import

* StyleFix
2022-01-11 08:17:32 -05:00
B.Fatih KOZ 09453becf8 Award Checks Update (#1376)
Add active/passive check for awards and update the handler to pass only active ones to the process when needed.
2022-01-10 15:49:50 -05:00
B.Fatih KOZ 023313c681 Check settings and filter aircraft list if needed (#1377)
Check settings and filter aircraft list if needed.
2022-01-10 13:29:30 -05:00
B.Fatih KOZ d3b7d25abd Add ability to export flights of an airline only(#1375)
* Airline Flight Export

Add ability to export flights of an airline only

* StyleFix
2022-01-10 09:27:40 -05:00
B.Fatih KOZ 7799867302 Fix Weather Widget blade (#1372)
Old blade was failing due to missing items in a metar like below

`SVMC 031703Z AUTO NIL`
2022-01-04 14:51:39 -05:00
B.Fatih KOZ fd7c1b8314 Update RegisterController.php (#1373)
Get only active and displayed UserFields.
2022-01-04 14:29:41 -05:00
B.Fatih KOZ c12cf0964a Fix setting name (#1371) 2021-12-14 18:10:39 -05:00
B.Fatih KOZ 064682b71f Type Rating update (#1366)
* Update Typerating.php

Add `'active'` to fillable

* Update fields.blade.php

Fixed grid, positioning of checkbox label and removed extra row
2021-12-08 12:40:10 -05:00
B.Fatih KOZandNabeel S c45d52dffa Aircraft level Hub definitions (#1363)
* 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>
2021-11-30 14:54:29 -05:00
B.Fatih KOZandNabeel S 4d21ca0982 Update RegisterController.php (#1358)
Only active fields should be passed to view during registration.

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-11-30 14:40:18 -05:00
B.Fatih KOZ 52e716d6ee Type Ratings | New Feature (#1360)
* Type Ratings

Adding "Type Rating" definition and assignment possibility to v7 core.

* Update ProfileController.php

* StyleFix 1

* Update settings.yml

Change description text as requested
2021-11-30 14:36:17 -05:00
B.Fatih KOZ 66d83c0ce6 Add flight_time to searchable fields (#1356) 2021-11-18 15:05:04 -05:00
B.Fatih KOZ 4ea8357952 Fix SimBrief Controller | flight relationships (#1350)
* Update SimBriefController.php

Fix the fares relationship which was causing trouble when a flight had assigned fares

* Fix model name used in relationship

`Simbrief` should be `SimBrief`
2021-11-16 16:26:43 -05:00
B.Fatih KOZ b9c29fbe08 More $pirep->ident usage fixes (#1353)
* Fix idents with double code

* Fix ident usage

* Fix ident usage

* Fix ident usage
2021-11-16 11:39:47 -05:00
B.Fatih KOZandNabeel S 4e7149a51c Fix Admin pirep card | $pirep->ident usage (#1349)
Removed `$pirep->airline->code`

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-11-09 09:55:58 -05:00
B.Fatih KOZ 4c60e5da69 Eager loading update for frontend controllers and widgets (#1348)
* Update AirportController.php

Eager load `files`

* Update DashboardController.php

 Eager load `journal` for user , and `aircraft, arr_airport, comments, dpt_airport` for last_pirep.

* Update FlightController.php

Eager load + `alt_airport, subfleets` (with their airlines) for flights and `current_airport` for user 
(though current_airport can be removed and we can base the in blade checks on `$user->curr_airport_id` to reduce db reads and model loading)

* Update HomeController.php

Eager load `home_airport` for users

* Update PirepController.php

Eager load `airline, aircraft, fares, transactions, dpt_airport, arr_airport, comments, simbrief, user with rank` for pirep details

* Update ProfileController.php

Eager load `airline, awards, current_airport, fields.field, home_airport, last_pirep, rank` for user

* Update UserController.php

Eager load `airline, current_airport, fields.field, home_airport, rank` for users and count `awards`

* Update AirportController.php

* Update DashboardController.php

* Update PirepController.php

* Update ProfileController.php

* Update LatestNews.php

Eager load `user` for news

* Update LatestPilots.php

Eager load `home_airport` for latest users

* StyleFix 1

* StlyeFix 1.5

* Update SimBriefController.php

Eager load airline with flight

* Update SimBriefController.php

* Update SimBriefController.php
2021-11-09 09:51:02 -05:00
B.Fatih KOZ 2dbe19fdcc Fix pirep->ident usage issues (#1347)
* Update table.blade.php

* Update show.blade.php

* Update pirep_card.blade.php

* Update latest_pireps.blade.php

* Update ProfileController.php

Removed non used airports, added necessary relationships for eager loading.

Also removed `fields` 'cause it is already being loaded when `fields.field` is used. No need to query it twice.

* Update ProfileController.php
2021-11-08 16:08:19 -05:00
B.Fatih KOZ 358f0b663e Fix Aircraft Model | Add trait for relationship (#1345)
* Add trait for relationship

* StlyeFix
2021-11-03 12:51:34 -04:00
B.Fatih KOZ 9146c4a68f Update UserFieldValue Model (#1344)
* Add `name` attribute

* Pre-StyleFix

* Update UserFieldValue.php

* Used optional()

* Update Pirep.php

* Update Flight.php

* Update User.php
2021-11-03 08:46:07 -04:00
B.Fatih KOZ addfa68016 Add Aircraft > Simbrief relationship (#1343) 2021-11-02 10:54:36 -04:00
B.Fatih KOZ 571768b39d Match Flight and Pirep ident attributes (#1342)
* Flight ident change

* Pirep ident change

* Update Pirep.php
2021-11-02 09:23:52 -04:00
B.Fatih KOZandNabeel S 9956929df7 Add callsign to flight search (#1341)
Make callsign searchable

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-11-02 09:00:29 -04:00
B.Fatih KOZ f498ad3bba Airline <> Aircraft Relationships (#1338)
* Aircraft relationship

* Airline relationship

* Flight and Pirep Relationships

* Style and logic fix
2021-11-02 08:40:50 -04:00
B.Fatih KOZ 930d4cfa08 Update Aircraft Model (Landing Time Attribute) (#1336)
* Update Aircraft.php

Return `landing_time` attribute in Carbon format if it is not empty

* StyleFix
2021-10-25 10:11:52 -04:00
B.Fatih KOZ 91d68308aa Fix translations (#1335)
* English

* German

* Italian

* Portuguese
2021-10-22 13:27:14 -04:00
B.Fatih KOZ 4eca1f671f Fix WX Widget row (#1334)
* Fix WX Widget row

* Change degree symbol to html
2021-10-22 10:31:24 -04:00
B.Fatih KOZ c65b5c1b05 Fix logical operator | Admin -> Pireps (#1331)
Reject button was not showing up for pending pireps due to usage of `@elseif`. Now both Accept and Reject buttons should be visible for pending pireps.
2021-10-18 10:13:32 -04:00
B.Fatih KOZ 87886f2419 Fix Admin / Flight Search (Blade) (#1325) 2021-10-01 08:50:22 -04:00
B.Fatih KOZ 9a28cf22ff Add Custom Fares (#1323)
* Update EventServiceProvider.php

Add FareListener

* Create Fares.php

* Create FareListener.php

* Update ExpenseListener.php

* Update PirepFinanceService.php

Add listener for the fares, process them like the custom expenses and apply if there are any returned
2021-09-30 11:10:05 -04:00
B.Fatih KOZ 7a29630f57 Admin blade improvements (#1321)
* Update search.blade.php

Used select2 for airports, fixed grid layout

* Update actions.blade.php

Fixed button placing

* Update pirep_card.blade.php

Added user id before the name, made name optional so if page hits an hard deleted user's pirep it will not fail. Also improved the flight level check.
2021-09-29 10:37:05 -04:00
B.Fatih KOZ f3b032e56b Add airline_id to created subfleet/subfleets during flight import. (#1320)
Add airline_id to created subfleet/subfleets during flight import.
2021-09-28 20:17:12 -04:00
B.Fatih KOZ f99af4cfc3 Fix logical operator (#1318)
That `if` should return `true` when both conditions are met (pirep not accepted and not rejected yet), so **AND** must be used there ;) Sorry for the trouble.

Now it works and listens more carefully.
2021-09-23 17:07:38 -04:00
B.Fatih KOZ 14e33574fc Default PirepState logic and location change (#1317)
* Update PirepService.php

Moved `$default_state` logic below `PirepFiled` event, so admins can have some flexibility to define their own default states by listening that event.

Any ideas ?

Hopefully closes #1312

* Update PirepService.php

Added the missing `$pirep->refresh();`
2021-09-23 15:04:24 -04:00
B.Fatih KOZ bd892f5407 Fix Admin/Subfleet Edit (#1315)
As like the db and model, admins should be able to not choosing a hub for their fleets here.
2021-09-21 13:29:47 -04:00
B.Fatih KOZ 96e63f1572 Make hub_id optional in subfleet import (#1314)
`hub_id` is not a mandatory field (both in model and database), so it should be `nullable` here too.
2021-09-21 09:14:36 -04:00
B.Fatih KOZ a0309b6303 Maintenance Status for Aircraft (#1311)
* Update AircraftStatus.php

* EN

* DE

* ES

* IT

* PT-BR
2021-09-16 15:15:50 -04:00
B.Fatih KOZ e13a019a40 Flight Type Translations (#1306)
* Flights EN

* Flights DE

* Flights ES

* Flights IT

* Flights PT-BR
2021-09-10 08:17:19 -04:00
B.Fatih KOZandNabeel S 91f928ecf4 Add missing base fare values from template (#1302)
Add missing base fare values

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-09-08 12:22:17 -04:00
B.Fatih KOZandNabeel S 6eef246b6a Improve Map features (GeoJson) (#1290)
* Update GeoService.php

Replace double name usage with more valuable info

* Update GeoService.php

Changed `GS` with `Spd` 'cause it may be IAS or GS according to the phase of the flight.

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-08-30 13:00:27 -04:00
B.Fatih KOZandNabeel S fc8ca69729 Fix Private Profile fields not being editable (#1289)
* Update ProfileController.php

* Update UserRepository.php

* Update UserRepository.php

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-08-30 12:55:33 -04:00
B.Fatih KOZ 57277c558d Fix Fare not properly set in controller (#1291)
* Update FareService.php

* Update PirepController.php

Move the logic to controller as requested

* Update FareService.php

Reverting back the service changes as requested

* StyleFix
2021-08-30 12:50:04 -04:00
B.Fatih KOZ b0f52ed1d0 Remove SimBrief with Bid (#1283)
* Update BidService.php

* Update BidService.php

Delete directly ;)
2021-08-13 14:39:18 -04:00
B.Fatih KOZ 40c911ff17 Add web middleware to laravel-widgets (#1281)
Title says it all ... Added web middleware to laravel-widgets config so the widget auto-reload / auto-refresh options can work with full functionality.
2021-08-12 08:40:41 -04:00
B.Fatih KOZ b6abe8dd5b Bid check for flights/show (#1278)
* Update FlightController.php

Add missing $bid to flight/show so when needed Load In Acars button can be placed there too.

* Update show.blade.php

Add Load In Acars button to flight details page (flights/show.blade.php)
2021-08-10 13:23:43 -04:00
B.Fatih KOZandNabeel Shahzad 4a04d73d08 Update DownloadController.php (#1267)
* Update DownloadController.php

* StyleFix

* Another StyleFix !

* Update DownloadController.php

* Last StyleFix and Update

* Apply StyleCI fix

Co-authored-by: Nabeel Shahzad <nabeel@nabeel.sh>
2021-08-02 14:43:38 -04:00
B.Fatih KOZ 6304f3cab4 Fix PirepService (#1261)
`$fv['name']` should be used instead of `$fv->name` due to the nature of source data.

Fixes #1260
2021-07-16 13:24:31 -04:00
B.Fatih KOZ b6a2fe405d Update AcarsRepository (#1245)
* Update AcarsRepository.php

Use `where` instead of `whereDate` , as you know whereDate only checks the date, it skips the time part completely, thus not providing correct live pireps collection.

* Switch from created_at to updated_at

Also remove the UTC conversion 'cause `updated_at` field is not being populated with UTC values.
2021-06-14 07:05:28 -04:00
B.Fatih KOZandNabeel S 777a696b35 Use Profile Route for Author URL (Discord Messages) (#1227)
* Update PirepStatusChanged.php

Use profile route for author url instead of pirep

* Update PirepSubmitted.php

Use profile route for author url instead of pirep

* Update PirepPrefiled.php

Use profile route for author instead of pirep

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-06-09 11:43:08 -04:00
B.Fatih KOZandNabeel S 90344fb6e6 Simbrief Edit & Download Latest OFP (#1228)
* SimBrief OFP Edit

Changes aim to have ability of editing generated SimBrief Flight Plans and re-downloading.

* Move url to config

* Blade update and $uri change

* Update simbrief_form.blade.php

Used `$flight->id` along with `$user->ident` to have a more unique static id value. No details given for that fields uniqueness requirements, this will be ok I think though. 
Also we are passing user's simbrief userid with api to find the flight plan, both combined, no chance to get another users plan and/or any other plan of same user.

* Update SimBriefController.php

Move `static_id` to controller

* Update simbrief_form.blade.php

Read `static_id` from controller

* StyleFix

* Update phpvms.php

* Update SimBriefService.php

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-06-09 11:38:14 -04:00
B.Fatih KOZandNabeel S a31201dfd3 Fix secstohhmm typecast for PHP 8 (#1230)
* Update helpers.php

Looks like php8 is not liking numeric strings as we like them.

Fixes #1229

* StyleFix

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-06-08 11:00:18 -04:00
B.Fatih KOZandNabeel S 17447c6903 Block aircraft with Simbrief (#1213)
* 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>
2021-06-03 16:17:16 -04:00
B.Fatih KOZandNabeel S ad86e996d7 Fix Aircraft Dropdown Grouping (#1216)
* Update PirepController

Frontend : Use `$subfleet->type`  instead of `name` for grouping aircraft list.

* Update PirepController (Admin)

Use `$subfleet->type` instead of `name` here too , for grouping aircraft list according to their subfleets.

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-06-03 14:41:31 -04:00
B.Fatih KOZ 5b10dca868 Fix SimBriefService (#1209)
* Fix removeExpiredEntires()

* Fix SimBriefTest

No need to add `'pirep_id' => ''` , just let it be `null` (like the core code does) and no need to convert Carbon to DateTimeString.
2021-05-27 09:27:38 -04:00
B.Fatih KOZandNabeel S 11cebb3e6e Show only used Flight Types at Flight Search (#1207)
* Update Flight Controller

Show only used flight types in the search form instead of all IATA Flight Types.

* PrePR StyleFix

* StyleFix

* Use Model instead of DB

Also used the same $where array

Co-authored-by: Nabeel S <nabeelio@users.noreply.github.com>
2021-05-25 16:14:42 -04:00
B.Fatih KOZ 96c17d33bc Add ability to search Flights by Code (#1205)
* Edit Search Form

Add ability to search via flight/route code (technically it was possible but the field was not present in the blade)

* Add Code (EN)

* Add Code (ES)

* Add Code (IT)

* Add Code (PT-BR)

* FlightCode => Code

* FlightCode => Code

* FlightCode => Code

* FlightCode => Code

* FlightCode => Code
2021-05-25 15:33:02 -04:00