From c732476f6d6c5b9197a05561469a93085d1529bf Mon Sep 17 00:00:00 2001 From: Nabeel Shahzad Date: Mon, 19 Jun 2017 11:50:25 -0500 Subject: [PATCH] Rename 'Airlines' model to 'Airline' --- .../Controllers/Admin/AirlinesController.php | 38 +++++++++---------- ...esRequest.php => CreateAirlineRequest.php} | 6 +-- ...esRequest.php => UpdateAirlineRequest.php} | 6 +-- app/Models/{Airlines.php => Airline.php} | 4 +- app/Models/Flight.php | 6 +++ ...esRepository.php => AirlineRepository.php} | 6 +-- database/factories/AircraftClassFactory.php | 10 ----- database/factories/FaresFactory.php | 10 ----- database/factories/FlightFactory.php | 10 ----- database/seeds/DatabaseSeeder.php | 28 ++++++++++++++ .../views/admin/airlines/create.blade.php | 2 +- resources/views/admin/airlines/edit.blade.php | 2 +- .../views/admin/airlines/fields.blade.php | 2 +- .../views/admin/airlines/index.blade.php | 2 +- resources/views/admin/airlines/show.blade.php | 2 +- .../views/admin/airlines/table.blade.php | 6 +-- resources/views/admin/flights/table.blade.php | 15 +++++--- tests/AircraftTest.php | 12 +----- tests/data/aircraft_test.yml | 11 ++++++ 19 files changed, 94 insertions(+), 84 deletions(-) rename app/Http/Requests/{CreateAirlinesRequest.php => CreateAirlineRequest.php} (79%) rename app/Http/Requests/{UpdateAirlinesRequest.php => UpdateAirlineRequest.php} (79%) rename app/Models/{Airlines.php => Airline.php} (93%) rename app/Repositories/{AirlinesRepository.php => AirlineRepository.php} (68%) delete mode 100644 database/factories/AircraftClassFactory.php delete mode 100644 database/factories/FaresFactory.php delete mode 100644 database/factories/FlightFactory.php create mode 100644 tests/data/aircraft_test.yml diff --git a/app/Http/Controllers/Admin/AirlinesController.php b/app/Http/Controllers/Admin/AirlinesController.php index fdaa7789..f9f66287 100644 --- a/app/Http/Controllers/Admin/AirlinesController.php +++ b/app/Http/Controllers/Admin/AirlinesController.php @@ -2,9 +2,9 @@ namespace App\Http\Controllers\Admin; -use App\Http\Requests\CreateAirlinesRequest; -use App\Http\Requests\UpdateAirlinesRequest; -use App\Repositories\AirlinesRepository; +use App\Http\Requests\CreateAirlineRequest; +use App\Http\Requests\UpdateAirlineRequest; +use App\Repositories\AirlineRepository; use Illuminate\Http\Request; use Flash; use Prettus\Repository\Criteria\RequestCriteria; @@ -12,12 +12,12 @@ use Response; class AirlinesController extends BaseController { - /** @var AirlinesRepository */ - private $airlinesRepository; + /** @var AirlineRepository */ + private $airlineRepo; - public function __construct(AirlinesRepository $airlinesRepo) + public function __construct(AirlineRepository $airlinesRepo) { - $this->airlinesRepository = $airlinesRepo; + $this->airlineRepo = $airlinesRepo; } /** @@ -25,8 +25,8 @@ class AirlinesController extends BaseController */ public function index(Request $request) { - $this->airlinesRepository->pushCriteria(new RequestCriteria($request)); - $airlines = $this->airlinesRepository->all(); + $this->airlineRepo->pushCriteria(new RequestCriteria($request)); + $airlines = $this->airlineRepo->all(); return view('admin.airlines.index') ->with('airlines', $airlines); @@ -43,10 +43,10 @@ class AirlinesController extends BaseController /** * Store a newly created Airlines in storage. */ - public function store(CreateAirlinesRequest $request) + public function store(CreateAirlineRequest $request) { $input = $request->all(); - $airlines = $this->airlinesRepository->create($input); + $airlines = $this->airlineRepo->create($input); Flash::success('Airlines saved successfully.'); @@ -62,7 +62,7 @@ class AirlinesController extends BaseController */ public function show($id) { - $airlines = $this->airlinesRepository->findWithoutFail($id); + $airlines = $this->airlineRepo->findWithoutFail($id); if (empty($airlines)) { Flash::error('Airlines not found'); @@ -81,7 +81,7 @@ class AirlinesController extends BaseController */ public function edit($id) { - $airlines = $this->airlinesRepository->findWithoutFail($id); + $airlines = $this->airlineRepo->findWithoutFail($id); if (empty($airlines)) { Flash::error('Airlines not found'); @@ -95,20 +95,20 @@ class AirlinesController extends BaseController * Update the specified Airlines in storage. * * @param int $id - * @param UpdateAirlinesRequest $request + * @param UpdateAirlineRequest $request * * @return Response */ - public function update($id, UpdateAirlinesRequest $request) + public function update($id, UpdateAirlineRequest $request) { - $airlines = $this->airlinesRepository->findWithoutFail($id); + $airlines = $this->airlineRepo->findWithoutFail($id); if (empty($airlines)) { Flash::error('Airlines not found'); return redirect(route('airlines.index')); } - $airlines = $this->airlinesRepository->update($request->all(), $id); + $airlines = $this->airlineRepo->update($request->all(), $id); Flash::success('Airlines updated successfully.'); @@ -124,14 +124,14 @@ class AirlinesController extends BaseController */ public function destroy($id) { - $airlines = $this->airlinesRepository->findWithoutFail($id); + $airlines = $this->airlineRepo->findWithoutFail($id); if (empty($airlines)) { Flash::error('Airlines not found'); return redirect(route('airlines.index')); } - $this->airlinesRepository->delete($id); + $this->airlineRepo->delete($id); Flash::success('Airlines deleted successfully.'); diff --git a/app/Http/Requests/CreateAirlinesRequest.php b/app/Http/Requests/CreateAirlineRequest.php similarity index 79% rename from app/Http/Requests/CreateAirlinesRequest.php rename to app/Http/Requests/CreateAirlineRequest.php index 19c2d73e..0f8f3a2b 100644 --- a/app/Http/Requests/CreateAirlinesRequest.php +++ b/app/Http/Requests/CreateAirlineRequest.php @@ -3,9 +3,9 @@ namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; -use App\Models\Airlines; +use App\Models\Airline; -class CreateAirlinesRequest extends FormRequest +class CreateAirlineRequest extends FormRequest { /** @@ -25,6 +25,6 @@ class CreateAirlinesRequest extends FormRequest */ public function rules() { - return Airlines::$rules; + return Airline::$rules; } } diff --git a/app/Http/Requests/UpdateAirlinesRequest.php b/app/Http/Requests/UpdateAirlineRequest.php similarity index 79% rename from app/Http/Requests/UpdateAirlinesRequest.php rename to app/Http/Requests/UpdateAirlineRequest.php index b19a0cd6..03d464b6 100644 --- a/app/Http/Requests/UpdateAirlinesRequest.php +++ b/app/Http/Requests/UpdateAirlineRequest.php @@ -3,9 +3,9 @@ namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; -use App\Models\Airlines; +use App\Models\Airline; -class UpdateAirlinesRequest extends FormRequest +class UpdateAirlineRequest extends FormRequest { /** @@ -25,6 +25,6 @@ class UpdateAirlinesRequest extends FormRequest */ public function rules() { - return Airlines::$rules; + return Airline::$rules; } } diff --git a/app/Models/Airlines.php b/app/Models/Airline.php similarity index 93% rename from app/Models/Airlines.php rename to app/Models/Airline.php index e2bdaff2..842b2019 100644 --- a/app/Models/Airlines.php +++ b/app/Models/Airline.php @@ -6,10 +6,10 @@ use Eloquent as Model; use Illuminate\Database\Eloquent\SoftDeletes; /** - * Class Airlines + * Class Airline * @package App\Models */ -class Airlines extends Model +class Airline extends Model { use SoftDeletes; diff --git a/app/Models/Flight.php b/app/Models/Flight.php index 2085a1f8..db92f337 100644 --- a/app/Models/Flight.php +++ b/app/Models/Flight.php @@ -63,6 +63,12 @@ class Flight extends Model 'arr_airport_id' => 'required', ]; + public function airline() + { + return $this->belongsTo('App\Models\Airline', + 'airline_id'); + } + public function dpt_airport() { return $this->belongsTo('App\Models\Airport', 'dpt_airport_id'); diff --git a/app/Repositories/AirlinesRepository.php b/app/Repositories/AirlineRepository.php similarity index 68% rename from app/Repositories/AirlinesRepository.php rename to app/Repositories/AirlineRepository.php index 103d6f11..417e6678 100644 --- a/app/Repositories/AirlinesRepository.php +++ b/app/Repositories/AirlineRepository.php @@ -2,9 +2,9 @@ namespace App\Repositories; -use App\Models\Airlines; +use App\Models\Airline; -class AirlinesRepository extends BaseRepository +class AirlineRepository extends BaseRepository { /** * @var array @@ -19,6 +19,6 @@ class AirlinesRepository extends BaseRepository **/ public function model() { - return Airlines::class; + return Airline::class; } } diff --git a/database/factories/AircraftClassFactory.php b/database/factories/AircraftClassFactory.php deleted file mode 100644 index cb943f06..00000000 --- a/database/factories/AircraftClassFactory.php +++ /dev/null @@ -1,10 +0,0 @@ -define(App\Models\AircraftClass::class, function (Faker\Generator $faker) { - return [ - 'id' => 1, - 'code' => 'H', - 'name' => 'Heavy', - 'notes' => 'Heavy aircraft', - ]; -}); diff --git a/database/factories/FaresFactory.php b/database/factories/FaresFactory.php deleted file mode 100644 index c35fb54f..00000000 --- a/database/factories/FaresFactory.php +++ /dev/null @@ -1,10 +0,0 @@ -define(App\Models\Fare::class, function (Faker\Generator $faker) { - return [ - 'code' => 'Y', - 'name' => 'Economy', - 'price' => '100', - 'capacity' => '200', - ]; -}); diff --git a/database/factories/FlightFactory.php b/database/factories/FlightFactory.php deleted file mode 100644 index b01a425c..00000000 --- a/database/factories/FlightFactory.php +++ /dev/null @@ -1,10 +0,0 @@ -define(App\Models\Flight::class, function (Faker\Generator $faker) { - return [ - 'code' => 'Y', - 'name' => 'Economy', - 'price' => '100', - 'capacity' => '200', - ]; -}); diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index bd12bff4..afed751a 100755 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -12,7 +12,35 @@ class DatabaseSeeder extends Seeder */ public function run() { + $this->seed_from_yaml(App::environment()); + } + protected function seed_from_yaml($env): void + { + $path = database_path('seeds/'.$env.'.yml'); + + $time_fields = ['created_at', 'updated_at']; + $curr_time = Carbon::now('UTC')->format('Y-m-d H:i:s'); + + $yml = Yaml::parse(file_get_contents($path)); + foreach ($yml as $table => $rows) { + foreach ($rows as $row) { + + # encrypt any password fields + if (array_key_exists('password', $row)) { + $row['password'] = bcrypt($row['password']); + } + + # if any time fields are == to "now", then insert the right time + foreach ($time_fields as $tf) { + if (array_key_exists($tf, $row) && $row[$tf] === 'now') { + $row[$tf] = $curr_time; + } + } + + DB::table($table)->insert($row); + } + } } } diff --git a/resources/views/admin/airlines/create.blade.php b/resources/views/admin/airlines/create.blade.php index 586b4df9..0b1071af 100644 --- a/resources/views/admin/airlines/create.blade.php +++ b/resources/views/admin/airlines/create.blade.php @@ -12,7 +12,7 @@
- {!! Form::open(['route' => 'airlines.store']) !!} + {!! Form::open(['route' => 'admin.airlines.store']) !!} @include('admin.airlines.fields') diff --git a/resources/views/admin/airlines/edit.blade.php b/resources/views/admin/airlines/edit.blade.php index d6480b9a..2614e3ab 100644 --- a/resources/views/admin/airlines/edit.blade.php +++ b/resources/views/admin/airlines/edit.blade.php @@ -11,7 +11,7 @@
- {!! Form::model($airlines, ['route' => ['airlines.update', $airlines->id], 'method' => 'patch']) !!} + {!! Form::model($airlines, ['route' => ['admin.airlines.update', $airlines->id], 'method' => 'patch']) !!} @include('admin.airlines.fields') diff --git a/resources/views/admin/airlines/fields.blade.php b/resources/views/admin/airlines/fields.blade.php index f078d988..fdef2d03 100644 --- a/resources/views/admin/airlines/fields.blade.php +++ b/resources/views/admin/airlines/fields.blade.php @@ -22,5 +22,5 @@
{!! Form::submit('Save', ['class' => 'btn btn-primary']) !!} - Cancel + Cancel
diff --git a/resources/views/admin/airlines/index.blade.php b/resources/views/admin/airlines/index.blade.php index 06d54c89..b51da708 100644 --- a/resources/views/admin/airlines/index.blade.php +++ b/resources/views/admin/airlines/index.blade.php @@ -4,7 +4,7 @@

Airlines

- Add New + Add New

diff --git a/resources/views/admin/airlines/show.blade.php b/resources/views/admin/airlines/show.blade.php index 19d805d0..ccaaebb5 100644 --- a/resources/views/admin/airlines/show.blade.php +++ b/resources/views/admin/airlines/show.blade.php @@ -11,7 +11,7 @@
@include('admin.airlines.show_fields') - Back + Back
diff --git a/resources/views/admin/airlines/table.blade.php b/resources/views/admin/airlines/table.blade.php index 6f946936..60ad4052 100644 --- a/resources/views/admin/airlines/table.blade.php +++ b/resources/views/admin/airlines/table.blade.php @@ -12,10 +12,10 @@ {!! $al->name !!} {!! $al->active !!} - {!! Form::open(['route' => ['airlines.destroy', $al->id], 'method' => 'delete']) !!} + {!! Form::open(['route' => ['admin.airlines.destroy', $al->id], 'method' => 'delete']) !!}
- - + + {!! Form::button('', ['type' => 'submit', 'class' => 'btn btn-danger btn-xs', 'onclick' => "return confirm('Are you sure?')"]) !!}
{!! Form::close() !!} diff --git a/resources/views/admin/flights/table.blade.php b/resources/views/admin/flights/table.blade.php index c6322247..e8b73ea2 100644 --- a/resources/views/admin/flights/table.blade.php +++ b/resources/views/admin/flights/table.blade.php @@ -3,7 +3,6 @@ Flight # Dep Arr - Alt Route Dpt Time Arr Time @@ -15,12 +14,18 @@ @foreach($flights as $flight) - {!! $flight->airline_id !!}/{!! $flight->flight_number !!} - (C: {!! $flight->route_code !!} L: {!! $flight->route_leg !!}) + {!! $flight->airline->code !!}{!! $flight->flight_number !!} + @if($flight->route_code) + (C: {!! $flight->route_code !!} L: {!! $flight->route_leg !!}) + @endif {!! $flight->dpt_airport->icao !!} - {!! $flight->arr_airport->icao !!} - {!! $flight->alt_airport->icao !!} + + {!! $flight->arr_airport->icao !!} + @if($flight->alt_airport) + (Alt: {!! $flight->alt_airport->icao !!}) + @endif + {!! $flight->route !!} {!! $flight->dpt_time !!} {!! $flight->arr_time !!} diff --git a/tests/AircraftTest.php b/tests/AircraftTest.php index e992bd4a..d46b176c 100644 --- a/tests/AircraftTest.php +++ b/tests/AircraftTest.php @@ -9,17 +9,7 @@ class AircraftTest extends TestCase public function setUp() { parent::setUp(); - $this->setup_data(); - } - - /** - * add the fares to a given aircraft - * run the factory for incl the fares - */ - protected function setup_data() - { - factory(App\Models\AircraftClass::class)->create(); - factory(App\Models\Fare::class)->create(); + $this->addData('aircraft_test'); } protected function getAircraftClass() diff --git a/tests/data/aircraft_test.yml b/tests/data/aircraft_test.yml new file mode 100644 index 00000000..a520782e --- /dev/null +++ b/tests/data/aircraft_test.yml @@ -0,0 +1,11 @@ +aircraft_classes: + - id: 1 + code: H + name: Heavy + notes: Heavy Aircraft + +fares: + - code: Y + name: Economy + price: 100 + capacity: 200