Esempio n. 1
0
 public function testSendRequestUsingGET()
 {
     $url = 'http://example.com/protected_resource';
     $method = 'GET';
     $additional = array('foo' => 'bar', 'food' => 'pizza');
     $con = new HTTP_OAuth_Consumer('key', 'secret', 'token', 'tokenSecret');
     $con->accept(new HTTP_Request2(null, null, array('adapter' => 'Mock')));
     $con->sendRequest($url, $additional, $method);
     $req = $con->getLastRequest();
     $params = $req->getParameters();
     $this->assertArrayHasKey('foo', $params);
     $this->assertEquals($params['foo'], 'bar');
     $this->assertArrayHasKey('food', $params);
     $this->assertEquals($params['food'], 'pizza');
     $this->assertTrue((bool) strstr($req->getUrl()->getQuery(), 'foo=bar&food=pizza'));
     $this->assertInstanceOf('HTTP_OAuth_Consumer_Response', $con->getLastResponse());
 }
Esempio n. 2
0
 /**
  * Get access tokens for Flickr
  *
  * @return bool|string Returns the access tokens, or false if autorization process has not been started yet
  */
 public function getAccessTokens()
 {
     $tokens = $this->owner->options->flickr_api;
     // Check for valid tokens
     if (!is_array($tokens) || empty($tokens) || !isset($tokens['token_type'])) {
         return false;
     }
     // Return with tokens if we already have access tokens
     if ($tokens['token_type'] == 'access') {
         return $tokens;
     }
     try {
         $consumer = new \HTTP_OAuth_Consumer($this->key, $this->secret, $tokens['token'], $tokens['token_secret']);
         if (isset($_REQUEST['oauth_verifier'])) {
             $consumer->getAccessToken(static::FLICKR_ACCESS_URL, $_REQUEST['oauth_verifier']);
         } else {
             return false;
         }
     } catch (\Exception $e) {
         return false;
     }
     // Additional data is returned by Flickr, which contains username, etc.
     $data = $consumer->getLastResponse()->getDataFromBody();
     $tokens = array('token_type' => 'access', 'token' => $consumer->getToken(), 'token_secret' => $consumer->getTokenSecret(), 'fullname' => $data['fullname'], 'user_nsid' => $data['user_nsid'], 'username' => $data['username']);
     $this->owner->options->flickr_api = $tokens;
     unset($consumer);
     // Clear
     return $tokens;
 }