Cleanup Simbrief Briefing pages
This commit is contained in:
@@ -57,16 +57,13 @@ class SimBriefController
|
|||||||
return redirect(route('frontend.flights.index'));
|
return redirect(route('frontend.flights.index'));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$aircraft_id) {
|
|
||||||
flash()->error('Aircraft not selected ! Please select an Aircraft to Proceed ...');
|
|
||||||
}
|
|
||||||
|
|
||||||
$apiKey = setting('simbrief.api_key');
|
$apiKey = setting('simbrief.api_key');
|
||||||
if (empty($apiKey)) {
|
if (empty($apiKey)) {
|
||||||
flash()->error('Invalid SimBrief API key!');
|
flash()->error('Invalid SimBrief API key!');
|
||||||
return redirect(route('frontend.flights.index'));
|
return redirect(route('frontend.flights.index'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check if a Simbrief profile already exists
|
||||||
$simbrief = SimBrief::select('id')->where([
|
$simbrief = SimBrief::select('id')->where([
|
||||||
'flight_id' => $flight_id,
|
'flight_id' => $flight_id,
|
||||||
'user_id' => $user->id,
|
'user_id' => $user->id,
|
||||||
@@ -76,6 +73,7 @@ class SimBriefController
|
|||||||
return redirect(route('frontend.simbrief.briefing', [$simbrief->id]));
|
return redirect(route('frontend.simbrief.briefing', [$simbrief->id]));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Simbrief Profile doesn't exist; prompt the user to create a new one
|
||||||
$aircraft = Aircraft::select('registration', 'name', 'icao', 'iata', 'subfleet_id')
|
$aircraft = Aircraft::select('registration', 'name', 'icao', 'iata', 'subfleet_id')
|
||||||
->where('id', $aircraft_id)
|
->where('id', $aircraft_id)
|
||||||
->get();
|
->get();
|
||||||
@@ -92,11 +90,22 @@ class SimBriefController
|
|||||||
$pax_weight = 208;
|
$pax_weight = 208;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// No aircraft selected, show that form
|
||||||
|
if (!$aircraft_id) {
|
||||||
|
return view('flights.simbrief_aircraft', [
|
||||||
|
'flight' => $flight,
|
||||||
|
'aircraft' => $aircraft,
|
||||||
|
'subfleets' => $subfleets,
|
||||||
|
'pax_weight' => $pax_weight,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Show the main simbrief form
|
||||||
return view('flights.simbrief_form', [
|
return view('flights.simbrief_form', [
|
||||||
'flight' => $flight,
|
'flight' => $flight,
|
||||||
'aircraft' => $aircraft,
|
'aircraft' => $aircraft,
|
||||||
'subfleets' => $subfleets,
|
'subfleets' => $subfleets,
|
||||||
'pax_weight' => $pax_weight, // TODO: Replace with a setting
|
'pax_weight' => $pax_weight,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -136,21 +145,30 @@ class SimBriefController
|
|||||||
*
|
*
|
||||||
* @param \Illuminate\Http\Request $request
|
* @param \Illuminate\Http\Request $request
|
||||||
*
|
*
|
||||||
|
* @throws \Exception
|
||||||
|
*
|
||||||
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
|
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
|
||||||
*/
|
*/
|
||||||
public function remove(Request $request)
|
public function generate_new(Request $request)
|
||||||
{
|
{
|
||||||
$sb_pack = SimBrief::find($request->id);
|
$simbrief = SimBrief::find($request->id);
|
||||||
if ($sb_pack) {
|
|
||||||
if (!$sb_pack->pirep_id) {
|
// Invalid Simbrief ID/profile, go back to the main flight index
|
||||||
$sb_pack->delete();
|
if (!$simbrief) {
|
||||||
} else {
|
return redirect(route('frontend.flights.index'));
|
||||||
$sb_pack->flight_id = null;
|
|
||||||
$sb_pack->save();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return redirect(route('frontend.flights.index'));
|
// Cleanup the current Simbrief entry and redirect to the new generation form
|
||||||
|
// If there isn't a PIREP ID, then delete the entry, otherwise, remove the flight
|
||||||
|
$flight_id = $simbrief->flight_id;
|
||||||
|
if (!$simbrief->pirep_id) {
|
||||||
|
$simbrief->delete();
|
||||||
|
} else {
|
||||||
|
$simbrief->flight_id = null;
|
||||||
|
$simbrief->save();
|
||||||
|
}
|
||||||
|
|
||||||
|
return redirect(route('frontend.simbrief.generate').'?flight_id='.$flight_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -147,7 +147,7 @@ class RouteServiceProvider extends ServiceProvider
|
|||||||
Route::get('simbrief/{id}', 'SimBriefController@briefing')->name('simbrief.briefing');
|
Route::get('simbrief/{id}', 'SimBriefController@briefing')->name('simbrief.briefing');
|
||||||
Route::get('simbrief/{id}/prefile', 'SimBriefController@prefile')->name('simbrief.prefile');
|
Route::get('simbrief/{id}/prefile', 'SimBriefController@prefile')->name('simbrief.prefile');
|
||||||
Route::get('simbrief/{id}/cancel', 'SimBriefController@cancel')->name('simbrief.cancel');
|
Route::get('simbrief/{id}/cancel', 'SimBriefController@cancel')->name('simbrief.cancel');
|
||||||
Route::get('simbrief/{id}/remove', 'SimBriefController@remove')->name('simbrief.remove');
|
Route::get('simbrief/{id}/generate_new', 'SimBriefController@generate_new')->name('simbrief.generate_new');
|
||||||
});
|
});
|
||||||
|
|
||||||
Route::group([
|
Route::group([
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<div class="mt-1">
|
<div class="mt-1">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<p>@lang('common.airline')</p>
|
<p>@lang('common.airline')</p>
|
||||||
{{ Form::select('airline_id', $airlines, null , ['class' => 'form-control form-control-sm select2']) }}
|
{{ Form::select('airline_id', $airlines, null , ['class' => 'form-control select2']) }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,47 @@
|
|||||||
|
@extends('app')
|
||||||
|
@section('title', 'SimBrief Flight Planning')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<h2>Select Aircraft for Flight</h2>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<select id="aircraftselection" class="form-control select2" onchange="checkacselection()">
|
||||||
|
<option value="ZZZZZ">Please Select An Aircraft</option>
|
||||||
|
@foreach($subfleets as $subfleet)
|
||||||
|
@foreach($subfleet->aircraft as $ac)
|
||||||
|
<option value="{{ $ac->id }}">[ {{ $ac->icao }} ] {{ $ac->registration }}</option>
|
||||||
|
@endforeach
|
||||||
|
@endforeach
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-12 text-right">
|
||||||
|
<a id="generate_link" style="visibility: hidden"
|
||||||
|
href="{{ route('frontend.simbrief.generate') }}?flight_id={{ $flight->id }}"
|
||||||
|
class="btn btn-primary">Proceed To Flight Planning</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endsection
|
||||||
|
@section('scripts')
|
||||||
|
<script type="text/javascript">
|
||||||
|
// Simple Aircraft Selection With Dropdown Change
|
||||||
|
// Also keep Generate button hidden until a valid AC selection
|
||||||
|
const $oldlink = document.getElementById("generate_link").href;
|
||||||
|
|
||||||
|
function checkacselection() {
|
||||||
|
if (document.getElementById("aircraftselection").value === "ZZZZZ") {
|
||||||
|
document.getElementById('generate_link').style.visibility = 'hidden';
|
||||||
|
} else {
|
||||||
|
document.getElementById('generate_link').style.visibility = 'visible';
|
||||||
|
}
|
||||||
|
const selectedac = document.getElementById("aircraftselection").value;
|
||||||
|
const newlink = "&aircraft_id=".concat(selectedac);
|
||||||
|
|
||||||
|
document.getElementById("generate_link").href = $oldlink.concat(newlink);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
@endsection
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<div class="col-sm-3">
|
<div class="col-sm-3">
|
||||||
<a class="btn btn-primary pull-right btn-lg"
|
<a class="btn btn-primary pull-right btn-lg"
|
||||||
style="margin-top: -10px; margin-bottom: 5px"
|
style="margin-top: -10px; margin-bottom: 5px"
|
||||||
href="{{ url(route('frontend.simbrief.remove', [$simbrief->id])) }}">Generate New OFP</a>
|
href="{{ url(route('frontend.simbrief.generate_new', [$simbrief->id])) }}">Generate New OFP</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -2,33 +2,6 @@
|
|||||||
@section('title', 'SimBrief Flight Planning')
|
@section('title', 'SimBrief Flight Planning')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
@if(empty(request()->get('aircraft_id')))
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-12">
|
|
||||||
<h2>Aircraft Selection</h2>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-6">
|
|
||||||
<select id="aircraftselection" class="form-control select2" onchange="checkacselection()">
|
|
||||||
<option value="ZZZZZ">Please Select An Aircraft</option>
|
|
||||||
@foreach($subfleets as $subfleet)
|
|
||||||
@foreach($subfleet->aircraft as $ac)
|
|
||||||
<option value="{{ $ac->id }}">[ {{ $ac->icao }} ] {{ $ac->registration }}</option>
|
|
||||||
@endforeach
|
|
||||||
@endforeach
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<a id="mylink" style="visibility: hidden"
|
|
||||||
href="{{ route('frontend.simbrief.generate') }}?flight_id={{ $flight->id }}" class="btn btn-primary">Proceed
|
|
||||||
To Flight Planning</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@else
|
|
||||||
|
|
||||||
@php
|
@php
|
||||||
$loadmin = $flight->load_factor - $flight->load_factor_variance;
|
$loadmin = $flight->load_factor - $flight->load_factor_variance;
|
||||||
$loadmax = $flight->load_factor + $flight->load_factor_variance;
|
$loadmax = $flight->load_factor + $flight->load_factor_variance;
|
||||||
@@ -50,9 +23,9 @@
|
|||||||
|
|
||||||
<form id="sbapiform">
|
<form id="sbapiform">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<h2>Create Simbrief Briefing</h2>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<h2>Create Flight Briefing Package</h2>
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
<div class="form-container">
|
<div class="form-container">
|
||||||
@@ -370,7 +343,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
@endif
|
|
||||||
@endsection
|
@endsection
|
||||||
@section('scripts')
|
@section('scripts')
|
||||||
<script src="{{public_asset('/assets/global/js/simbrief.apiv1.js')}}"></script>
|
<script src="{{public_asset('/assets/global/js/simbrief.apiv1.js')}}"></script>
|
||||||
|
|||||||
Reference in New Issue
Block a user