// When a user is not logged in and a matching SocialAccount exists,
// Simply log the user into the application.
if (!$isLoggedIn && $socialAccount !== null) {
- return $this->logUserIn($socialAccount->user);
+ auth()->login($socialAccount->user);
+ return redirect()->intended('/');
}
// When a user is logged in but the social account does not exist,
throw new SocialSignInException($message . '.', '/login');
}
-
- private function logUserIn($user)
- {
- auth()->login($user);
- return redirect('/');
- }
-
/**
* Ensure the social driver is correct and supported.
*
public function getActiveDrivers()
{
$activeDrivers = [];
- foreach ($this->validSocialDrivers as $driverName) {
- if ($this->checkDriverConfigured($driverName)) {
- $activeDrivers[$driverName] = true;
+ foreach ($this->validSocialDrivers as $driverKey) {
+ if ($this->checkDriverConfigured($driverKey)) {
+ $activeDrivers[$driverKey] = $this->getDriverName($driverKey);
}
}
return $activeDrivers;
}
+ /**
+ * Get the presentational name for a driver.
+ * @param $driver
+ * @return mixed
+ */
+ public function getDriverName($driver)
+ {
+ return config('services.' . strtolower($driver) . '.name');
+ }
+
/**
* @param string $socialDriver
* @param \Laravel\Socialite\Contracts\User $socialUser