X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Ftagrss.php;h=0d4d68ffba1c4c7594ab12b90a75eb6b0c38ac52;hb=792b62874e13214dc12480acd2cf4a40b3292d79;hp=83cf3afe2f45b7aa594adb248291117dd4d87908;hpb=5ff8d8d447f306f4ad654d56b47cc6f740321c38;p=quix0rs-gnu-social.git diff --git a/actions/tagrss.php b/actions/tagrss.php index 83cf3afe2f..0d4d68ffba 100644 --- a/actions/tagrss.php +++ b/actions/tagrss.php @@ -1,7 +1,7 @@ . */ -if (!defined('LACONICA')) { exit(1); } - -require_once(INSTALLDIR.'/lib/rssaction.php'); +if (!defined('GNUSOCIAL')) { exit(1); } // Formatting of RSS handled by Rss10Action class TagrssAction extends Rss10Action { - var $tag; + protected $tag; - function prepare($args) { - parent::prepare($args); + protected function doStreamPreparation() + { $tag = common_canonical_tag($this->trimmed('tag')); - $this->tag = Notice_tag::staticGet('tag', $tag); - if (!$this->tag) { + $this->tag = Notice_tag::getKV('tag', $tag); + if (!$this->tag instanceof Notice_tag) { + // TRANS: Client error when requesting a tag feed for a non-existing tag. $this->clientError(_('No such tag.')); - return false; - } else { - return true; } } - function getNotices($limit=0) + protected function getNotices() { - $tag = $this->tag; - - if (is_null($tag)) { - return null; - } - - $notice = Notice_tag::getStream($tag->tag, 0, ($limit == 0) ? NOTICES_PER_PAGE : $limit); - while ($notice->fetch()) { - $notices[] = clone($notice); - } - - return $notices; + $stream = Notice_tag::getStream($this->tag->tag)->getNotices(0, $this->limit); + return $stream->fetchAll(); } function getChannel() @@ -61,7 +47,10 @@ class TagrssAction extends Rss10Action $c = array('url' => common_local_url('tagrss', array('tag' => $tagname)), 'title' => $tagname, 'link' => common_local_url('tagrss', array('tag' => $tagname)), - 'description' => sprintf(_('Microblog tagged with %s'), $tagname)); + // TRANS: Tag feed description. + // TRANS: %1$s is the tag name, %2$s is the StatusNet sitename. + 'description' => sprintf(_('Updates tagged with %1$s on %2$s!'), + $tagname, common_config('site', 'name'))); return $c; }