1.1 --- a/macros/EventAggregator.py Sat Nov 07 21:08:16 2009 +0100
1.2 +++ b/macros/EventAggregator.py Sat Nov 07 21:36:36 2009 +0100
1.3 @@ -66,20 +66,22 @@
1.4 self.previous_set_end = EventAggregatorSupport.monthupdate(last, -self.number_of_months)
1.5 self.next_set_end = EventAggregatorSupport.monthupdate(last, self.number_of_months)
1.6
1.7 + def getQualifiedParameterName(self, argname):
1.8 + return EventAggregatorSupport.getQualifiedParameterName(self.calendar_name, argname)
1.9 +
1.10 def getMonthQueryString(self, argname, month, prefix=1):
1.11 if month is not None:
1.12 if prefix:
1.13 - return "%s-%s=%04d-%02d" % ((self.calendar_name, argname) + month)
1.14 - else:
1.15 - return "%s=%04d-%02d" % ((argname,) + month)
1.16 + argname = self.getQualifiedParameterName(argname)
1.17 + return "%s=%04d-%02d" % ((argname,) + month)
1.18 else:
1.19 return ""
1.20
1.21 def getNavigationLink(self, start, end, mode=None):
1.22 - return "%s&%s&mode=%s" % (
1.23 + return "%s&%s&%s=%s" % (
1.24 self.getMonthQueryString("start", start),
1.25 self.getMonthQueryString("end", end),
1.26 - mode or self.mode
1.27 + self.getQualifiedParameterName("mode"), mode or self.mode
1.28 )
1.29
1.30 def writeDownloadControls(self):
1.31 @@ -230,9 +232,20 @@
1.32
1.33 output = []
1.34
1.35 + # Prepare navigation details for the calendar shown with the new event
1.36 + # form.
1.37 +
1.38 + navigation_link = self.getNavigationLink(
1.39 + self.calendar_start, self.calendar_end, self.mode
1.40 + )
1.41 +
1.42 + # Prepare the link to the new event form, incorporating the above
1.43 + # calendar parameters.
1.44 +
1.45 new_event_link = "action=EventAggregatorNewEvent&start-day=%d&start-month=%d&start-year=%d" \
1.46 - "&%s&template=%s&parent=%s" % (
1.47 - day, month, year, self.category_name_parameters, self.template_name, self.parent_name or "")
1.48 + "&%s&template=%s&parent=%s&%s" % (
1.49 + day, month, year, self.category_name_parameters, self.template_name, self.parent_name or "",
1.50 + navigation_link)
1.51
1.52 output.append(fmt.div(on=1))
1.53 output.append(fmt.span(on=1, css_class="event-day-number"))
1.54 @@ -347,7 +360,7 @@
1.55 calendar_start = EventAggregatorSupport.getFormMonth(request, calendar_name, "start") or calendar_start
1.56 calendar_end = EventAggregatorSupport.getFormMonth(request, calendar_name, "end") or calendar_end
1.57
1.58 - mode = EventAggregatorSupport.getParameter(request, "mode", mode or "calendar")
1.59 + mode = EventAggregatorSupport.getQualifiedParameter(request, calendar_name, "mode", mode or "calendar")
1.60
1.61 # Get the events.
1.62