summaryrefslogtreecommitdiff
path: root/lib/stream.php
diff options
context:
space:
mode:
authormatthew.gregg <matthew.gregg@gmail.com>2008-06-22 23:08:37 -0400
committermatthew.gregg <matthew.gregg@gmail.com>2008-06-22 23:08:37 -0400
commit0b21ac3dd79d2bf39341a4f0ff3566def8282eae (patch)
tree61ed08b832cda8e104dee168b300133c90540231 /lib/stream.php
parent6dbf7beb0bfce429f1c39b64e85cdac8229cb72d (diff)
First pass at replies support http://laconi.ca/PITS/00080
Doesn't handle a reply to a user that has never updated. darcs-hash:20080623030837-982e4-532ccd8899fd8be00575f8840da0defb44cd56f8.gz
Diffstat (limited to 'lib/stream.php')
-rw-r--r--lib/stream.php42
1 files changed, 42 insertions, 0 deletions
diff --git a/lib/stream.php b/lib/stream.php
index a37e4dfa3..6bba0eace 100644
--- a/lib/stream.php
+++ b/lib/stream.php
@@ -20,6 +20,7 @@
if (!defined('LACONICA')) { exit(1); }
define('NOTICES_PER_PAGE', 20);
+define('REPLIES_PER_PAGE', 20);
class StreamAction extends Action {
@@ -44,6 +45,11 @@ class StreamAction extends Action {
_t('Personal'),
(($user && $user->fullname) ? $user->fullname : $nickname) . _t(' and friends'),
$action == 'all');
+ common_menu_item(common_local_url('replies', array('nickname' =>
+ $nickname)),
+ _t('Replies'),
+ ($user && $user->fullname) ? $user->fullname : $nickname,
+ $action == 'replies');
common_menu_item(common_local_url('showstream', array('nickname' =>
$nickname)),
_t('Profile'),
@@ -84,4 +90,40 @@ class StreamAction extends Action {
common_element_end('p');
common_element_end('li');
}
+
+ function show_reply($notice, $replied_id) {
+ global $config;
+ $profile = $notice->getProfile();
+ # XXX: RDFa
+ common_element_start('li', array('class' => 'notice_single',
+ 'id' => 'notice-' . $notice->id));
+ $avatar = $profile->getAvatar(AVATAR_STREAM_SIZE);
+ common_element_start('a', array('href' => $profile->profileurl));
+ common_element('img', array('src' => ($avatar) ? $avatar->url : common_default_avatar(AVATAR_STREAM_SIZE),
+ 'class' => 'avatar stream',
+ 'width' => AVATAR_STREAM_SIZE,
+ 'height' => AVATAR_STREAM_SIZE,
+ 'alt' =>
+ ($profile->fullname) ? $profile->fullname :
+ $profile->nickname));
+ common_element_end('a');
+ common_element('a', array('href' => $profile->profileurl,
+ 'class' => 'nickname'),
+ $profile->nickname);
+ # FIXME: URL, image, video, audio
+ common_element_start('p', array('class' => 'content'));
+ common_raw(common_render_content($notice->content, $notice));
+ common_element_end('p');
+ $replyurl = common_local_url('shownotice', array('notice' => $replied_id));
+ $noticeurl = common_local_url('shownotice', array('notice' => $notice->id));
+ common_element_start('p', 'time');
+ common_element('a', array('class' => 'notice',
+ 'href' => $noticeurl),
+ common_date_string($notice->created));
+ common_element('a', array('class' => 'notice',
+ 'href' => $replyurl),
+ " in reply to ".$profile->nickname );
+ common_element_end('p');
+ common_element_end('li');
+ }
}