From ca74df94da4f75e3085ab77d6d3b31b2caab87e1 Mon Sep 17 00:00:00 2001 From: Kyle Date: Fri, 11 Aug 2017 16:50:14 +0000 Subject: [PATCH 1/8] Register form and functionally --- .../Controllers/Auth/RegisterController.php | 45 +++++--- app/Models/User.php | 12 +- app/Services/PilotService.php | 5 + .../layouts/default/auth/login.blade.php | 2 +- .../layouts/default/auth/register.blade.php | 106 +++++++++--------- .../layouts/default/auth/registered.blade.php | 10 ++ routes/admin.php | 2 +- 7 files changed, 103 insertions(+), 79 deletions(-) create mode 100644 resources/views/layouts/default/auth/registered.blade.php diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php index d97f0278..8ea8f543 100755 --- a/app/Http/Controllers/Auth/RegisterController.php +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -5,8 +5,12 @@ namespace App\Http\Controllers\Auth; use Validator; use App\Models\Role; use App\Models\User; +use App\Models\Airport; +use App\Models\Airline; use App\Http\Controllers\Controller; use Illuminate\Foundation\Auth\RegistersUsers; +use Illuminate\Http\Request; +use Illuminate\Support\Facades\Hash; class RegisterController extends Controller { @@ -32,7 +36,12 @@ class RegisterController extends Controller public function showRegistrationForm() { - return $this->view('auth.register'); + $airports = Airport::all(); + $airlines = Airline::all(); + return $this->view('auth.register', [ + 'airports' => $airports, + 'airlines' => $airlines, + ]); } /** @@ -56,26 +65,34 @@ class RegisterController extends Controller return Validator::make($data, [ 'name' => 'required|max:255', 'email' => 'required|email|max:255|unique:users', + 'airline' => 'required', + 'home_airport' => 'required', 'password' => 'required|min:5|confirmed', ]); } - /** - * Create a new user instance after a valid registration. - * - * @param array $data - * @return User - */ - protected function create(array $data) + public function register() { - $user = User::create([ - 'name' => $data['name'], - 'email' => $data['email'], - 'password' => bcrypt($data['password']), + // Validate + $this->validate(request(), [ + 'name' => 'required', + 'email' => 'required|email', + 'airline' => 'required', + 'home_airport' => 'required', + 'password' => 'required|confirmed' ]); - $role = Role::where('name', 'admin')->first(); + # TODO: I'm just feeling we need to do something with Ranking? I forgot. + $user = User::create(['name' => request('name'), + 'email' => request('email'), + 'airline_id' => request('airline'), + 'home_airport_id' => request('home_airport'), + 'curr_airport_id' => request('home_airport'), + 'password' => Hash::make(request('password')), + 'rank_id' => 1]); + //Attach the user roles + $role = Role::where('name', 'user')->first(); $user->attachRole($role); - return $user->refresh(); + return $this->view('auth.registered'); } } diff --git a/app/Models/User.php b/app/Models/User.php index cf09ed56..4a11a760 100755 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -60,6 +60,10 @@ class User extends Authenticatable 'name', 'email', 'password', + 'airline_id', + 'home_airport_id', + 'curr_airport_id', + 'rank_id' ]; /** @@ -86,14 +90,6 @@ class User extends Authenticatable return $this->airline->code.str_pad($this->id, 3, '0', STR_PAD_LEFT); } - public function gravatar() - { - $size = 80; - $default = 'https://en.gravatar.com/userimage/12856995/7c7c1da6387853fea65ff74983055386.png'; - return "https://www.gravatar.com/avatar/" . - md5( strtolower( trim( $this->email) ) ) . "?d=" . urlencode( $default ) . "&s=" . $size; - } - /** * Foreign Keys */ diff --git a/app/Services/PilotService.php b/app/Services/PilotService.php index 336151a7..d43352bf 100644 --- a/app/Services/PilotService.php +++ b/app/Services/PilotService.php @@ -55,4 +55,9 @@ class PilotService extends BaseService return $pilot; } + public function create() + { + + } + } diff --git a/resources/views/layouts/default/auth/login.blade.php b/resources/views/layouts/default/auth/login.blade.php index 060e7141..f33891b7 100644 --- a/resources/views/layouts/default/auth/login.blade.php +++ b/resources/views/layouts/default/auth/login.blade.php @@ -50,7 +50,7 @@
- Create Account + Create Account
diff --git a/resources/views/layouts/default/auth/register.blade.php b/resources/views/layouts/default/auth/register.blade.php index dacbd256..0a854264 100644 --- a/resources/views/layouts/default/auth/register.blade.php +++ b/resources/views/layouts/default/auth/register.blade.php @@ -2,80 +2,76 @@ @section('content')
-
-
+
+