From 67f3c1a8d40d6e05ea2fa72af917b26fb9503e06 Mon Sep 17 00:00:00 2001 From: csarven Date: Fri, 14 Nov 2008 16:05:06 -0500 Subject: trac626 Put a list of feed links darcs-hash:20081114210506-eefa4-ba7e9bdd794ddfcacc397d732073abf99e97f3a5.gz --- lib/personal.php | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- lib/util.php | 3 +++ 2 files changed, 72 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/personal.php b/lib/personal.php index 248b4cc6b..f1c6ea9b1 100644 --- a/lib/personal.php +++ b/lib/personal.php @@ -84,6 +84,74 @@ class PersonalAction extends Action { common_element_end('ul'); } + + function show_feeds_list($feeds) { + common_element_start('div', array('class' => 'feeds')); + common_element('p', null, 'Feeds:'); + common_element_start('ul', array('class' => 'xoxo')); + + foreach ($feeds as $key => $value) { + $this->common_feed_item($feeds[$key]); + } + common_element_end('ul'); + common_element_end('div'); + } + + function common_feed_item($feed) { + $nickname = $this->trimmed('nickname'); + + switch($feed['item']) { + case 'notices': default: + $feed_classname = $feed['type']; + $feed_mimetype = "application/".$feed['type']."+xml"; + $feed_title = "$nickname's ".$feed['version']." notice feed"; + $feed['textContent'] = "RSS"; + break; + + case 'allrss': + $feed_classname = $feed['type']; + $feed_mimetype = "application/".$feed['type']."+xml"; + $feed_title = $feed['version']." feed for $nickname and friends"; + $feed['textContent'] = "RSS"; + break; + + case 'repliesrss': + $feed_classname = $feed['type']; + $feed_mimetype = "application/".$feed['type']."+xml"; + $feed_title = $feed['version']." feed for replies to $nickname"; + $feed['textContent'] = "RSS"; + break; + + case 'foaf': + $feed_classname = "foaf"; + $feed_mimetype = "application/".$feed['type']."+xml"; + $feed_title = "$nickname's FOAF file"; + $feed['textContent'] = "FOAF"; + break; + + case 'favoritesrss': + $feed_classname = "favorites"; + $feed_mimetype = "application/".$feed['type']."+xml"; + $feed_title = "Feed for favorites of $nickname"; + $feed['textContent'] = "RSS"; + break; + + case 'usertimeline': + $feed_classname = "atom"; + $feed_mimetype = "application/".$feed['type']."+xml"; + $feed_title = "$nickname's ".$feed['version']." notice feed"; + $feed['textContent'] = "Atom"; + break; + } + common_element_start('li'); + common_element('a', array('href' => $feed['href'], + 'class' => $feed_classname, + 'type' => $feed_mimetype, + 'title' => $feed_title), + $feed['textContent']); + common_element_end('li'); + } + function source_link($source) { $source_name = _($source); @@ -107,4 +175,4 @@ class PersonalAction extends Action { } return; } -} \ No newline at end of file +} diff --git a/lib/util.php b/lib/util.php index 6f6d615e5..2b4071ba6 100644 --- a/lib/util.php +++ b/lib/util.php @@ -1029,6 +1029,9 @@ function common_fancy_url($action, $args=NULL) { } else { return common_path($args['nickname']); } + + case 'usertimeline': + return common_path("api/statuses/user_timeline/".$args['nickname']."atom"); case 'confirmaddress': return common_path('main/confirmaddress/'.$args['code']); case 'userbyid': -- cgit v1.2.3-54-g00ecf