You are here

function casetracker_views_handler_filter_project::query in Case Tracker 6

Same name and namespace in other branches
  1. 7 includes/casetracker_views_handler_filter_project.inc \casetracker_views_handler_filter_project::query()

File

includes/casetracker_views_handler_filter_project.inc, line 6

Class

casetracker_views_handler_filter_project
Filter to only show casetracker cases.

Code

function query() {
  if ($project_types = variable_get('casetracker_project_node_types', array(
    'casetracker_basic_project',
  ))) {

    // Weed out disabled types
    foreach ($project_types as $type => $enabled) {
      if (empty($enabled)) {
        unset($project_types[$type]);
      }
    }
    $placeholders = db_placeholders($project_types, 'varchar');
    $table = $this->query
      ->ensure_table('node');
    $this->query
      ->add_where($this->options['group'], "{$table}.type IN ({$placeholders})", $project_types);
  }
  else {
    $this->query
      ->add_where($this->options['group'], "FALSE");
    drupal_set_message(t('You have no node types which are acting as projects.', 'error'));
  }
}