Bringing the presentation of boolean variables (favorited, truncated, profile_background_tile) and the result from friendships/exist in JSON results from the Twitter Compatible API in line with what the real Twitter API does.
Currently, laconica returns text strings enclosed in quotes instead of bare Javascript booleans. This change fixes that. See http://laconi.ca/trac/ticket/1326 for one open issue related to this.
This commit is contained in:
parent
bd41896f4a
commit
90fb7be99a
@ -133,11 +133,7 @@ class TwitapifriendshipsAction extends TwitterapiAction
|
||||
return;
|
||||
}
|
||||
|
||||
if ($user_a->isSubscribed($user_b)) {
|
||||
$result = 'true';
|
||||
} else {
|
||||
$result = 'false';
|
||||
}
|
||||
$result = $user_a->isSubscribed($user_b);
|
||||
|
||||
switch ($apidata['content-type']) {
|
||||
case 'xml':
|
||||
|
@ -83,7 +83,7 @@ class TwitapiusersAction extends TwitterapiAction
|
||||
$twitter_user['profile_link_color'] = '';
|
||||
$twitter_user['profile_sidebar_fill_color'] = '';
|
||||
$twitter_user['profile_sidebar_border_color'] = '';
|
||||
$twitter_user['profile_background_tile'] = 'false';
|
||||
$twitter_user['profile_background_tile'] = false;
|
||||
|
||||
$faves = DB_DataObject::factory('fave');
|
||||
$faves->user_id = $user->id;
|
||||
|
@ -51,6 +51,26 @@ class TwitterapiAction extends Action
|
||||
parent::handle($args);
|
||||
}
|
||||
|
||||
/**
|
||||
* Overrides XMLOutputter::element to write booleans as strings (true|false).
|
||||
* See that method's documentation for more info.
|
||||
*
|
||||
* @param string $tag Element type or tagname
|
||||
* @param array $attrs Array of element attributes, as
|
||||
* key-value pairs
|
||||
* @param string $content string content of the element
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function element($tag, $attrs=null, $content=null)
|
||||
{
|
||||
if (is_bool($content)) {
|
||||
$content = ($content ? 'true' : 'false');
|
||||
}
|
||||
|
||||
return parent::element($tag, $attrs, $content);
|
||||
}
|
||||
|
||||
function twitter_user_array($profile, $get_notice=false)
|
||||
{
|
||||
|
||||
@ -66,7 +86,7 @@ class TwitterapiAction extends Action
|
||||
$avatar = $profile->getAvatar(AVATAR_STREAM_SIZE);
|
||||
|
||||
$twitter_user['profile_image_url'] = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(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) {
|
||||
@ -86,7 +106,7 @@ class TwitterapiAction extends Action
|
||||
|
||||
$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;
|
||||
@ -108,10 +128,9 @@ class TwitterapiAction extends Action
|
||||
($replier_profile) ? $replier_profile->nickname : null;
|
||||
|
||||
if (isset($this->auth_user)) {
|
||||
$twitter_status['favorited'] =
|
||||
($this->auth_user->hasFave($notice)) ? 'true' : 'false';
|
||||
$twitter_status['favorited'] = $this->auth_user->hasFave($notice);
|
||||
} else {
|
||||
$twitter_status['favorited'] = 'false';
|
||||
$twitter_status['favorited'] = false;
|
||||
}
|
||||
|
||||
if ($include_user) {
|
||||
|
Loading…
Reference in New Issue
Block a user