function casetracker_views_handler_field_case_count::pre_render in Case Tracker 6
Same name and namespace in other branches
- 7 includes/casetracker_views_handler_field_case_count.inc \casetracker_views_handler_field_case_count::pre_render()
File
- includes/
casetracker_views_handler_field_case_count.inc, line 50
Class
- casetracker_views_handler_field_case_count
- Field handler to show case counts for projects.
Code
function pre_render($values) {
$nids = array();
foreach ($values as $row) {
$nids[] = $row->nid;
}
if (!empty($nids)) {
$this->counts = array();
$placeholders = db_placeholders($nids, 'int');
// Add a filter by realm/type if option is set.
$where = '';
if (!empty($this->options['type'])) {
$filter = explode('-', $this->options['type']);
$where = "AND case_{$filter[0]}_id = %d";
$nids[] = $filter[1];
}
$result = db_query("SELECT count(c.nid) AS count, c.pid FROM {casetracker_case} c JOIN {node} n ON c.nid = n.nid AND c.vid = n.vid WHERE c.pid IN ({$placeholders}) {$where} GROUP BY c.pid", $nids);
while ($row = db_fetch_object($result)) {
$this->counts[$row->pid] = $row->count;
}
}
}