App\Http\Controllers\AccountApiController::oauthLogin PHP Method

oauthLogin() public method

public oauthLogin ( Illuminate\Http\Request $request )
$request Illuminate\Http\Request
    public function oauthLogin(Request $request)
    {
        $user = false;
        $token = $request->input('token');
        $provider = $request->input('provider');
        try {
            $user = Socialite::driver($provider)->userFromToken($token);
        } catch (Exception $exception) {
            return $this->errorResponse(['message' => $exception->getMessage()], 401);
        }
        if ($user) {
            $providerId = AuthService::getProviderId($provider);
            $user = $this->accountRepo->findUserByOauth($providerId, $user->id);
        }
        if ($user) {
            Auth::login($user);
            return $this->processLogin($request);
        } else {
            sleep(ERROR_DELAY);
            return $this->errorResponse(['message' => 'Invalid credentials'], 401);
        }
    }