Example #1
0
 /**
  * Creates a request and parses the result as url_encoded. This is used internally for the RequestToken and AccessToken requests.
  *
  * @param string $httpMethod
  * @param string $path
  * @param Token $token
  * @param array $requestOptions
  * @param array $params
  * @return array
  */
 public function tokenRequest($httpMethod, $path, &$token = null, $requestOptions = array(), $params = array())
 {
     $response = $this->request($httpMethod, $path, $token, $requestOptions, $params);
     $code = $response['status']['code'];
     if ($code >= 200 && $code <= 299) {
         //if ($response['status']['code'] == "200") {}
         if (substr($response['body'], 0, 4) == 'Fail') {
             throw new FailRequestException($response['body']);
         }
         $data = explode('&', $response['body']);
         OauthHelper::log($data);
         $result = array();
         foreach ($data as $rec) {
             list($key, $value) = split('=', $rec);
             //$result[$key] = $value;
             $result[$key] = OauthHelper::unescape($value);
         }
         $response['status']['success'] = true;
         return $result;
     } elseif ($code >= 300 && $code <= 399) {
         $response['status']['success'] = false;
     } elseif ($code >= 400 && $code <= 499) {
         throw new UnauthorizedException($response);
     } else {
         $response['status']['success'] = false;
     }
     return false;
 }
Example #2
0
 /**
  * Unescape wrapper
  *
  * @param string $value
  * @return string
  */
 public function unescape($value)
 {
     return OauthHelper::unescape(str_replace('+', '%2B', $value));
 }