// We'll pull common formatting out of this for other formats
$atom = new AtomGroupNoticeFeed($this->group);
+ // Calculate self link
+ $id = $this->arg('id');
+ $aargs = array('format' => $this->format);
+ if (!empty($id)) {
+ $aargs['id'] = $id;
+ }
+ $self = $this->getSelfUri('ApiTimelineGroup', $aargs);
+
switch($this->format) {
case 'xml':
$this->showXmlTimeline($this->notices);
$this->group->homeUrl(),
$atom->subtitle,
null,
- $atom->logo
+ $atom->logo,
+ $self
);
break;
case 'atom':
header('Content-Type: application/atom+xml; charset=utf-8');
try {
-
$atom->addAuthorRaw($this->group->asAtomAuthor());
$atom->setActivitySubject($this->group->asActivitySubject());
-
- $id = $this->arg('id');
- $aargs = array('format' => 'atom');
- if (!empty($id)) {
- $aargs['id'] = $id;
- }
- $self = $this->getSelfUri('ApiTimelineGroup', $aargs);
-
$atom->setId($self);
$atom->setSelfLink($self);
-
$atom->addEntryFromNotices($this->notices);
-
$this->raw($atom->getString());
-
} catch (Atom10FeedException $e) {
$this->serverError(
'Could not generate feed for group - ' . $e->getMessage()
// We'll use the shared params from the Atom stub
// for other feed types.
$atom = new AtomUserNoticeFeed($this->user);
- $title = $atom->title;
- $link = common_local_url(
+
+ $link = common_local_url(
'showstream',
array('nickname' => $this->user->nickname)
);
- $subtitle = $atom->subtitle;
- $logo = $atom->logo;
+
+ // Calculate self link
+ $id = $this->arg('id');
+ $aargs = array('format' => $this->format);
+ if (!empty($id)) {
+ $aargs['id'] = $id;
+ }
+ $self = $this->getSelfUri('ApiTimelineUser', $aargs);
// FriendFeed's SUP protocol
// Also added RSS and Atom feeds
break;
case 'rss':
$this->showRssTimeline(
- $this->notices, $title, $link,
- $subtitle, $suplink, $logo
+ $this->notices,
+ $atom->title,
+ $link,
+ $atom->subtitle,
+ $suplink,
+ $atom->logo,
+ $self
);
break;
case 'atom':
header('Content-Type: application/atom+xml; charset=utf-8');
- $id = $this->arg('id');
- $aargs = array('format' => 'atom');
- if (!empty($id)) {
- $aargs['id'] = $id;
- }
- $self = $this->getSelfUri('ApiTimelineUser', $aargs);
$atom->setId($self);
$atom->setSelfLink($self);
-
$atom->addEntryFromNotices($this->notices);
-
$this->raw($atom->getString());
break;