middleware('guest'); } private function redirectTo() { return route('verification.notice'); } /** * Get a validator for an incoming registration request. * * @param array $data * @return \Illuminate\Contracts\Validation\Validator */ protected function validator(array $data) { return Validator::make($data, [ 'firstname' => ['required', 'string', 'min: 2', 'max:255'], 'lastname' => ['required', 'string','min: 2', 'max:255'], 'birthdate' => ['required', 'date_format:Y-m-d', 'before:' . Carbon::now()->subYears(18)->format('d-m-Y')], 'address' => ['required','min: 5', 'string', 'max:255'], 'address2' => ['sometimes', 'max:255'], 'phone' => ['required', 'string', 'min:10', 'max:13'], 'city' => ['required', 'string','min: 2', 'max:255'], 'postcode' => ['required', 'digits:5'], 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'], 'password' => ['required', 'string', 'min:8', 'confirmed'], ], [ 'birthdate.date_format' => trans('Le format de la date doit ĂȘtre du type 1992-01-01'), 'birthdate.before' => trans('Vous devez ĂȘtre majeur pour pouvoir participer au jeu.') ]); } /** * Create a new user instance after a valid registration. * * @param array $data * @return \App\Models\User */ protected function create(array $data) { return User::create([ 'firstname' => $data['firstname'], 'lastname' => $data['lastname'], 'birthdate' => $data['birthdate'], 'address' => $data['address'], 'address2' => $data['address2'] ?? '', 'phone' => $data['phone'] ?? '', 'city' => $data['city'] ?? '', 'postcode' => $data['postcode'] ?? '', 'email' => $data['email'], 'password' => Hash::make($data['password']), ]); } }