Forums / General / How to use fetch with attribute_filter?
Milad P
Wednesday 14 June 2006 2:52:58 am
I have a date object in my class 'scholarship and i want to use 'attribute_filter' to sort my items after the month value in my date object. How do i do that?
{set list_items=fetch_alias( children, hash( parent_node_id, $node.node_id, offset, $view_parameters.offset, sort_by, array( array('attribute', false(), 'scholarship/seekdate')), attribute_filter, array(array('scholarship/seekdate.month', '<', $now)), limit, $page_limit ) )}
I can make it work for the whole date object, but i want to filter after month.
Kristof Coomans
Wednesday 14 June 2006 3:44:05 am
Hi
You can make a date with the makedate template operator ( http://ez.no/doc/ez_publish/technical_manual/3_8/reference/template_operators/miscellaneous/makedate ). and put it in $now.
independent eZ Publish developer and service provider | http://blog.coomanskristof.be | http://ezpedia.org
Wednesday 14 June 2006 4:45:20 am
My problem is to convert
'scholarship/seekdate.month'
to only month. $now is defined as $now = maketime().
i tried
attribute_filter, array(array(makedate(currentdate()|datetime('scholarship/seekdate','%m')), '<', currentdate('custom', '%m') ))
but it didn't work. My plan was to take out month from seekdate and compare it with current month.
Wednesday 14 June 2006 5:30:49 am
{let $now=makedate() $timeStruct=gettime( $now ) $firstDayOfTheMonth=makedate( $timeStruct.month, 1, $timeStruct.year )}
Now use an attribute filter like:
array( 'and', array( 'scholarship/seekdate', '<' , $firstDayOfTheMonth ) )
This will give you all scholarships before the current month.
It's not possible to fetch everything of a specific month ( without specifying the year ).