Cheetah
FacebookSignedRequestFromInputHelper.php
Go to the documentation of this file.
1 <?php
24 namespace Facebook\Helpers;
25 
32 
39 {
43  protected $signedRequest;
44 
48  protected $app;
49 
53  protected $oAuth2Client;
54 
62  public function __construct(FacebookApp $app, FacebookClient $client, $graphVersion = null)
63  {
64  $this->app = $app;
65  $graphVersion = $graphVersion ?: Facebook::DEFAULT_GRAPH_VERSION;
66  $this->oAuth2Client = new OAuth2Client($this->app, $client, $graphVersion);
67 
68  $this->instantiateSignedRequest();
69  }
70 
76  public function instantiateSignedRequest($rawSignedRequest = null)
77  {
78  $rawSignedRequest = $rawSignedRequest ?: $this->getRawSignedRequest();
79 
80  if (!$rawSignedRequest) {
81  return;
82  }
83 
84  $this->signedRequest = new SignedRequest($this->app, $rawSignedRequest);
85  }
86 
94  public function getAccessToken()
95  {
96  if ($this->signedRequest && $this->signedRequest->hasOAuthData()) {
97  $code = $this->signedRequest->get('code');
98  $accessToken = $this->signedRequest->get('oauth_token');
99 
100  if ($code && !$accessToken) {
101  return $this->oAuth2Client->getAccessTokenFromCode($code);
102  }
103 
104  $expiresAt = $this->signedRequest->get('expires', 0);
105 
106  return new AccessToken($accessToken, $expiresAt);
107  }
108 
109  return null;
110  }
111 
117  public function getSignedRequest()
118  {
119  return $this->signedRequest;
120  }
121 
127  public function getUserId()
128  {
129  return $this->signedRequest ? $this->signedRequest->getUserId() : null;
130  }
131 
137  abstract public function getRawSignedRequest();
138 
144  public function getRawSignedRequestFromPost()
145  {
146  if (isset($_POST['signed_request'])) {
147  return $_POST['signed_request'];
148  }
149 
150  return null;
151  }
152 
159  {
160  if (isset($_COOKIE['fbsr_' . $this->app->getId()])) {
161  return $_COOKIE['fbsr_' . $this->app->getId()];
162  }
163 
164  return null;
165  }
166 }
Facebook\Helpers\FacebookSignedRequestFromInputHelper\getSignedRequest
getSignedRequest()
Definition: FacebookSignedRequestFromInputHelper.php:117
Facebook\Helpers\FacebookSignedRequestFromInputHelper\$signedRequest
$signedRequest
Definition: FacebookSignedRequestFromInputHelper.php:43
Facebook\Helpers\FacebookSignedRequestFromInputHelper\getRawSignedRequestFromPost
getRawSignedRequestFromPost()
Definition: FacebookSignedRequestFromInputHelper.php:144
Facebook\Facebook\DEFAULT_GRAPH_VERSION
const DEFAULT_GRAPH_VERSION
Definition: Facebook.php:61
use
GNU LESSER GENERAL PUBLIC LICENSE February Free Software Inc Franklin Fifth MA USA Everyone is permitted to copy and distribute verbatim copies of this license but changing it is not allowed[This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it By the GNU General Public Licenses are intended to guarantee your freedom to share and change free software to make sure the software is free for all its users This the Lesser General Public applies to some specially designated software packages typically libraries of the Free Software Foundation and other authors who decide to use it You can use it but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular based on the explanations below When we speak of free we are referring to freedom of use
Definition: license.txt:27
php
Facebook\Helpers\FacebookSignedRequestFromInputHelper
Definition: FacebookSignedRequestFromInputHelper.php:39
Facebook\Helpers\FacebookSignedRequestFromInputHelper\getAccessToken
getAccessToken()
Definition: FacebookSignedRequestFromInputHelper.php:94
Facebook\Helpers\FacebookSignedRequestFromInputHelper\getRawSignedRequest
getRawSignedRequest()
Facebook\Authentication\AccessToken
Definition: AccessToken.php:32
Facebook\Helpers\FacebookSignedRequestFromInputHelper\getRawSignedRequestFromCookie
getRawSignedRequestFromCookie()
Definition: FacebookSignedRequestFromInputHelper.php:158
Facebook\FacebookApp
Definition: FacebookApp.php:30
Facebook\Authentication\OAuth2Client
Definition: OAuth2Client.php:40
Facebook\Helpers\FacebookSignedRequestFromInputHelper\getUserId
getUserId()
Definition: FacebookSignedRequestFromInputHelper.php:127
Facebook\SignedRequest
Definition: SignedRequest.php:34
Facebook\FacebookClient
Definition: FacebookClient.php:37
Facebook\Helpers\FacebookSignedRequestFromInputHelper\instantiateSignedRequest
instantiateSignedRequest($rawSignedRequest=null)
Definition: FacebookSignedRequestFromInputHelper.php:76
Facebook\Facebook
Definition: Facebook.php:52
Facebook\Helpers\FacebookSignedRequestFromInputHelper\__construct
__construct(FacebookApp $app, FacebookClient $client, $graphVersion=null)
Definition: FacebookSignedRequestFromInputHelper.php:62
Facebook\Helpers\FacebookSignedRequestFromInputHelper\$app
$app
Definition: FacebookSignedRequestFromInputHelper.php:48
Facebook\Helpers\FacebookSignedRequestFromInputHelper\$oAuth2Client
$oAuth2Client
Definition: FacebookSignedRequestFromInputHelper.php:53
Facebook\Helpers
Definition: FacebookCanvasHelper.php:24