You are here

spaces_handler_filter_spaces_feature.inc in Spaces 6

File

includes/spaces_handler_filter_spaces_feature.inc
View source
<?php

/**
 * Filter to only show node types associated with current feature.
 */
class spaces_handler_filter_spaces_feature extends views_handler_filter {
  function query() {
    $feature = context_get('spaces', 'feature');
    if ($feature) {
      $features = spaces_features();
      $feature = $features[$feature];
      if (!empty($feature->node)) {
        $types = $feature->node;
        $placeholders = db_placeholders($types, 'varchar');
        if (!empty($this->relationship)) {
          $table = $this->relationship;
        }
        else {
          $table = $this->query
            ->ensure_table('node');
        }
        $this->query
          ->add_where($this->options['group'], "{$table}.type IN ({$placeholders})", $types);
      }
    }
  }

}

Classes

Namesort descending Description
spaces_handler_filter_spaces_feature Filter to only show node types associated with current feature.