Ejemplo n.º 1
0
 /**
  * Returns user profile
  *
  * Examples:
  *
  *	$data = $hybridauth->authenticate( "Twitter" )->getUserProfile();
  */
 function getUserProfile()
 {
     $response = $this->signedRequest('account/verify_credentials.json');
     $response = json_decode($response);
     if (!isset($response->id) || isset($response->error)) {
         throw new Exception('User profile request failed: Provider returned an invalid response. ' . 'HTTP client state: (' . $this->httpClient->getState() . ')', Exception::USER_PROFILE_REQUEST_FAILED, $this);
     }
     $parser = function ($property) use($response) {
         return property_exists($response, $property) ? $response->{$property} : null;
     };
     $profile = new Profile();
     $profile->setIdentifier($parser('id'));
     $profile->setFirstName($parser('name'));
     $profile->setDisplayName($parser('screen_name'));
     $profile->setDescription($parser('description'));
     $profile->setPhotoURL($parser('profile_image_url'));
     $profile->setWebSiteURL($parser('url'));
     $profile->setRegion($parser('location'));
     $profile->setProfileURL('http://twitter.com/' . $profile->getDisplayName());
     return $profile;
 }
 /**
  * Get the display-name of the user.
  */
 public function getDisplayName()
 {
     return $this->user->getDisplayName();
 }