public function handleProviderCallback($provider) { try { $user = Socialite::driver($provider)->user(); } catch (\Exception $e) { return redirect('/faurgs/auth/' . $provider); } $authUser = $this->findOrCreateUser($user); \Auth::login($authUser, true); return redirect('/faurgs/unidades'); }
public function retrievePassword() { $hash = \Input::get('hash'); if (empty($hash)) { return \Redirect::to('/'); } if ($user = $this->user->findByHash(['code' => $hash], false)) { $message = null; if ($val = \Input::get('val')) { $validator = \Validator::make($val, ['password' => 'required|confirmed']); if ($validator->fails()) { $message = $validator->messages()->first(); } else { $this->user->changePassword($val, $user); \Auth::login($user); return \Redirect::route('user-home'); } } return $this->theme->view('user.login.change-password', ['user' => $user, 'message' => $message])->render(); } }
public function complete($username) { $user = $this->userRepository->findByUsername($username); if (!$user) { return \Redirect::to('/'); } $username = false; $email = false; $message = false; if ($this->socialauthRepository->userIsOk($user)) { return \Redirect::to('/'); } if ($val = \Input::get('val')) { $completed = $this->socialauthRepository->complete($val, $user); if ($completed) { \Auth::login($user); return \Redirect::route('user-home'); } else { $message = "Failed again, please try with different values"; } } if (preg_match('#existed-#', $user->username)) { $username = str_replace('existed-', '', $user->username); } if (preg_match('#existed-#', $user->email_address) or empty($user->email_address)) { $email = str_replace('existed-', '', $user->email_address); $user->email_address = $email; } return $this->theme->view('socialauth.complete', ['user' => $user, 'username' => $username, 'email' => $email, 'message' => $message])->render(); }