How to Filter expired events from taxonomy/term view

manuj_78 - January 2, 2009 - 22:29

Hi,
Is there any way I can restrict the teaser list view for taxonomy/term to not show expired events.
In my view I tried to add a filter for "event end date" which was greater than 'now' - However - as a result of this my taxonomy/term started showing only events. Is there any way can i can put the logic to show all node types but if the node is of type event and the end date is greater than now then dont show it.

Here is the output of my test view

$view = new stdClass();
$view->name = 'taxonomy_term';
$view->description = 'The taxonomy view with a depth of 10.';
$view->access = array (
);
$view->view_args_php = '';
$view->page = TRUE;
$view->page_title = 'Taxonomy';
$view->page_header = '';
$view->page_header_format = '1';
$view->page_footer = '';
$view->page_footer_format = '1';
$view->page_empty = '';
$view->page_empty_format = '1';
$view->page_type = 'teaser';
$view->url = 'taxonomy/term';
$view->use_pager = TRUE;
$view->nodes_per_page = '15';
$view->sort = array (
array (
'tablename' => 'node',
'field' => 'sticky',
'sortorder' => 'DESC',
'options' => '',
),
array (
'tablename' => 'node',
'field' => 'created',
'sortorder' => 'DESC',
'options' => 'normal',
),
);
$view->argument = array (
array (
'type' => 'taxid',
'argdefault' => '2',
'title' => '%1',
'options' => '10',
'wildcard' => '',
'wildcard_substitution' => '',
),
array (
'type' => 'node_feed',
'argdefault' => '2',
'title' => '',
'options' => '',
'wildcard' => '',
'wildcard_substitution' => '',
),
array (
'type' => 'node_feed',
'argdefault' => '2',
'title' => '',
'options' => '',
'wildcard' => '',
'wildcard_substitution' => '',
),
);
$view->field = array (
);
$view->filter = array (
array (
'tablename' => 'node',
'field' => 'status',
'operator' => '=',
'options' => '',
'value' => '1',
),
array (
'tablename' => 'node',
'field' => 'type',
'operator' => 'OR',
'options' => '',
'value' => array (
0 => 'blog',
1 => 'forum',
2 => 'poll',
3 => 'ed_classified',
4 => 'event',
5 => 'image',
6 => 'article',
7 => 'book_review',
8 => 'page',
),
),
array (
'tablename' => 'node',
'field' => 'distinct',
'operator' => '=',
'options' => '',
'value' => array (
0 => 'distinct',
),
),
array (
'tablename' => 'event',
'field' => 'event_end',
'operator' => '>',
'options' => '',
'value' => 'now',
),
);
$view->exposed_filter = array (
array (
'tablename' => 'node',
'field' => 'type',
'label' => 'Filter Content by',
'optional' => '1',
'is_default' => '1',
'operator' => '1',
'single' => '1',
),
);
$view->requires = array(node, event);
$views[$view->name] = $view;

Any help will be greatly appreciated

just bumping up this post

manuj_78 - January 5, 2009 - 21:33

just bumping up this post

 
 

Drupal is a registered trademark of Dries Buytaert.