X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Frepliesrss.php;h=985318bf168794943b1d1cc5216b21279d502f23;hb=da532bae9131b6dec8f5c0d67ce77c4ad1736f7d;hp=923ed34f86b8166382fbdce5841ad010b1a6ef1f;hpb=f2543d17975c100404ec3ecc00fa1ce39a4b62d6;p=quix0rs-gnu-social.git diff --git a/actions/repliesrss.php b/actions/repliesrss.php index 923ed34f86..985318bf16 100644 --- a/actions/repliesrss.php +++ b/actions/repliesrss.php @@ -23,73 +23,68 @@ require_once(INSTALLDIR.'/lib/rssaction.php'); // Formatting of RSS handled by Rss10Action -class RepliesrssAction extends Rss10Action { +class RepliesrssAction extends Rss10Action +{ - var $user = NULL; + var $user = null; - function init() { - $nickname = $this->trimmed('nickname'); - $this->user = User::staticGet('nickname', $nickname); - - if (!$this->user) { - common_user_error(_t('No such nickname.')); - return false; - } else { - return true; - } - } - - function get_notices($limit=0) { - - $user = $this->user; - $notices = array(); + function prepare($args) + { + parent::prepare($args); + $nickname = $this->trimmed('nickname'); + $this->user = User::staticGet('nickname', $nickname); - $reply = new Reply(); - $reply->profile_id = $this->user->id; - $reply->orderBy('modified DESC'); - if ($limit) { - $reply->limit(0, $limit); - } - - $cnt = $reply->find(); + if (!$this->user) { + $this->clientError(_('No such user.')); + return false; + } else { + return true; + } + } - if ($cnt > 0) { - for ($i = 0; $i < min($cnt, NOTICES_PER_PAGE); $i++) { - if ($reply->fetch()) { - $notice = new Notice(); - $notice->id = $reply->notice_id; - $result = $notice->find(true); - if (!$result) { - continue; - } - $notices[] = clone($notice); - } else { - // shouldn't happen! - break; - } - } - } - - return $notices; - } - - function get_channel() { - $user = $this->user; - $c = array('url' => common_local_url('repliesrss', - array('nickname' => - $user->nickname)), - 'title' => _t("Replies to ") . $profile->nickname, - 'link' => common_local_url('replies', - array('nickname' => - $user->nickname)), - 'description' => _t('Feed for replies to ') . $user->nickname); - return $c; - } - - function get_image() { - $user = $this->user; - $profile = $user->getProfile(); - $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); - return ($avatar) ? $avatar->url : NULL; - } -} \ No newline at end of file + function getNotices($limit=0) + { + + $user = $this->user; + + $notice = $user->getReplies(0, ($limit == 0) ? 48 : $limit); + + $notices = array(); + + while ($notice->fetch()) { + $notices[] = clone($notice); + } + + return $notices; + } + + function getChannel() + { + $user = $this->user; + $c = array('url' => common_local_url('repliesrss', + array('nickname' => + $user->nickname)), + 'title' => sprintf(_("Replies to %s"), $user->nickname), + 'link' => common_local_url('replies', + array('nickname' => + $user->nickname)), + 'description' => sprintf(_('Feed for replies to %s'), $user->nickname)); + return $c; + } + + function getImage() + { + $user = $this->user; + $profile = $user->getProfile(); + if (!$profile) { + return null; + } + $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); + return ($avatar) ? $avatar->url : null; + } + + function isReadOnly() + { + return true; + } +}