1.1 --- a/actions/EventAggregatorSummary.py Mon Jan 18 01:00:35 2010 +0100
1.2 +++ b/actions/EventAggregatorSummary.py Sun Jan 24 02:55:53 2010 +0100
1.3 @@ -2,7 +2,7 @@
1.4 """
1.5 MoinMoin - EventAggregatorSummary Action
1.6
1.7 - @copyright: 2008, 2009 by Paul Boddie <paul@boddie.org.uk>
1.8 + @copyright: 2008, 2009, 2010 by Paul Boddie <paul@boddie.org.uk>
1.9 @copyright: 2000-2004 Juergen Hermann <jh@web.de>,
1.10 2003-2008 MoinMoin:ThomasWaldmann,
1.11 2004-2006 MoinMoin:AlexanderSchremmer,
1.12 @@ -219,12 +219,13 @@
1.13 request.write("PRODID:-//MoinMoin//EventAggregatorSummary\r\n")
1.14 request.write("VERSION:2.0\r\n")
1.15
1.16 - for event_page, event_details in all_shown_events:
1.17 + for event_page in all_shown_events:
1.18 + event_details = event_page.getEventDetails()
1.19
1.20 # Get the summary details.
1.21
1.22 - event_summary = EventAggregatorSupport.getEventSummary(event_page, event_details)
1.23 - link = EventAggregatorSupport.getPageURL(request, event_page)
1.24 + event_summary = event_page.getEventSummary()
1.25 + link = event_page.getPageURL(request)
1.26
1.27 # Output the event details.
1.28
1.29 @@ -234,8 +235,8 @@
1.30 request.write("DTSTAMP:%04d%02d%02dT%02d%02d%02dZ\r\n" % event_details["created"][:6])
1.31 request.write("LAST-MODIFIED:%04d%02d%02dT%02d%02d%02dZ\r\n" % event_details["last-modified"][:6])
1.32 request.write("SEQUENCE:%d\r\n" % event_details["sequence"])
1.33 - request.write("DTSTART;VALUE=DATE:%04d%02d%02d\r\n" % event_details["start"])
1.34 - request.write("DTEND;VALUE=DATE:%04d%02d%02d\r\n" % EventAggregatorSupport.nextdate(event_details["end"]))
1.35 + request.write("DTSTART;VALUE=DATE:%04d%02d%02d\r\n" % event_details["start"].as_tuple())
1.36 + request.write("DTEND;VALUE=DATE:%04d%02d%02d\r\n" % event_details["end"].next_day().as_tuple())
1.37 request.write("SUMMARY:%s\r\n" % getQuotedText(event_summary))
1.38
1.39 # Optional details.
1.40 @@ -265,21 +266,21 @@
1.41
1.42 # Sort all_shown_events by start date, reversed:
1.43 #
1.44 - # * events are tuples: (real_page_in_category, event_details)
1.45 # * event_details are dictionaries, with the "start" entry providing
1.46 # the start date
1.47 #
1.48 - # So we use as sorting key the "start" key from the event details (the
1.49 - # second element of the tuple).
1.50 + # So we use as sorting key the "start" key from the event details.
1.51
1.52 - all_shown_events.sort(key=lambda x: x[1]["start"], reverse=True)
1.53 + ordered_events = EventAggregatorSupport.getOrderedEvents(all_shown_events)
1.54 + ordered_events.reverse()
1.55
1.56 - for event_page, event_details in all_shown_events:
1.57 + for event_page in ordered_events:
1.58 + event_details = event_page.getEventDetails()
1.59
1.60 # Get the summary details.
1.61
1.62 - event_summary = EventAggregatorSupport.getEventSummary(event_page, event_details)
1.63 - link = EventAggregatorSupport.getPageURL(request, event_page)
1.64 + event_summary = event_page.getEventSummary()
1.65 + link = event_page.getPageURL(request)
1.66
1.67 request.write('<item>\r\n')
1.68 request.write('<title>%s</title>\r\n' % wikiutil.escape(event_summary))