Implemented the "show" method of the laconica groups api
This commit is contained in:
parent
80ad02610a
commit
ec103b90e3
|
@ -130,6 +130,7 @@ class ApiAction extends Action
|
||||||
'laconica/wadl',
|
'laconica/wadl',
|
||||||
'tags/timeline',
|
'tags/timeline',
|
||||||
'oembed/oembed',
|
'oembed/oembed',
|
||||||
|
'groups/show',
|
||||||
'groups/timeline');
|
'groups/timeline');
|
||||||
|
|
||||||
static $bareauth = array('statuses/user_timeline',
|
static $bareauth = array('statuses/user_timeline',
|
||||||
|
|
|
@ -51,6 +51,32 @@ require_once INSTALLDIR.'/lib/twitterapi.php';
|
||||||
class TwitapigroupsAction extends TwitterapiAction
|
class TwitapigroupsAction extends TwitterapiAction
|
||||||
{
|
{
|
||||||
|
|
||||||
|
function show($args, $apidata)
|
||||||
|
{
|
||||||
|
parent::handle($args);
|
||||||
|
|
||||||
|
common_debug("in groups api action");
|
||||||
|
|
||||||
|
$this->auth_user = $apidata['user'];
|
||||||
|
$group = $this->get_group($apidata['api_arg'], $apidata);
|
||||||
|
|
||||||
|
if (empty($group)) {
|
||||||
|
$this->clientError('Not Found', 404, $apidata['content-type']);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch($apidata['content-type']) {
|
||||||
|
case 'xml':
|
||||||
|
$this->show_single_xml_group($group);
|
||||||
|
break;
|
||||||
|
case 'json':
|
||||||
|
$this->show_single_json_group($group);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
$this->clientError(_('API method not found!'), $code = 404);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function timeline($args, $apidata)
|
function timeline($args, $apidata)
|
||||||
{
|
{
|
||||||
parent::handle($args);
|
parent::handle($args);
|
||||||
|
|
|
@ -213,6 +213,25 @@ class TwitterapiAction extends Action
|
||||||
return $twitter_status;
|
return $twitter_status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function twitter_group_array($group)
|
||||||
|
{
|
||||||
|
$twitter_group=array();
|
||||||
|
$twitter_group['id']=$group->id;
|
||||||
|
$twitter_group['nickname']=$group->nickname;
|
||||||
|
$twitter_group['fullname']=$group->fullname;
|
||||||
|
$twitter_group['url']=$group->url;
|
||||||
|
$twitter_group['original_logo']=$group->original_logo;
|
||||||
|
$twitter_group['homepage_logo']=$group->homepage_logo;
|
||||||
|
$twitter_group['stream_logo']=$group->stream_logo;
|
||||||
|
$twitter_group['mini_logo']=$group->mini_logo;
|
||||||
|
$twitter_group['homepage']=$group->homepage;
|
||||||
|
$twitter_group['description']=$group->description;
|
||||||
|
$twitter_group['location']=$group->location;
|
||||||
|
$twitter_group['created']=$this->date_twitter($group->created);
|
||||||
|
$twitter_group['modified']=$this->date_twitter($group->modified);
|
||||||
|
return $twitter_group;
|
||||||
|
}
|
||||||
|
|
||||||
function twitter_rss_entry_array($notice)
|
function twitter_rss_entry_array($notice)
|
||||||
{
|
{
|
||||||
$profile = $notice->getProfile();
|
$profile = $notice->getProfile();
|
||||||
|
@ -413,6 +432,15 @@ class TwitterapiAction extends Action
|
||||||
$this->elementEnd('status');
|
$this->elementEnd('status');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function show_twitter_xml_group($twitter_group)
|
||||||
|
{
|
||||||
|
$this->elementStart('group');
|
||||||
|
foreach($twitter_group as $element => $value) {
|
||||||
|
$this->element($element, null, $value);
|
||||||
|
}
|
||||||
|
$this->elementEnd('group');
|
||||||
|
}
|
||||||
|
|
||||||
function show_twitter_xml_user($twitter_user, $role='user')
|
function show_twitter_xml_user($twitter_user, $role='user')
|
||||||
{
|
{
|
||||||
$this->elementStart($role);
|
$this->elementStart($role);
|
||||||
|
@ -639,6 +667,22 @@ class TwitterapiAction extends Action
|
||||||
$this->end_document('json');
|
$this->end_document('json');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function show_single_json_group($group)
|
||||||
|
{
|
||||||
|
$this->init_document('json');
|
||||||
|
$twitter_group = $this->twitter_group_array($group);
|
||||||
|
$this->show_json_objects($twitter_group);
|
||||||
|
$this->end_document('json');
|
||||||
|
}
|
||||||
|
|
||||||
|
function show_single_xml_group($group)
|
||||||
|
{
|
||||||
|
$this->init_document('xml');
|
||||||
|
$twitter_group = $this->twitter_group_array($group);
|
||||||
|
$this->show_twitter_xml_group($twitter_group);
|
||||||
|
$this->end_document('xml');
|
||||||
|
}
|
||||||
|
|
||||||
// Anyone know what date format this is?
|
// Anyone know what date format this is?
|
||||||
// Twitter's dates look like this: "Mon Jul 14 23:52:38 +0000 2008" -- Zach
|
// Twitter's dates look like this: "Mon Jul 14 23:52:38 +0000 2008" -- Zach
|
||||||
function date_twitter($dt)
|
function date_twitter($dt)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user