X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Fuserrss.php;h=fa6d588cdf4358f7c2f99f37853bb10b7e3de8b7;hb=82b0927f5838f3c12816e03712df9460a9f77b72;hp=1e9fe121f0be78719c9947f88eb13b4d20a1e68e;hpb=02877224b20f87af304553f739b69544d7ac4cfa;p=quix0rs-gnu-social.git diff --git a/actions/userrss.php b/actions/userrss.php index 1e9fe121f0..fa6d588cdf 100644 --- a/actions/userrss.php +++ b/actions/userrss.php @@ -1,7 +1,7 @@ . */ -if (!defined('LACONICA')) { exit(1); } +if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } require_once(INSTALLDIR.'/lib/rssaction.php'); @@ -25,33 +25,55 @@ require_once(INSTALLDIR.'/lib/rssaction.php'); class UserrssAction extends Rss10Action { - var $user = null; + var $tag = null; - function init() + function prepare($args) { - $nickname = $this->trimmed('nickname'); + parent::prepare($args); + $nickname = $this->trimmed('nickname'); $this->user = User::staticGet('nickname', $nickname); + $this->tag = $this->trimmed('tag'); if (!$this->user) { - common_user_error(_('No such user.')); + $this->clientError(_('No such user.')); return false; } else { return true; } } - function get_notices($limit=0) + function getTaggedNotices($tag = null, $limit=0) + { + $user = $this->user; + + if (is_null($user)) { + return null; + } + + $notice = $user->getTaggedNotices(0, ($limit == 0) ? NOTICES_PER_PAGE : $limit, 0, 0, null, $tag); + + $notices = array(); + while ($notice->fetch()) { + $notices[] = clone($notice); + } + + return $notices; + } + + + function getNotices($limit=0) { $user = $this->user; - + if (is_null($user)) { return null; } - + $notice = $user->getNotices(0, ($limit == 0) ? NOTICES_PER_PAGE : $limit); - + + $notices = array(); while ($notice->fetch()) { $notices[] = clone($notice); } @@ -59,26 +81,27 @@ class UserrssAction extends Rss10Action return $notices; } - function get_channel() + function getChannel() { $user = $this->user; $profile = $user->getProfile(); $c = array('url' => common_local_url('userrss', array('nickname' => $user->nickname)), - 'title' => $user->nickname, + 'title' => sprintf(_('%s timeline'), $user->nickname), 'link' => $profile->profileurl, - 'description' => sprintf(_('Microblog by %s'), $user->nickname)); + 'description' => sprintf(_('Updates from %1$s on %2$s!'), + $user->nickname, common_config('site', 'name'))); return $c; } - function get_image() + function getImage() { $user = $this->user; $profile = $user->getProfile(); if (!$profile) { common_log_db_error($user, 'SELECT', __FILE__); - $this->server_error(_('User without matching profile')); + $this->serverError(_('User without matching profile')); return null; } $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); @@ -86,11 +109,16 @@ class UserrssAction extends Rss10Action } # override parent to add X-SUP-ID URL - - function init_rss($limit=0) + + function initRss($limit=0) { - $url = common_local_url('sup', null, $this->user->id); + $url = common_local_url('sup', null, null, $this->user->id); header('X-SUP-ID: '.$url); - parent::init_rss($limit); + parent::initRss($limit); + } + + function isReadOnly($args) + { + return true; } -} \ No newline at end of file +}