summaryrefslogtreecommitdiff
path: root/lib/twitterapi.php
diff options
context:
space:
mode:
authorCraig Andrews <candrews@integralblue.com>2009-07-09 13:18:57 -0400
committerCraig Andrews <candrews@integralblue.com>2009-07-09 13:18:57 -0400
commit69574591d0ac429475b1099e8d9f3e46f7a004ea (patch)
tree02ff2ef5709bfbf77cad3e04d75e81cb771d2c27 /lib/twitterapi.php
parentd2e83b6a67fec311f9bc36a7d886f40169d9de15 (diff)
Notice attachments are enclosures in feeds (Atom, RSS 1.0/RDF, and RSS 2.0).
http://laconi.ca/trac/ticket/1690
Diffstat (limited to 'lib/twitterapi.php')
-rw-r--r--lib/twitterapi.php21
1 files changed, 20 insertions, 1 deletions
diff --git a/lib/twitterapi.php b/lib/twitterapi.php
index 40e5b5067..8f902cbca 100644
--- a/lib/twitterapi.php
+++ b/lib/twitterapi.php
@@ -207,7 +207,6 @@ class TwitterapiAction extends Action
function twitter_rss_entry_array($notice)
{
-
$profile = $notice->getProfile();
$entry = array();
@@ -224,6 +223,19 @@ class TwitterapiAction extends Action
$entry['updated'] = $entry['published'];
$entry['author'] = $profile->getBestName();
+ # Enclosure
+ $attachments = $notice->attachments();
+ if($attachments){
+ $entry['enclosures']=array();
+ foreach($attachments as $attachment){
+ $enclosure=array();
+ $enclosure['url']=$attachment->url;
+ $enclosure['mimetype']=$attachment->mimetype;
+ $enclosure['size']=$attachment->size;
+ $entry['enclosures'][]=$enclosure;
+ }
+ }
+
# RSS Item specific
$entry['description'] = $entry['content'];
$entry['pubDate'] = common_date_rfc2822($notice->created);
@@ -378,6 +390,13 @@ class TwitterapiAction extends Action
$this->element('pubDate', null, $entry['pubDate']);
$this->element('guid', null, $entry['guid']);
$this->element('link', null, $entry['link']);
+
+ # RSS only supports 1 enclosure per item
+ if($entry['enclosures']){
+ $enclosure = $entry['enclosures'][0];
+ $this->element('enclosure', array('url'=>$enclosure['url'],'type'=>$enclosure['mimetype'],'length'=>$enclosure['size']), null);
+ }
+
$this->elementEnd('item');
}