public function postRegister(Request $request) { $this->validate($request, ['name' => 'required|max:255', 'city_id' => 'required|numeric', 'email' => 'required|email|max:255', 'password' => 'required|confirmed|min:6', 'rules' => 'accepted']); $user = User::where('email', $request->email)->first(); if (!empty($user->email)) { if ($user->status == 0) { return redirect()->back()->withInput()->with('status', 'Такой email уже зарегестрирован, но не подтвержден. Проверьте почту или запросите повторное подтверждение email.'); } else { return redirect()->back()->withInput()->with('status', 'Пользователь с таким email уже зарегестрирован.'); } } $user = User::create(['name' => $request->name, 'email' => $request->email, 'password' => bcrypt($request->password), 'ip' => $request->ip(), 'location' => serialize($request->ips())]); if ($user) { $confirm = new ConfirmUser(); $confirm->email = $user->email; $confirm->token = str_random(32); $confirm->city_id = $request->city_id; $confirm->save(); Mail::send('emails.confirm', ['token' => $confirm->token], function ($u) use($user) { $u->from('*****@*****.**', 'Vizov.kz'); $u->to($user->email); $u->subject('Потдверждение регистрации'); }); return redirect('auth/login')->with('status', 'На вашу почту было выслано письмо, для подтверждения регистрации пройдите по ссылке в нем.'); } else { return redirect()->back()->with('status', 'Возникла ошибка, попробуйте позже!'); } }