# HG changeset patch # User Paul Boddie # Date 1331390484 -3600 # Node ID 0a3ee93b87788357504836f3073ec33396dccb58 # Parent f59288d38cad1dcbe6fb6bbe3d216bfff1a1906f Added support for separate start and end regimes, useful for travel events. diff -r f59288d38cad -r 0a3ee93b8778 actions/EventAggregatorNewEvent.py --- a/actions/EventAggregatorNewEvent.py Fri Mar 09 00:09:38 2012 +0100 +++ b/actions/EventAggregatorNewEvent.py Sat Mar 10 15:41:24 2012 +0100 @@ -97,28 +97,34 @@ # Initialise the time regime from the location. - regime = form.get("regime", [None])[0] + start_regime = form.get("start-regime", [None])[0] + end_regime = form.get("end-regime", [None])[0] - if not regime: - regime = Location(location, locations).getTimeRegime() + if not start_regime: + start_regime = Location(location, locations).getTimeRegime() + end_regime = end_regime or start_regime # Initialise regime lists. - regime_list = [] - regime_list.append('' % escape(_(""))) + start_regime_list = [] + start_regime_list.append('' % escape(_(""))) + end_regime_list = [] + end_regime_list.append('' % escape(_(""))) # Prepare regime lists, selecting specified regimes. if pytz is not None: - regime_list += self.get_option_list(regime, pytz.common_timezones) + start_regime_list += self.get_option_list(start_regime, pytz.common_timezones) + end_regime_list += self.get_option_list(end_regime, pytz.common_timezones) # Show time zone-related information depending on various fields. show_zone_regime = ( - (form.get("regime") or regime) # have a regime value + form.get("start-regime") # have a regime and not form.get("show-offsets") # are not switching to offsets and not form.get("hide-zone") # are not removing zone information or form.get("show-regime") # are switching to a regime + or form.get("show-times") and start_regime # are showing times with a regime ) show_zone_offsets = ( form.get("start-offset") # have an offset @@ -144,7 +150,8 @@ "start_month_list" : "\n".join(start_month_list), "end_month_list" : "\n".join(end_month_list), - "regime_list" : "\n".join(regime_list), + "start_regime_list" : "\n".join(start_regime_list), + "end_regime_list" : "\n".join(end_regime_list), "use_regime_label" : escape(_("Using local time in...")), "show_end_date_label" : escape(_("Specify end date")), @@ -307,8 +314,8 @@ html += ''' - - + + @@ -318,7 +325,7 @@ if show_zone_offsets: html += ''' - + UTC ''' % d @@ -326,10 +333,10 @@ elif show_zone_regime: html += ''' - +
- + %(start_regime_list)s ''' % d @@ -340,8 +347,8 @@ html += ''' - - + + @@ -351,10 +358,20 @@ if show_zone_offsets: html += ''' - + UTC ''' % d + # Regime information displayed. + + elif show_zone_regime: + html += ''' + + + ''' % d + # Controls for removing times. html += ''' @@ -626,12 +643,13 @@ link = form.get("link", [None])[0] topics = form.get("topics", []) - regime = form.get("regime", [None])[0] + start_regime = form.get("start-regime", [None])[0] + end_regime = form.get("end-regime", form.get("start-regime", [None]))[0] start_offset = form.get("start-offset", [None])[0] end_offset = form.get("end-offset", [None])[0] - start_zone = regime or start_offset - end_zone = regime or end_offset + start_zone = start_regime or start_offset + end_zone = end_regime or end_offset # Validate certain fields. diff -r f59288d38cad -r 0a3ee93b8778 css/event-aggregator.css --- a/css/event-aggregator.css Fri Mar 09 00:09:38 2012 +0100 +++ b/css/event-aggregator.css Sat Mar 10 15:41:24 2012 +0100 @@ -551,6 +551,13 @@ /* New event form. */ +td.event-time-selection, +td.event-zone-selection, +td.event-regime-selection.event-end-time { + vertical-align: bottom; +} + +td.event-time-selection.label, td.event-regime-selection { vertical-align: top; }