diff options
author | Evan Prodromou <git@evanprodromou.name> | 2009-01-23 08:58:31 +0100 |
---|---|---|
committer | Evan Prodromou <git@evanprodromou.name> | 2009-01-23 08:58:31 +0100 |
commit | a7c85bebd5be9ea019a8c80d74730d7eb28d4651 (patch) | |
tree | c3fdf9575a342624bc71aad1d439ae73594f558c /actions/tagrss.php | |
parent | 4873277b58941ae6ec16543f437f4267ccab5ac0 (diff) | |
parent | 7aa496cd8a939960eeaf79f3397f6fe94097e047 (diff) |
Merge branch 'master' of /var/www/mublog
Conflicts:
actions/api.php
actions/deletenotice.php
actions/recoverpassword.php
actions/remotesubscribe.php
actions/tag.php
actions/tagrss.php
actions/twitapiaccount.php
actions/twitapiusers.php
classes/Notice.php
classes/User.php
lib/common.php
lib/language.php
lib/subs.php
lib/twitterapi.php
lib/util.php
scripts/inbox_users.php
scripts/update_translations.php
Merged development trunk into laconica head. woohoo!
Diffstat (limited to 'actions/tagrss.php')
-rw-r--r-- | actions/tagrss.php | 58 |
1 files changed, 33 insertions, 25 deletions
diff --git a/actions/tagrss.php b/actions/tagrss.php index 737ac113d..b0227ab39 100644 --- a/actions/tagrss.php +++ b/actions/tagrss.php @@ -23,39 +23,47 @@ require_once(INSTALLDIR.'/lib/rssaction.php'); // Formatting of RSS handled by Rss10Action -class TagrssAction extends Rss10Action { +class TagrssAction extends Rss10Action +{ - function init() { - $tag = $this->trimmed('tag'); + function init() + { + $tag = $this->trimmed('tag'); + $this->tag = Notice_tag::staticGet('tag', $tag); - if (!isset($tag) || mb_strlen($tag) == 0) { - common_user_error(_('No tag.')); - return false; + if (!$this->tag) { + $this->clientError(_('No such tag.')); + return false; + } else { + return true; } + } - $this->tag = $tag; - return true; - } + function get_notices($limit=0) + { + $tag = $this->tag; - function get_notices($limit=0) { - $tag = $this->tag; + if (is_null($tag)) { + return null; + } - $notice = Notice_tag::getStream($tag, 0, ($limit == 0) ? NOTICES_PER_PAGE : $limit); + $notice = Notice_tag::getStream($tag->tag, 0, ($limit == 0) ? NOTICES_PER_PAGE : $limit); - while ($notice->fetch()) { - $notices[] = clone($notice); - } + while ($notice->fetch()) { + $notices[] = clone($notice); + } - return $notices; - } + return $notices; + } - function get_channel() { - $tag = $this->tag; + function get_channel() + { + $tag = $this->tag->tag; - $c = array('url' => common_local_url('tagrss', array('tag' => $tag)), - 'title' => $tag, - 'link' => common_local_url('tagrss', array('tag' => $tag)), - 'description' => sprintf(_('Microblog tagged with %s'), $tag)); - return $c; - } + $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)); + return $c; + } } |