Forums / Setup & design / Sorting through a Collection
Matthew Rat
Thursday 05 June 2003 10:01:58 am
Because fetch only supports a limited number of ways to sort or filter, is there a way to take an already-fetched collection and sort them?
Take this example:I have an event class that is similar to an appointment object in Outlook in that there is a title, location, body, startdatetime, and stopdatetime. I would like to fetch the events in a folder and then sort them by the startdatetime. I am unsure (if I can) how to reorder a collection so that upcoming events are displayed in the correct (chronological) order.
Thanks in advance for your assistance!
Paul Borgermans
Saturday 07 June 2003 5:28:08 am
Facing the same problem, I think the most general route is to create a new template operator which works on the array of objects from the fetch result. Requires a bit of php coding, but the wizards in 3.1beta may help already much.
Maybe an easier way is to use the startdate in the object name pattern in a cleaver way (eq put it first with <start_date>). In your line/full display template override, don't use the objects name attribute for display but only for the sort_by in the fetch function.
Paul
eZ Publish, eZ Find, Solr expert consulting and training http://twitter.com/paulborgermans
Ben Pirt
Tuesday 22 July 2003 3:33:19 am
Think i'll have to resurrect this thread.I am facing the same problem in that I have a set of projects which need sorting by date, but I can't use the date as the name as I would like to use that name as the URL with the 'nice URL' method.
I notice that v.3.2 has attribute sorting, is this what I am looking for?
Tuesday 22 July 2003 4:40:47 am
>I notice that v.3.2 has attribute sorting, is this what I >am looking for?
Yes, take a look at the documentation on it:
http://ez.no/developer/ez_publish_3/documentation/development/libraries/ez_template/operators/data_fetch
-paul