exit(1);
}
+class ApiValidationException extends Exception { }
+
/**
* Contains most of the Twitter-compatible API output functions.
*
{
$twitter_user = array();
+ $user = $profile->getUser();
+
$twitter_user['id'] = intval($profile->id);
$twitter_user['name'] = $profile->getBestName();
$twitter_user['screen_name'] = $profile->nickname;
Avatar::defaultImage(AVATAR_STREAM_SIZE);
$twitter_user['url'] = ($profile->homepage) ? $profile->homepage : null;
- $twitter_user['protected'] = false; # not supported by StatusNet yet
+ $twitter_user['protected'] = ($user->private_stream) ? true : false;
$twitter_user['followers_count'] = $profile->subscriberCount();
- $design = null;
- $user = $profile->getUser();
+ $design = null;
// Note: some profiles don't have an associated user
? Design::url($design->backgroundimage) : '';
$twitter_user['profile_background_tile']
- = empty($design->disposition)
- ? '' : ($design->disposition & BACKGROUND_TILE) ? 'true' : 'false';
+ = (bool)($design->disposition & BACKGROUND_TILE);
$twitter_user['statuses_count'] = $profile->noticeCount();
if ($get_notice) {
$notice = $profile->getCurrentNotice();
if ($notice) {
- # don't get user!
+ // don't get user!
$twitter_user['status'] = $this->twitterStatusArray($notice, false);
}
}
}
if ($include_user && $profile) {
- # Don't get notice (recursive!)
+ // Don't get notice (recursive!)
$twitter_user = $this->twitterUserArray($profile, false);
$twitter_status['user'] = $twitter_user;
}
{
$twitter_group = array();
- $twitter_group['id'] = $group->id;
+ $twitter_group['id'] = intval($group->id);
$twitter_group['url'] = $group->permalink();
$twitter_group['nickname'] = $group->nickname;
$twitter_group['fullname'] = $group->fullname;
$details['notifications_enabled'] = $notifications;
$details['blocking'] = $source->hasBlocked($target);
- $details['id'] = $source->id;
+ $details['id'] = intval($source->id);
return $details;
}
$this->element('guid', null, $entry['guid']);
$this->element('link', null, $entry['link']);
- # RSS only supports 1 enclosure per item
+ // RSS only supports 1 enclosure per item
if(array_key_exists('enclosures', $entry) and !empty($entry['enclosures'])){
$enclosure = $entry['enclosures'][0];
$this->element('enclosure', array('url'=>$enclosure['url'],'type'=>$enclosure['mimetype'],'length'=>$enclosure['size']), null);
}
if (!is_null($suplink)) {
- # For FriendFeed's SUP protocol
+ // For FriendFeed's SUP protocol
$this->element('link', array('rel' => 'http://api.friendfeed.com/2008/03#sup',
'href' => $suplink,
'type' => 'application/json'));
$from_profile = $message->getFrom();
$to_profile = $message->getTo();
- $dmsg['id'] = $message->id;
- $dmsg['sender_id'] = $message->from_profile;
+ $dmsg['id'] = intval($message->id);
+ $dmsg['sender_id'] = intval($from_profile);
$dmsg['text'] = trim($message->content);
- $dmsg['recipient_id'] = $message->to_profile;
+ $dmsg['recipient_id'] = intval($to_profile);
$dmsg['created_at'] = $this->dateTwitter($message->created);
$dmsg['sender_screen_name'] = $from_profile->nickname;
$dmsg['recipient_screen_name'] = $to_profile->nickname;
return;
}
- function clientError($msg, $code = 400, $format = 'xml')
+ function clientError($msg, $code = 400, $format = null)
{
$action = $this->trimmed('action');
+ if ($format === null) {
+ $format = $this->format;
+ }
common_debug("User error '$code' on '$action': $msg", __FILE__);
}
}
- function serverError($msg, $code = 500, $content_type = 'xml')
+ function serverError($msg, $code = 500, $content_type = null)
{
$action = $this->trimmed('action');
+ if ($content_type === null) {
+ $content_type = $this->format;
+ }
common_debug("Server error '$code' on '$action': $msg", __FILE__);