You are here

function quiz_views_handler_argument_user_uid_nullable::query in Quiz 6.3

Same name and namespace in other branches
  1. 8.4 includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc \quiz_views_handler_argument_user_uid_nullable::query()
  2. 6.6 includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc \quiz_views_handler_argument_user_uid_nullable::query()
  3. 6.4 includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc \quiz_views_handler_argument_user_uid_nullable::query()
  4. 6.5 includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc \quiz_views_handler_argument_user_uid_nullable::query()
  5. 7.6 includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc \quiz_views_handler_argument_user_uid_nullable::query()
  6. 7 includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc \quiz_views_handler_argument_user_uid_nullable::query()
  7. 7.4 includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc \quiz_views_handler_argument_user_uid_nullable::query()

File

includes/views/handlers/quiz_views_handler_argument_user_uid_nullable.inc, line 28

Class

quiz_views_handler_argument_user_uid_nullable

Code

function query() {
  $this
    ->ensure_my_table();
  $operator = empty($this->options['not']) ? '=' : '!=';
  $where = "{$this->table_alias}.{$this->real_field} {$operator} %d";
  if ($this->options['allow_null']) {
    $group = $this->query
      ->set_where_group('AND', 'qnr_user');
    $where .= " OR {$this->table_alias}.{$this->real_field} IS NULL";
  }
  else {
    $group = 0;
  }

  // By adding the IS NULL, joins can properly inform us about quiz state
  $this->query
    ->add_where($group, $where, $this->argument);
}