示例#1
0
 public function saveAccessToken()
 {
     try {
         $fb = new Facebook();
         if (isset($_GET['code'])) {
             $result = $fb->callback($_GET['code']);
             $accessToken = $result->access_token;
         }
     } catch (Facebook\Exceptions\FacebookResponseException $e) {
         // When Graph returns an error
         return 'Graph returned an error: ' . $e->getMessage();
         exit;
     } catch (Facebook\Exceptions\FacebookSDKException $e) {
         // When validation fails or other local issues
         return 'Facebook SDK returned an error: ' . $e->getMessage();
         exit;
     }
     if (isset($accessToken)) {
         Session::put('facebook_access_token', $accessToken);
     }
     if (session('redirectPath')) {
         return redirect(session('redirectPath'));
     } else {
         return redirect('/');
     }
 }
示例#2
0
 public function postLoginFacebook()
 {
     $accessToken = session('facebook_access_token');
     $fb = new Facebook();
     $userFB = $fb->getUserInfo('id,name,email', $accessToken);
     $test = new User();
     if (!$test->findEmail($userFB->email)) {
         $user = new User();
         $user->name = $userFB->name;
         $user->email = $userFB->email;
         $user->save();
     }
     Session::put('user_name', $userFB->name);
     Session::put('user_email', $userFB->email);
     return redirect('');
 }