Если вы знакомы с Laravel Socialite, это может быть достигнуто ...
После того, как ваши пользователи вошли в систему и получили одобрение администратора, вы можете добавить кнопку facebook, чтобы использовать функцию входа в Socialite, но снекоторые пользовательские работы.
В SocialAuthController.php
Найдите метод handleFacebookCallback
В моем примере у меня есть метод с именем handleProvider, но он работает точно так же
public function handleProviderCallback($provider)
{
// First we are going to get the user data from facebook
$social_user = Socialite::driver($provider)->fields([
'name', 'email'
])->user();
//Now we make the logic
if (Auth::check()) { //if the user is logged in
$userID = Auth::user()->id; //then we get the user ID
$user = User::where('id', $userID)->first(); //Prepare the model for update
//And finally we just start to update each field in DB (you need to create this fields)
$user->fb_email = $social_user->email;
$user->avatar = $social_user->avatar;
$user->fb_id = $social_user->id;
$user->save();
return $this->authAndRedirect($user); // This is to redirect the user
}
}
С этим вы можете заставить пользователей связывать свои учетные записи в вашем приложении с Facebook ...
Но имейте в виду, что вам также придется справиться с остальным, с остальнымикод для создания новой учетной записи, если вы собираетесь разрешить пользователям регистрироваться на Facebook.В противном случае вам нужно всего лишь добавить кнопку facebook на странице профиля ваших пользователей, чтобы связать их с соответствующей учетной записью fb.
Кнопка может быть такой:
<a href="{{ route('social.auth', 'facebook') }}" class="btn btn-social btn-just-icon btn-link"><i class="fa fa-facebook-square"></i></a>
, вам также нужно настроить Socialite, как и сначала ознакомиться с этим.