From 538da56bb1d9acf787362fe0f34747118b00b261 Mon Sep 17 00:00:00 2001 From: cash Date: Sat, 12 Mar 2011 14:52:09 +0000 Subject: Refs #3085 added $vars to elgg_view_comments() git-svn-id: http://code.elgg.org/elgg/trunk@8658 36083f99-b078-4883-b0ff-0f9b5a30f544 --- engine/lib/views.php | 26 ++++++++++++-------------- views/default/page/elements/comments.php | 9 +++++++-- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/engine/lib/views.php b/engine/lib/views.php index 199f79dae..a66b7748b 100644 --- a/engine/lib/views.php +++ b/engine/lib/views.php @@ -1075,32 +1075,30 @@ function elgg_view_friendly_time($time) { * * @tip Plugins can override the output by registering a handler * for the comments, $entity_type hook. The handler is responsible - * for formatting the comments and add comment form. + * for formatting the comments and the add comment form. * * @param ElggEntity $entity The entity to view comments of - * @param bool $add_comment Include a form to add comments + * @param bool $add_comment Include a form to add comments? + * @param array $vars Variables to pass to comment view * - * @return string|false The HTML (etc) for the comments, or false on failure + * @return string|false Rendered comments or false on failure * @link http://docs.elgg.org/Entities/Comments * @link http://docs.elgg.org/Annotations/Comments */ -function elgg_view_comments($entity, $add_comment = true) { +function elgg_view_comments($entity, $add_comment = true, array $vars = array()) { if (!($entity instanceof ElggEntity)) { return false; } - $comments = elgg_trigger_plugin_hook('comments', $entity->getType(), array('entity' => $entity), false); - if ($comments) { - return $comments; - } else { - $params = array( - 'entity' => $entity, - 'show_add_form' => $add_comment, - 'id' => "{$entity->getSubtype()}-comments", - ); - $output = elgg_view('page/elements/comments', $params); + $vars['entity'] = $entity; + $vars['show_add_form'] = $add_comment; + $vars['class'] = elgg_extract('class', $vars, "{$entity->getSubtype()}-comments"); + $output = elgg_trigger_plugin_hook('comments', $entity->getType(), $vars, false); + if ($output) { return $output; + } else { + return elgg_view('page/elements/comments', $vars); } } diff --git a/views/default/page/elements/comments.php b/views/default/page/elements/comments.php index 3d44f5785..1b0082ee4 100644 --- a/views/default/page/elements/comments.php +++ b/views/default/page/elements/comments.php @@ -5,6 +5,7 @@ * @uses $vars['entity'] ElggEntity * @uses $vars['show_add_form'] Display add form or not * @uses $vars['id'] Optional id for the div + * @uses $vars['class'] Optional additional class for the div */ $show_add_form = elgg_extract('show_add_form', $vars, true); @@ -14,10 +15,15 @@ if (isset($vars['id'])) { $id = "id =\"{$vars['id']}\""; } +$class = 'elgg-comments'; +if (isset($vars['class'])) { + $class = "$class {$vars['class']}"; +} + // work around for deprecation code in elgg_view() unset($vars['internalid']); -echo "
"; +echo "
"; $options = array( 'guid' => $vars['entity']->getGUID(), @@ -28,7 +34,6 @@ if ($html) { echo '

Comments

'; echo $html; } -//echo strlen($html); if ($show_add_form) { $form_vars = array('name' => 'elgg_add_comment'); -- cgit v1.2.3