You are here

public function views_handler_relationship_groupwise_max::alter_subquery_condition in Views (for Drupal 7) 7.3

Recursive helper to add a namespace to conditions.

Similar to _views_query_tag_alter_condition().

(Though why is the condition we get in a simple query 3 levels deep???)

1 call to views_handler_relationship_groupwise_max::alter_subquery_condition()
views_handler_relationship_groupwise_max::left_query in handlers/views_handler_relationship_groupwise_max.inc
Generate a subquery given the user options, as set in the options. These are passed in rather than picked up from the object because we generate the subquery when the options are saved, rather than when the view is run. This saves considerable time.

File

handlers/views_handler_relationship_groupwise_max.inc, line 322
Definition of views_handler_relationship_groupwise_max.

Class

views_handler_relationship_groupwise_max
Relationship handler that allows a groupwise maximum of the linked in table.

Code

public function alter_subquery_condition(QueryAlterableInterface $query, &$conditions) {
  foreach ($conditions as $condition_id => &$condition) {

    // Skip the #conjunction element.
    if (is_numeric($condition_id)) {
      if (is_string($condition['field'])) {
        $condition['field'] = $this
          ->condition_namespace($condition['field']);
      }
      elseif (is_object($condition['field'])) {
        $sub_conditions =& $condition['field']
          ->conditions();
        $this
          ->alter_subquery_condition($query, $sub_conditions);
      }
    }
  }
}