You are here

function featured_content_get_nodes in Featured Content 7.2

Same name and namespace in other branches
  1. 6.2 featured_content.module \featured_content_get_nodes()
  2. 6 featured_content.module \featured_content_get_nodes()
  3. 7 featured_content.module \featured_content_get_nodes()

Gets nodes from nids.

1 call to featured_content_get_nodes()
featured_content_block_view in ./featured_content.module
Implements hook_block_view().

File

./featured_content.module, line 2069
Featured Content module for created related & featured content blocks.

Code

function featured_content_get_nodes($nids, $sort) {
  if (!empty($nids)) {
    $nodes = array();
    $query = db_select('node', 'n');
    $query
      ->fields('n', array(
      'nid',
      'title',
      'created',
      'type',
    ));

    // Use node_counter if sorting by popularity and counts are available.
    $totalcount = FALSE;
    if (($sort == 'popular_desc' || $sort == 'popular_asc') && featured_content_node_statistics_enabled()) {
      $totalcount = TRUE;
      $query
        ->fields('nc', array(
        'totalcount',
      ));
      $query
        ->join('node_counter', 'nc', 'n.nid = nc.nid');
    }
    $query
      ->condition('n.nid', $nids);
    $query
      ->condition('n.status', 0, '<>');
    $results = $query
      ->execute();
    foreach ($results as $node) {
      if ($totalcount) {
        $node->totalcount = 1;

        // Treat all nodes equally for sort purposes.
      }
      $nodes[$node->nid] = $node;
    }
    return $nodes;
  }
}