diff options
Diffstat (limited to 'mod/groups/views')
6 files changed, 104 insertions, 14 deletions
| diff --git a/mod/groups/views/default/annotation/group_topic_post.php b/mod/groups/views/default/annotation/group_topic_post.php new file mode 100644 index 000000000..d2303aba8 --- /dev/null +++ b/mod/groups/views/default/annotation/group_topic_post.php @@ -0,0 +1,8 @@ +<?php +/** + * Discussion reply + */ + +$vars['delete_action'] = 'action/discussion/reply/delete'; + +echo elgg_view('annotation/default', $vars); diff --git a/mod/groups/views/default/discussion/replies.php b/mod/groups/views/default/discussion/replies.php new file mode 100644 index 000000000..2bfb6f0cd --- /dev/null +++ b/mod/groups/views/default/discussion/replies.php @@ -0,0 +1,28 @@ +<?php +/** + * List replies with optional add form + * + * @uses $vars['entity']        ElggEntity + * @uses $vars['show_add_form'] Display add form or not + */ + +$show_add_form = elgg_extract('show_add_form', $vars, true); + +echo '<div id="group-replies" class="mtl">'; + +$options = array( +	'guid' => $vars['entity']->getGUID(), +	'annotation_name' => 'group_topic_post', +); +$html = elgg_list_annotations($options); +if ($html) { +	echo '<h3>' . elgg_echo('group:replies') . '</h3>'; +	echo $html; +} + +if ($show_add_form) { +	$form_vars = array('class' => 'mtm'); +	echo elgg_view_form('discussion/reply/save', $form_vars, $vars); +} + +echo '</div>'; diff --git a/mod/groups/views/default/forms/discussion/reply/save.php b/mod/groups/views/default/forms/discussion/reply/save.php new file mode 100644 index 000000000..6281e941c --- /dev/null +++ b/mod/groups/views/default/forms/discussion/reply/save.php @@ -0,0 +1,22 @@ +<?php +/** + * Discussion topic reply form bofy + * + * @uses $vars['entity'] + */ + + +if (isset($vars['entity']) && elgg_is_logged_in()) { +?> +	<div> +		<label><?php echo elgg_echo("reply"); ?></label> +		<?php echo elgg_view('input/longtext', array('name' => 'group_topic_post')); ?> +	</div> +<?php +	echo elgg_view('input/submit', array('value' => elgg_echo('reply'))); + +	echo elgg_view('input/hidden', array( +		'name' => 'entity_guid', +		'value' => $vars['entity']->getGUID() +	)); +} diff --git a/mod/groups/views/default/groups/css.php b/mod/groups/views/default/groups/css.php index 5276e2bfa..545f9c9b3 100644 --- a/mod/groups/views/default/groups/css.php +++ b/mod/groups/views/default/groups/css.php @@ -22,7 +22,7 @@  	font-size: 85%;  } -.groups-latest-comment { +.groups-latest-reply {  	float: right;  } diff --git a/mod/groups/views/default/object/groupforumtopic.php b/mod/groups/views/default/object/groupforumtopic.php index 8a1daece8..b5efa0e6c 100644 --- a/mod/groups/views/default/object/groupforumtopic.php +++ b/mod/groups/views/default/object/groupforumtopic.php @@ -26,18 +26,22 @@ $poster_text = elgg_echo('groups:started', array($poster->name));  $tags = elgg_view('output/tags', array('tags' => $topic->tags));  $date = elgg_view_friendly_time($topic->time_created); -$comments_link = ''; -$comments_text = ''; -$num_comments = $topic->countComments(); -if ($num_comments != 0) { -	$last_comment = $topic->getAnnotations("generic_comment", 1, 0, "desc"); -	$commenter = $last_comment[0]->getOwnerEntity(); -	$comment_time = elgg_view_friendly_time($last_comment[0]->time_created); -	$comments_text = elgg_echo('groups:updated', array($commenter->name, $comment_time)); +$replies_link = ''; +$replies_text = ''; +$num_replies = elgg_get_annotations(array( +	'annotation_name' => 'group_topic_post', +	'guid' => $topic->getGUID(), +	'count' => true, +)); +if ($num_replies != 0) { +	$last_reply = $topic->getAnnotations('group_topic_post', 1, 0, 'desc'); +	$poster = $last_reply[0]->getOwnerEntity(); +	$reply_time = elgg_view_friendly_time($last_reply[0]->time_created); +	$reply_text = elgg_echo('groups:updated', array($poster->name, $reply_time)); -	$comments_link = elgg_view('output/url', array( -		'href' => $topic->getURL() . '#topic-comments', -		'text' => elgg_echo("comments") . " ($num_comments)", +	$replies_link = elgg_view('output/url', array( +		'href' => $topic->getURL() . '#group-replies', +		'text' => elgg_echo('group:replies') . " ($num_replies)",  	));  } @@ -52,7 +56,7 @@ if (elgg_in_context('widgets')) {  }  if ($full) { -	$subtitle = "$poster_text $date $comments_link"; +	$subtitle = "$poster_text $date $replies_link";  	$params = array(  		'entity' => $topic, @@ -75,7 +79,7 @@ HTML;  } else {  	// brief view -	$subtitle = "$poster_text $date $comments_link <span class=\"groups-latest-comment\">$comments_text</span>"; +	$subtitle = "$poster_text $date $replies_link <span class=\"groups-latest-reply\">$reply_text</span>";  	$params = array(  		'entity' => $topic, diff --git a/mod/groups/views/default/river/annotation/group_topic_post/reply.php b/mod/groups/views/default/river/annotation/group_topic_post/reply.php new file mode 100644 index 000000000..f0b7d03b8 --- /dev/null +++ b/mod/groups/views/default/river/annotation/group_topic_post/reply.php @@ -0,0 +1,28 @@ +<?php +/** + * Reply river view + */ +$object = $vars['item']->getObjectEntity(); +$reply = $vars['item']->getAnnotation(); + +$url = $object->getURL(); +$title = $object->title; +$params = array( +	'href' => $object->getURL(), +	'text' => $title, +); +$object_link = elgg_view('output/url', $params); + +$type = $object->getType(); +$subtype = $object->getSubtype(); + +echo elgg_echo('groups:river:reply') . ' '; +echo $object_link; + +if ($reply) { +	$excerpt = elgg_get_excerpt($reply->value); +	echo '<div class="elgg-river-content">'; +	echo $excerpt; +	echo '</div>'; +} + | 
