middleware('guest'); $this->redirectTo = lurl('register_company'); } /** * Get a validator for an incoming registration request. * * @param array $data * @return \Illuminate\Contracts\Validation\Validator */ protected function validator(array $data) { $usersTable = (new User())->getTable(); return Validator::make($data, [ 'name' => ['required', 'string', 'max:255'], 'username' => ['required', 'string', 'max:255', Rule::unique($usersTable, 'username')], 'email' => ['required', 'string', 'email', 'max:255', Rule::unique($usersTable, 'email')], 'password' => ['required', 'string', 'min:8', 'confirmed'], ]); } /** * Create a new user instance after a valid registration. * * @param array $data * @return User; */ protected function create(array $data) { $user = new User(); $user->forceFill([ 'name' => $data['name'], 'username' => $data['username'], 'email' => $data['email'], 'password' => bcrypt($data['password']) ]); $user->save(); $userRole = UniModel::model('core_roles') ->where('alias', 'user') ->first(); if (!empty($userRole)) { $userRoleModel = UniModel::model('core_user_roles'); $userRoleModel->forceFill([ 'user_id' => $user->id, 'role_id' => $userRole->id ]); $userRoleModel->save(); } return $user; } public function showRegistrationForm() { return view('platform.auth::register'); } }