1.20.x comment.module comment_get_recent($number = 10)

Finds the most recent comments that are available to the current user.

Parameters

integer $number: (optional) The maximum number of comments to find. Defaults to 10.

Return value

An array of comment objects or an empty array if there are no recent: comments visible to the current user.

File

modules/comment/comment.module, line 521
Enables users to comment on published content.

Code

function comment_get_recent($number = 10) {
  $query = db_select('comment', 'c');
  $query->innerJoin('node', 'n', 'n.nid = c.nid');
  $query->addTag('node_access');
  $comments = $query
  ->fields('c')
    ->condition('c.status', COMMENT_PUBLISHED)
    ->condition('n.status', NODE_PUBLISHED)
    ->orderBy('c.created', 'DESC')
    // Additionally order by cid to ensure that comments with the same timestamp
    // are returned in the exact order posted.
    ->orderBy('c.cid', 'DESC')
    ->range(0, $number)
    ->execute()
    ->fetchAll();

  return $comments ? $comments : array();
}