function biblio_search_query in Bibliography Module 7
Same name and namespace in other branches
- 7.2 includes/biblio.pages.inc \biblio_search_query()
1 call to biblio_search_query()
- biblio_build_query in includes/biblio.pages.inc
- Biblio_db_search builds the SQL query which will be used to
select and order "biblio" type nodes. The query results are
then passed to biblio_show_results for output.
File
- includes/biblio.pages.inc, line 958
- Copyright (C) 2006-2011 Ron Jerome.
Code
function biblio_search_query($keys) {
if (!empty($keys)) {
$query = db_select('search_index', 'i', array(
'target' => 'slave',
))
->extend('SearchQuery');
$query
->join('node', 'n', 'n.nid = i.sid');
$query
->condition('n.status', 1)
->addTag('node_access')
->searchExpression($keys, 'node');
$query
->setOption('type', 'n.type');
$query
->setOption('language', 'n.language');
if ($query
->setOption('term', 'ti.tid')) {
$query
->join('taxonomy_index', 'ti', 'n.nid = ti.nid');
}
if (!$query
->executeFirstPass()) {
return array();
}
_node_rankings($query);
$find = $query
->execute();
$nids = array();
foreach ($find as $item) {
$nids[] = $item->sid;
}
return $nids;
}
}