I have a view with two contextual filters. Both filters accept a node id as the argument. The first filter accepts only nodes of content type A and the second filter only accepts nodes of content type B. Both filters have validation for the content type and when validation fails, all values should be returned. When I set both arguments to a node id of type A, the view correctly returns nodes of type A, but when I set both arguments to a node id of type B, all results are returned. I expected the view to only return nodes of type B.

I'm including an export of the view FYI.

<?php
$view = new view();
$view->name = 'quotes';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'Quotes';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['use_more_text'] = 'meer';
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['submit_button'] = 'Toepassen';
$handler->display->display_options['exposed_form']['options']['reset_button_label'] = 'Opnieuw instellen';
$handler->display->display_options['exposed_form']['options']['exposed_sorts_label'] = 'Sorteren op';
$handler->display->display_options['exposed_form']['options']['sort_asc_label'] = 'Oplopend';
$handler->display->display_options['exposed_form']['options']['sort_desc_label'] = 'Aflopend';
$handler->display->display_options['pager']['type'] = 'some';
$handler->display->display_options['pager']['options']['items_per_page'] = '4';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'node';
$handler->display->display_options['row_options']['view_mode'] = 'block';
$handler->display->display_options['row_options']['links'] = FALSE;
/* Relatie: Inhoud: Taxonomy terms on node */
$handler->display->display_options['relationships']['term_node_tid']['id'] = 'term_node_tid';
$handler->display->display_options['relationships']['term_node_tid']['table'] = 'node';
$handler->display->display_options['relationships']['term_node_tid']['field'] = 'term_node_tid';
$handler->display->display_options['relationships']['term_node_tid']['vocabularies'] = array(
  'activiteiten' => 'activiteiten',
  'tags' => 'tags',
  'studiedomeinen' => 0,
);
/* Relatie: Taxonomieterm: Content with term */
$handler->display->display_options['relationships']['nid']['id'] = 'nid';
$handler->display->display_options['relationships']['nid']['table'] = 'taxonomy_index';
$handler->display->display_options['relationships']['nid']['field'] = 'nid';
$handler->display->display_options['relationships']['nid']['relationship'] = 'term_node_tid';
/* Relatie: Referentie naar een entiteit: Gerefereerde entiteit */
$handler->display->display_options['relationships']['field_studierichting_target_id']['id'] = 'field_studierichting_target_id';
$handler->display->display_options['relationships']['field_studierichting_target_id']['table'] = 'field_data_field_studierichting';
$handler->display->display_options['relationships']['field_studierichting_target_id']['field'] = 'field_studierichting_target_id';
$handler->display->display_options['relationships']['field_studierichting_target_id']['label'] = 'Studierichting';
/* Veld: Inhoud: Titel */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
/* Sort criterion: Draggableviews: Gewicht */
$handler->display->display_options['sorts']['weight']['id'] = 'weight';
$handler->display->display_options['sorts']['weight']['table'] = 'draggableviews_structure';
$handler->display->display_options['sorts']['weight']['field'] = 'weight';
$handler->display->display_options['sorts']['weight']['draggableviews_setting_view'] = 'quotes_admin:page';
$handler->display->display_options['sorts']['weight']['draggableviews_setting_arguments'] = 'none';
$handler->display->display_options['sorts']['weight']['draggableviews_setting_new_items_bottom_list'] = 1;
/* Contextual filter: Inhoud: Nid */
$handler->display->display_options['arguments']['nid_1']['id'] = 'nid_1';
$handler->display->display_options['arguments']['nid_1']['table'] = 'node';
$handler->display->display_options['arguments']['nid_1']['field'] = 'nid';
$handler->display->display_options['arguments']['nid_1']['relationship'] = 'field_studierichting_target_id';
$handler->display->display_options['arguments']['nid_1']['default_action'] = 'default';
$handler->display->display_options['arguments']['nid_1']['exception']['title'] = 'Alle';
$handler->display->display_options['arguments']['nid_1']['default_argument_type'] = 'node';
$handler->display->display_options['arguments']['nid_1']['summary']['number_of_records'] = '0';
$handler->display->display_options['arguments']['nid_1']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['nid_1']['summary_options']['items_per_page'] = '25';
$handler->display->display_options['arguments']['nid_1']['specify_validation'] = TRUE;
$handler->display->display_options['arguments']['nid_1']['validate']['type'] = 'node';
$handler->display->display_options['arguments']['nid_1']['validate_options']['types'] = array(
  'studierichting' => 'studierichting',
);
$handler->display->display_options['arguments']['nid_1']['validate']['fail'] = 'ignore';
/* Contextual filter: Inhoud: Nid */
$handler->display->display_options['arguments']['nid']['id'] = 'nid';
$handler->display->display_options['arguments']['nid']['table'] = 'node';
$handler->display->display_options['arguments']['nid']['field'] = 'nid';
$handler->display->display_options['arguments']['nid']['relationship'] = 'nid';
$handler->display->display_options['arguments']['nid']['default_action'] = 'default';
$handler->display->display_options['arguments']['nid']['exception']['title'] = 'Alle';
$handler->display->display_options['arguments']['nid']['default_argument_type'] = 'node';
$handler->display->display_options['arguments']['nid']['summary']['number_of_records'] = '0';
$handler->display->display_options['arguments']['nid']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['nid']['summary_options']['items_per_page'] = '25';
$handler->display->display_options['arguments']['nid']['specify_validation'] = TRUE;
$handler->display->display_options['arguments']['nid']['validate']['type'] = 'node';
$handler->display->display_options['arguments']['nid']['validate_options']['types'] = array(
  'page' => 'page',
  'paragraph_page' => 'paragraph_page',
  'vb_page' => 'vb_page',
);
$handler->display->display_options['arguments']['nid']['validate']['fail'] = 'ignore';
/* Filter criterion: Inhoud: Gepubliceerd */
$handler->display->display_options['filters']['status']['id'] = 'status';
$handler->display->display_options['filters']['status']['table'] = 'node';
$handler->display->display_options['filters']['status']['field'] = 'status';
$handler->display->display_options['filters']['status']['value'] = 1;
$handler->display->display_options['filters']['status']['group'] = 1;
$handler->display->display_options['filters']['status']['expose']['operator'] = FALSE;
/* Filter criterion: Inhoud: Type */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'node';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
  'quote' => 'quote',
);

/* Display: Sidebar Block */
$handler = $view->new_display('block', 'Sidebar Block', 'block_2');
$translatables['quotes'] = array(
  t('Master'),
  t('meer'),
  t('Toepassen'),
  t('Opnieuw instellen'),
  t('Sorteren op'),
  t('Oplopend'),
  t('Aflopend'),
  t('term'),
  t('node'),
  t('Studierichting'),
  t('Alle'),
  t('Onze leerlingen'),
  t('Sidebar Block'),
);

?>

Comments

MustangGB’s picture

Status: Active » Closed (outdated)

Closing this as outdated, feel free to re-open with updated details if it's still a problem in the latest release.