$avatar = $profile->getAvatar(AVATAR_STREAM_SIZE);
$twitter_user['profile_image_url'] = ($avatar) ? common_avatar_display_url($avatar) : common_default_avatar(AVATAR_STREAM_SIZE);
- $twitter_user['protected'] = false; # not supported by Laconica yet
+ $twitter_user['protected'] = 'false'; # not supported by Laconica yet
$twitter_user['url'] = ($profile->homepage) ? $profile->homepage : NULL;
if ($get_notice) {
$twitter_status = array();
$twitter_status['text'] = $notice->content;
- $twitter_status['truncated'] = false; # Not possible on Laconica
+ $twitter_status['truncated'] = 'false'; # Not possible on Laconica
$twitter_status['created_at'] = $this->date_twitter($notice->created);
$twitter_status['in_reply_to_status_id'] = ($notice->reply_to) ? intval($notice->reply_to) : NULL;
- $twitter_status['source'] = NULL; # XXX: twitterific, twitterfox, etc. Not supported yet.
+ $twitter_status['source'] = $notice->source;
$twitter_status['id'] = intval($notice->id);
$twitter_status['in_reply_to_user_id'] = ($notice->reply_to) ? $this->replier_by_reply(intval($notice->reply_to)) : NULL;
$twitter_status['favorited'] = NULL; # XXX: Not implemented on Laconica yet.
function show_twitter_xml_status($twitter_status) {
common_element_start('status');
- common_element('created_at', NULL, $twitter_status['created_at']);
- common_element('id', NULL, $twitter_status['id']);
- common_element('text', NULL, $twitter_status['text']);
- common_element('source', NULL, $twitter_status['source']);
- common_element('truncated', NULL, $twitter_status['truncated']);
- common_element('in_reply_to_status_id', NULL, $twitter_status['in_reply_to_status_id']);
- common_element('in_reply_to_user_id', NULL, $twitter_status['in_reply_to_user_id']);
- common_element('favorited', Null, $twitter_status['favorited']);
-
- if ($twitter_status['user']) {
- $this->show_twitter_xml_user($twitter_status['user']);
+ foreach($twitter_status as $element => $value) {
+ if ($element == 'user') {
+ $this->show_twitter_xml_user($twitter_status['user']);
+ } else {
+ common_element($element, NULL, $value);
+ }
}
-
common_element_end('status');
}
function show_twitter_xml_user($twitter_user) {
common_element_start('user');
- common_element('id', NULL, $twitter_user['id']);
- common_element('name', NULL, $twitter_user['name']);
- common_element('screen_name', NULL, $twitter_user['screen_name']);
- common_element('location', NULL, $twitter_user['location']);
- common_element('description', NULL, $twitter_user['description']);
- common_element('profile_image_url', NULL, $twitter_user['profile_image_url']);
- common_element('url', NULL, $twitter_user['url']);
- common_element('protected', NULL, $twitter_user['protected']);
- common_element('followers_count', NULL, $twitter_user['followers_count']);
- if ($twitter_user['status']) {
- $this->show_twitter_xml_status($twitter_user['status']);
+ foreach($twitter_user as $element => $value) {
+ if ($element == 'status') {
+ $this->show_twitter_xml_status($twitter_user['status']);
+ } else {
+ common_element($element, NULL, $value);
+ }
}
common_element_end('user');
}
function show_twitter_json_users($twitter_users) {
print(json_encode($twitter_users));
}
-
- function show($args, $apidata) {
- parent::handle($args);
-
- $id = $apidata['api_arg'];
- $notice = Notice::staticGet($id);
-
- if ($notice) {
-
- if ($apidata['content-type'] == 'xml') {
- $this->show_single_xml_status($notice);
- } elseif ($apidata['content-type'] == 'json') {
- $this->show_single_json_status($notice);
- }
- } else {
- header('HTTP/1.1 404 Not Found');
- }
-
- exit();
- }
function show_single_xml_status($notice) {
$this->init_document('xml');
$this->init_twitter_atom();
break;
default:
- $this->client_error(_('Unsupported type'));
+ $this->client_error(_('Not a supported data format.'));
break;
}
$this->end_twitter_rss();
break;
default:
- $this->client_error(_('Unsupported type'));
+ $this->client_error(_('Not a supported data format.'));
break;
}
return;
$this->show_twitter_json_users($profile_array);
break;
default:
- $this->client_error(_('not a supported data format'));
+ $this->client_error(_('Not a supported data format.'));
return;
}
return;