Add Atom self link to tag timeline
This commit is contained in:
parent
d31004653f
commit
13556e7ba9
@ -25,7 +25,7 @@
|
|||||||
* @author Evan Prodromou <evan@status.net>
|
* @author Evan Prodromou <evan@status.net>
|
||||||
* @author Jeffery To <jeffery.to@gmail.com>
|
* @author Jeffery To <jeffery.to@gmail.com>
|
||||||
* @author Zach Copley <zach@status.net>
|
* @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
|
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
@ -67,6 +67,8 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
|
|||||||
{
|
{
|
||||||
parent::prepare($args);
|
parent::prepare($args);
|
||||||
|
|
||||||
|
common_debug("apitimelinetag prepare()");
|
||||||
|
|
||||||
$this->tag = $this->arg('tag');
|
$this->tag = $this->arg('tag');
|
||||||
$this->notices = $this->getNotices();
|
$this->notices = $this->getNotices();
|
||||||
|
|
||||||
@ -108,22 +110,28 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
|
|||||||
$taguribase = TagURI::base();
|
$taguribase = TagURI::base();
|
||||||
$id = "tag:$taguribase:TagTimeline:".$tag;
|
$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) {
|
switch($this->format) {
|
||||||
case 'xml':
|
case 'xml':
|
||||||
$this->showXmlTimeline($this->notices);
|
$this->showXmlTimeline($this->notices);
|
||||||
break;
|
break;
|
||||||
case 'rss':
|
case 'rss':
|
||||||
$link = common_local_url(
|
|
||||||
'tag',
|
|
||||||
array('tag' => $this->tag)
|
|
||||||
);
|
|
||||||
$this->showRssTimeline(
|
$this->showRssTimeline(
|
||||||
$this->notices,
|
$this->notices,
|
||||||
$title,
|
$title,
|
||||||
$link,
|
$link,
|
||||||
$subtitle,
|
$subtitle,
|
||||||
null,
|
null,
|
||||||
$sitelogo
|
$sitelogo,
|
||||||
|
$self
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case 'atom':
|
case 'atom':
|
||||||
@ -138,22 +146,8 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
|
|||||||
$atom->setLogo($logo);
|
$atom->setLogo($logo);
|
||||||
$atom->setUpdated('now');
|
$atom->setUpdated('now');
|
||||||
|
|
||||||
$atom->addLink(
|
$atom->addLink($link);
|
||||||
common_local_url(
|
$atom->setSelfLink($self);
|
||||||
'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->addEntryFromNotices($this->notices);
|
$atom->addEntryFromNotices($this->notices);
|
||||||
$this->raw($atom->getString());
|
$this->raw($atom->getString());
|
||||||
|
@ -1374,6 +1374,11 @@ class ApiAction extends Action
|
|||||||
$aargs['id'] = $id;
|
$aargs['id'] = $id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$tag = $this->arg('tag');
|
||||||
|
if (!empty($tag)) {
|
||||||
|
$aargs['tag'] = $tag;
|
||||||
|
}
|
||||||
|
|
||||||
parse_str($_SERVER['QUERY_STRING'], $params);
|
parse_str($_SERVER['QUERY_STRING'], $params);
|
||||||
$pstring = '';
|
$pstring = '';
|
||||||
if (!empty($params)) {
|
if (!empty($params)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user