/** * @return \Facebook\Entities\AccessToken * @throws Exception\CodeWasNotProvided */ public function getAccessToken() { if (!($code = $this->getCode())) { throw new Exception\CodeWasNotProvided(); } $accessToken = \Facebook\Entities\AccessToken::requestAccessToken(array('code' => $code, 'redirect_uri' => $this->getSettings()->getRedirect())); if ($accessToken) { return (string) $accessToken; } return false; }
/** * @param array $oAuthConfig */ public function __construct($oAuthConfig) { FacebookSession::setDefaultApplication($oAuthConfig['facebook']['app_id'], $oAuthConfig['facebook']['app_secret']); $accessToken = AccessToken::requestAccessToken(array('grant_type' => 'client_credentials')); $this->api = new FacebookSession($accessToken); }
/** * Handles a response from Facebook, including a CSRF check, and returns a * FacebookSession. * * @return FacebookSession|null */ public function getSessionFromRedirect() { if ($this->isValidRedirect()) { $params = array('redirect_uri' => $this->getFilteredUri($this->getCurrentUri()), 'code' => $this->getCode()); return new FacebookSession(AccessToken::requestAccessToken($params, $this->appId, $this->appSecret)); } return null; }