summaryrefslogtreecommitdiff
path: root/actions
diff options
context:
space:
mode:
authorZach Copley <zach@status.net>2010-03-12 04:08:31 +0000
committerZach Copley <zach@status.net>2010-03-12 04:08:31 +0000
commit13556e7ba967c4184009688348082fed1480a5d4 (patch)
tree2f027a74153d1a2df3f283331c109f07276ec97d /actions
parentd31004653f51eadd5b26bfb34474387a834811a3 (diff)
Add Atom self link to tag timeline
Diffstat (limited to 'actions')
-rw-r--r--actions/apitimelinetag.php38
1 files changed, 16 insertions, 22 deletions
diff --git a/actions/apitimelinetag.php b/actions/apitimelinetag.php
index a29061fcc..fed1437ea 100644
--- a/actions/apitimelinetag.php
+++ b/actions/apitimelinetag.php
@@ -25,7 +25,7 @@
* @author Evan Prodromou <evan@status.net>
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-2010 StatusNet, Inc.
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -67,6 +67,8 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
{
parent::prepare($args);
+ common_debug("apitimelinetag prepare()");
+
$this->tag = $this->arg('tag');
$this->notices = $this->getNotices();
@@ -108,22 +110,28 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
$taguribase = TagURI::base();
$id = "tag:$taguribase:TagTimeline:".$tag;
+ $link = common_local_url(
+ 'tag',
+ array('tag' => $this->tag)
+ );
+
+ $self = $this->getSelfUri();
+
+ common_debug("self link is: $self");
+
switch($this->format) {
case 'xml':
$this->showXmlTimeline($this->notices);
break;
case 'rss':
- $link = common_local_url(
- 'tag',
- array('tag' => $this->tag)
- );
$this->showRssTimeline(
$this->notices,
$title,
$link,
$subtitle,
null,
- $sitelogo
+ $sitelogo,
+ $self
);
break;
case 'atom':
@@ -138,22 +146,8 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
$atom->setLogo($logo);
$atom->setUpdated('now');
- $atom->addLink(
- common_local_url(
- 'tag',
- array('tag' => $this->tag)
- )
- );
-
- $aargs = array('format' => 'atom');
- if (!empty($this->tag)) {
- $aargs['tag'] = $this->tag;
- }
-
- $atom->addLink(
- $this->getSelfUri('ApiTimelineTag', $aargs),
- array('rel' => 'self', 'type' => 'application/atom+xml')
- );
+ $atom->addLink($link);
+ $atom->setSelfLink($self);
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());