diff options
| author | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-03-06 01:39:23 +0000 | 
|---|---|---|
| committer | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-03-06 01:39:23 +0000 | 
| commit | 1d59e5fc4bcc10151831456436019aef90de2bd3 (patch) | |
| tree | 096ab8fc2387d57b49a9c8bd65ac2581da068d7c | |
| parent | 8ca2f72d09e99c372ea21a4fe4112da6c4a1312c (diff) | |
| download | elgg-1d59e5fc4bcc10151831456436019aef90de2bd3.tar.gz elgg-1d59e5fc4bcc10151831456436019aef90de2bd3.tar.bz2 | |
Refs #2679 can comment on discussion forums in river now
git-svn-id: http://code.elgg.org/elgg/trunk@8610 36083f99-b078-4883-b0ff-0f9b5a30f544
| -rw-r--r-- | engine/lib/river.php | 3 | ||||
| -rw-r--r-- | mod/groups/start.php | 30 | ||||
| -rw-r--r-- | mod/groups/views/default/forms/discussion/reply/save.php | 15 | ||||
| -rw-r--r-- | mod/groups/views/default/river/object/groupforumtopic/create.php | 7 | ||||
| -rw-r--r-- | views/default/river/item/controls.php | 5 | 
5 files changed, 55 insertions, 5 deletions
| diff --git a/engine/lib/river.php b/engine/lib/river.php index 656b496b5..c934e9932 100644 --- a/engine/lib/river.php +++ b/engine/lib/river.php @@ -521,6 +521,7 @@ function elgg_river_add_menu_items($hook, $type, $return, $params) {  					'href' => "#comments-add-$object->guid",  					'text' => elgg_echo('generic_comments:text'),  					'class' => "elgg-toggler", +					'priority' => 50,  				);  				$return[] = ElggMenuItem::factory($options);  			} @@ -534,6 +535,7 @@ function elgg_river_add_menu_items($hook, $type, $return, $params) {  						'href' => $url,  						'text' => elgg_echo('likes:likethis'),  						'is_action' => true, +						'priority' => 100,  					);  				} else {  					$likes = elgg_get_annotations(array( @@ -547,6 +549,7 @@ function elgg_river_add_menu_items($hook, $type, $return, $params) {  						'href' => $url,  						'text' => elgg_echo('likes:remove'),  						'is_action' => true, +						'priority' => 100,  					);  				}  				$return[] = ElggMenuItem::factory($options); diff --git a/mod/groups/start.php b/mod/groups/start.php index d83ff467e..08c0d1966 100644 --- a/mod/groups/start.php +++ b/mod/groups/start.php @@ -543,6 +543,9 @@ function discussion_init() {  	// Register for search.  	elgg_register_entity_type('object', 'groupforumtopic'); +	// because replies are not comments, need of our menu item +	elgg_register_plugin_hook_handler('register', 'menu:river', 'discussion_add_to_river_menu'); +  	// add the forum tool option  	add_group_tool_option('forum', elgg_echo('groups:enableforum'), true);  	elgg_extend_view('groups/tool_latest', 'discussion/group_module'); @@ -625,6 +628,33 @@ function discussion_owner_block_menu($hook, $type, $return, $params) {  }  /** + * Add the reply button for the river + */ +function discussion_add_to_river_menu($hook, $type, $return, $params) { +	if (elgg_is_logged_in()) { +		$item = $params['item']; +		$object = $item->getObjectEntity(); +		if (elgg_instanceof($object, 'object', 'groupforumtopic')) { +			if ($item->annotation_id == 0) { +				$group = $object->getContainerEntity(); +				if ($group->isMember() || elgg_is_admin_logged_in()) { +					$options = array( +						'name' => 'reply', +						'href' => "#groups-reply-$object->guid", +						'text' => elgg_echo('reply'), +						'class' => "elgg-toggler", +						'priority' => 50, +					); +					$return[] = ElggMenuItem::factory($options); +				} +			} +		} +	} + +	return $return; +} + +/**   * Event handler for group forum posts   *   */ diff --git a/mod/groups/views/default/forms/discussion/reply/save.php b/mod/groups/views/default/forms/discussion/reply/save.php index 6281e941c..be258b8fe 100644 --- a/mod/groups/views/default/forms/discussion/reply/save.php +++ b/mod/groups/views/default/forms/discussion/reply/save.php @@ -2,21 +2,28 @@  /**   * Discussion topic reply form bofy   * - * @uses $vars['entity'] + * @uses $vars['entity'] A discussion topic object + * @uses $vars['inline'] Display a shortened form?   */  if (isset($vars['entity']) && elgg_is_logged_in()) { +	$inline = elgg_extract('inline', $vars, false); + +	if ($inline) { +		echo elgg_view('input/text', array('name' => 'group_topic_post')); +		echo elgg_view('input/submit', array('value' => elgg_echo('reply'))); +	} else {  ?>  	<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/submit', array('value' => elgg_echo('reply'))); +	}  	echo elgg_view('input/hidden', array(  		'name' => 'entity_guid', -		'value' => $vars['entity']->getGUID() +		'value' => $vars['entity']->getGUID(),  	));  } diff --git a/mod/groups/views/default/river/object/groupforumtopic/create.php b/mod/groups/views/default/river/object/groupforumtopic/create.php index 1ca871b58..2c914c3f8 100644 --- a/mod/groups/views/default/river/object/groupforumtopic/create.php +++ b/mod/groups/views/default/river/object/groupforumtopic/create.php @@ -33,3 +33,10 @@ if ($excerpt) {  	echo $excerpt;  	echo '</div>';  } + +if (elgg_is_logged_in() && $container->isMember(elgg_get_logged_in_user_entity())) { +	// inline comment form +	echo elgg_view_form('discussion/reply/save', array( +		'id' => "groups-reply-{$object->getGUID()}", +	), array('entity' => $object, 'inline' => true)); +} diff --git a/views/default/river/item/controls.php b/views/default/river/item/controls.php index d3f8c6fc0..188d01b5a 100644 --- a/views/default/river/item/controls.php +++ b/views/default/river/item/controls.php @@ -5,4 +5,7 @@   * @uses $vars['item']   */ -echo elgg_view_menu('river', array('item' => $vars['item'])); +echo elgg_view_menu('river', array( +	'item' => $vars['item'], +	'sort_by' => 'priority', +)); | 
