X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Frepliesrss.php;h=76aae21adb994652a0fd16e8bbc090aeb95ccea3;hb=d8d9edfc990a20f67421e40a7d3055a58697a002;hp=3157f0e1d1d81d570f4dec290b4a764946b1b5ad;hpb=4d65b99c68fee83fe461b9d8d6db86a844f2a431;p=quix0rs-gnu-social.git diff --git a/actions/repliesrss.php b/actions/repliesrss.php index 3157f0e1d1..76aae21adb 100644 --- a/actions/repliesrss.php +++ b/actions/repliesrss.php @@ -1,7 +1,7 @@ . */ -if (!defined('LACONICA')) { exit(1); } +if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } 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); + function prepare($args) + { + parent::prepare($args); + $nickname = $this->trimmed('nickname'); + $this->user = User::staticGet('nickname', $nickname); - if (!$this->user) { - common_user_error(_('No such nickname.')); - return false; - } else { - return true; - } - } + if (!$this->user) { + $this->clientError(_('No such user.')); + return false; + } else { + $this->notices = $this->getNotices($this->limit); + return true; + } + } - function get_notices($limit=0) { + function getNotices($limit=0) + { - $user = $this->user; - $notices = array(); + $user = $this->user; - $reply = new Reply(); - $reply->profile_id = $user->id; - $reply->orderBy('modified DESC'); - if ($limit) { - $reply->limit(0, $limit); - } + $notice = $user->getReplies(0, ($limit == 0) ? 48 : $limit); - $cnt = $reply->find(); + $notices = array(); + + while ($notice->fetch()) { + $notices[] = clone($notice); + } - if ($cnt) { - while ($reply->fetch()) { - $notice = new Notice(); - $notice->id = $reply->notice_id; - $result = $notice->find(true); - if (!$result) { - continue; - } - $notices[] = clone($notice); - } - } + return $notices; + } - 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(_('Replies to %1$s on %2$s!'), + $user->nickname, common_config('site', 'name'))); + return $c; + } - function get_channel() { - $user = $this->user; - $c = array('url' => common_local_url('repliesrss', - array('nickname' => - $user->nickname)), - 'title' => sprintf(_("Replies to %s"), $profile->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 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 isReadOnly($args) + { + return true; + } +}