You are here

views_contextual_filters_or.module in Views Contextual Filters OR 7

Same filename and directory in other branches
  1. 8 views_contextual_filters_or.module

Primarily Drupal hooks to manipulate Views Contextual Filters OR.

This is the main module file for Views Contextual Filters OR.

File

views_contextual_filters_or.module
View source
<?php

/**
 * @file
 * Primarily Drupal hooks to manipulate Views Contextual Filters OR.
 *
 * This is the main module file for Views Contextual Filters OR.
 */

/**
 * Implements hook_views_api().
 */
function views_contextual_filters_or_views_api() {
  return array(
    'api' => 3,
  );
}

/**
 * Implements hook_views_preview_info_alter().
 */
function views_contextual_filters_or_views_preview_info_alter(&$rows, $view) {
  $show_query = variable_get('views_ui_show_sql_query', FALSE);
  $query = $view->build_info['query'];
  if (get_class($view->query) == 'views_contextual_filters_or_query' && $show_query) {
    $quoted = $query
      ->getArguments();
    $connection = Database::getConnection();
    foreach ($quoted as $key => $val) {
      if (is_array($val)) {
        $quoted[$key] = implode(', ', array_map(array(
          $connection,
          'quote',
        ), $val));
      }
      else {
        $quoted[$key] = $connection
          ->quote($val);
      }
    }
    $rows['query'][0] = array(
      '<strong>' . t('Query') . '</strong>',
      '<pre>' . check_plain(strtr($query, $quoted)) . '</pre>',
    );
  }
}