"extra": {
"laravel": {
"providers": [
- "Cubist\\Socialite\\CubistSocialiteServiceProvider"
+ "Cubist\\Socialite\\CubistSocialiteServiceProvider",
+ "Cubist\\Socialite\\CubistSocialiteAuthServiceProvider",
]
}
}
--- /dev/null
+<?php
+
+namespace Cubist\Socialite;
+
+use Illuminate\Foundation\Support\Providers\AuthServiceProvider;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Auth;
+use Laravel\Socialite\Facades\Socialite;
+
+class CubistSocialiteAuthProvider extends AuthServiceProvider
+{
+ /**
+ * Register any application authentication / authorization services.
+ *
+ * @return void
+ */
+ public function boot()
+ {
+ $this->registerPolicies();
+
+ Auth::viaRequest('socialitegoogle', function (Request $request) {
+ $socialiteUser = Socialite::driver('google')->user();
+ if ($socialiteUser) {
+ $userClass = config('auth.providers.users.model');
+ $instance = new $userClass();
+ $instance->id = $socialiteUser->getId();
+ $instance->email = $socialiteUser->getEmail();
+ }
+ });
+ }
+}
\ No newline at end of file