1.1 --- a/imip_manager.py Tue Mar 24 18:18:53 2015 +0100
1.2 +++ b/imip_manager.py Tue Mar 24 19:47:31 2015 +0100
1.3 @@ -986,9 +986,8 @@
1.4
1.5 # Configure the start and end datetimes.
1.6
1.7 - dtend_control = args.get("dtend-control", [None])[0]
1.8 - dttimes_control = args.get("dttimes-control", [None])[0]
1.9 - with_time = dttimes_control == "enable"
1.10 + dtend_enabled = args.get("dtend-control", [None])[0] == "enable"
1.11 + dttimes_enabled = args.get("dttimes-control", [None])[0] == "enable"
1.12
1.13 # Start with the object's original details, overriding them with request
1.14 # information.
1.15 @@ -996,19 +995,17 @@
1.16 (dtstart, dtstart_attr), (dtend, dtend_attr) = self.get_event_period(obj)
1.17
1.18 d = self.get_date_control_values("dtstart")
1.19 - t = self.handle_date_control_values(d, with_time)
1.20 + t = self.handle_date_control_values(d, dtend_enabled)
1.21 if t:
1.22 dtstart, dtstart_attr = t
1.23
1.24 - if dtend_control == "enable":
1.25 + if dtend_enabled:
1.26 d = self.get_date_control_values("dtend")
1.27 - t = self.handle_date_control_values(d, with_time)
1.28 + t = self.handle_date_control_values(d, dtend_enabled)
1.29 if t:
1.30 dtend, dtend_attr = t
1.31 else:
1.32 dtend, dtend_attr = None, {}
1.33 - elif dtend_control == "disable":
1.34 - dtend, dtend_attr = None, {}
1.35
1.36 return (dtstart, dtstart_attr), (dtend, dtend_attr)
1.37
1.38 @@ -1279,11 +1276,11 @@
1.39
1.40 page.style.close()
1.41
1.42 - dtend_control = args.get(ssn("dtend-control", "recur", index), [None])[0]
1.43 - dttimes_control = args.get(ssn("dttimes-control", "recur", index), [None])[0]
1.44 -
1.45 - dtend_enabled = dtend_control == "enable" or isinstance(end, datetime) or start != end - timedelta(1)
1.46 - dttimes_enabled = dttimes_control == "enable" or isinstance(start, datetime) or isinstance(end, datetime)
1.47 + dtend_control = args.get(ssn("dtend-control", "recur", index), [None])[index or 0:]
1.48 + dttimes_control = args.get(ssn("dttimes-control", "recur", index), [None])[index or 0:]
1.49 +
1.50 + dtend_enabled = dtend_control and dtend_control[0] == "enable" or isinstance(end, datetime) or start != end - timedelta(1)
1.51 + dttimes_enabled = dttimes_control and dttimes_control[0] == "enable" or isinstance(start, datetime) or isinstance(end, datetime)
1.52
1.53 if dtend_enabled:
1.54 page.input(name=ssn("dtend-control", "recur", index), type="checkbox", value="enable", id=sn("dtend-enable", index), checked="checked")