diff options
author | Angie Byron <webchick@24967.no-reply.drupal.org> | 2009-01-31 16:19:29 +0000 |
---|---|---|
committer | Angie Byron <webchick@24967.no-reply.drupal.org> | 2009-01-31 16:19:29 +0000 |
commit | b1d7222c6b003490dda7f45a92fe80737ba1c129 (patch) | |
tree | 85b62485c3bb54248fa2d7725ad376884fd752fd | |
parent | 6cbf7424a0c40228ec06428ef201039bd1ffbe72 (diff) | |
download | brdo-b1d7222c6b003490dda7f45a92fe80737ba1c129.tar.gz brdo-b1d7222c6b003490dda7f45a92fe80737ba1c129.tar.bz2 |
#352337 by catch: Avoid pager query if there are no comments on a node.
-rw-r--r-- | modules/comment/comment.module | 8 | ||||
-rw-r--r-- | modules/comment/comment.pages.inc | 12 |
2 files changed, 10 insertions, 10 deletions
diff --git a/modules/comment/comment.module b/modules/comment/comment.module index a69fba641..4983ca7db 100644 --- a/modules/comment/comment.module +++ b/modules/comment/comment.module @@ -1078,10 +1078,12 @@ function comment_render($node, $cid = 0) { $output .= theme('comment_view', $comment, $node, $links); } } - // Only attempt to render comments if the node has been commented upon. - else { + // Only attempt to render comments if the node has visible comments. + // Unpublished comments are not included in $node->comment_count, so show + // comments unconditionally if the user is an administrator. + elseif ($node->comment_count || user_access('administer comments')) { - //TODO Convert to dynamic queries once the pager query is updated to the new DBTNG API. + // TODO: Convert to dynamic queries once the pager query is updated to the new DBTNG API. // Multiple comment view. $query_count = 'SELECT COUNT(*) FROM {comment} c WHERE c.nid = %d'; diff --git a/modules/comment/comment.pages.inc b/modules/comment/comment.pages.inc index 12d30cec8..dd88ad514 100644 --- a/modules/comment/comment.pages.inc +++ b/modules/comment/comment.pages.inc @@ -124,15 +124,13 @@ function comment_reply($node, $pid = NULL) { */ function comment_approve($cid) { // Load the comment whose cid = $cid - if ($comment = comment_load($cid)) { - $operations = comment_operations('publish'); - $query = $operations['publish'][1]; - $query - ->condition('cid', $cid ) - ->execute(); + if ($comment = (array) comment_load($cid)) { + $comment['status'] = COMMENT_PUBLISHED; + $comment['comment_format'] = $comment['format']; + comment_save($comment); drupal_set_message(t('Comment approved.')); - drupal_goto("node/$comment->nid"); + drupal_goto('node/' . $comment['nid']); } else { drupal_set_message(t('The comment you are approving does not exist.'), 'error'); |