public function execute($hasCode) { if (!$hasCode) { return $this->getAuthorizationFirst(); } // Get the user details from GitHub. $userData = $this->socialiteFactory->driver('github')->user(); // Make sure we have a user created. $user = $this->users->getOrCreate(['email' => $userData->getEmail(), 'token' => $userData->token, 'name' => $userData->getName(), 'nickname' => $userData->getNickname(), 'avatar' => $userData->getAvatar()]); // Log the user in with the specified details and try to remember the logged in user. Auth::login($user, true); return redirect(route('home')); }