You are here

function biblio_load_keywords_multiple in Bibliography Module 7.2

Same name and namespace in other branches
  1. 7 includes/biblio.keywords.inc \biblio_load_keywords_multiple()
2 calls to biblio_load_keywords_multiple()
biblio_load_keywords in includes/biblio.keywords.inc
biblio_load_old in ./biblio.module
Implementation of hook_load().

File

includes/biblio.keywords.inc, line 70

Code

function biblio_load_keywords_multiple($vids = array()) {
  $keywords = array();
  if (empty($vids)) {
    return $keywords;
  }
  $query = db_select('biblio_keyword', 'bk');
  $query
    ->innerJoin('biblio_keyword_data', 'bkd', 'bk.kid = bkd.kid');
  $query
    ->addField('bk', 'vid');
  $query
    ->fields('bkd', array(
    'kid',
    'word',
  ));
  $query
    ->orderby('bk.vid');
  $query
    ->orderby('bkd.word');
  if (count($vids) == 1) {
    $query
      ->condition('bk.vid', $vids[0]);
  }
  else {
    $query
      ->condition('bk.vid', $vids, 'IN');
  }
  $query
    ->addMetaData('base_table', 'biblio_keyword');
  $query
    ->addTag('node_access');
  $result = $query
    ->execute();
  foreach ($result as $keyword) {
    $keywords[$keyword->vid][$keyword->kid] = $keyword->word;
  }
  return $keywords;
}