diff options
author | zach <zach@copley.name> | 2008-07-16 19:00:47 -0400 |
---|---|---|
committer | zach <zach@copley.name> | 2008-07-16 19:00:47 -0400 |
commit | 1f7e5ca8f30cabbe04f439f41ef7624d124111ab (patch) | |
tree | 27343822efc50010f6e8ebd5a65e9c9649ba8986 /actions | |
parent | ac2d811a469b7109f34065bf13e31a5b5954dd0b (diff) |
Twitter-compatible API: statuses/show/id.format now works
darcs-hash:20080716230047-ca946-b9ff940ab05b29ed88b209f5ca9b446fbe25eab0.gz
Diffstat (limited to 'actions')
-rw-r--r-- | actions/twitapistatuses.php | 50 |
1 files changed, 34 insertions, 16 deletions
diff --git a/actions/twitapistatuses.php b/actions/twitapistatuses.php index 42c6313c8..98ca299f6 100644 --- a/actions/twitapistatuses.php +++ b/actions/twitapistatuses.php @@ -227,27 +227,45 @@ class TwitapistatusesAction extends TwitterapiAction { } /* - Returns a single status, specified by the id parameter below. The status's author will be returned inline. - - URL: http://server/api/statuses/show/id.format - - Formats: xml, json - - Parameters: - - * id. Required. The numerical ID of the status you're trying to retrieve. - Ex: http://server/api/statuses/show/123.xml - */ + * Returns a single notice, specified by the id parameter below. + * The status's author will be returned inline. + * + * URL: http://server/api/statuses/show/id.format + * + * Formats: xml, json + * + * Parameters: + * + * id. Required. The numerical ID of the status you're trying to retrieve. + * Ex: http://server/api/statuses/show/123.xml + * + */ function show($args, $apidata) { parent::handle($args); - $id = $this->arg('id'); - - print "show requested content-type: " . $apidata['content-type'] . "\n"; - print "id: $id\n"; + $id = $apidata['api_arg']; + $notice = Notice::staticGet($id); + + if ($notice) { + + if ($apidata['content-type'] == 'xml') { + header('Content-Type: application/xml; charset=utf-8'); + + common_start_xml(); + $twitter_status = $this->twitter_status_array($notice); + $this->show_twitter_xml_status($twitter_status); + common_end_xml(); + + } elseif ($apidata['content-type'] == 'json') { + header('Content-Type: application/json; charset=utf-8'); + $status = $this->twitter_status_array($notice); + $this->show_twitter_json_statuses($status); + } + } else { + header('HTTP/1.1 404 Not Found'); + } exit(); - } /* |