aboutsummaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rw-r--r--engine/lib/views.php26
1 files changed, 12 insertions, 14 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);
}
}