# HG changeset patch # User Paul Boddie # Date 1426011915 -3600 # Node ID b856b83089ccc22ae317e10eebc760e83e9d0ccf # Parent c0b9a178ffd111d133790ef12a96ab977515155c Consolidated heading production for event details tables. diff -r c0b9a178ffd1 -r b856b83089cc imip_manager.py --- a/imip_manager.py Tue Mar 10 19:12:03 2015 +0100 +++ b/imip_manager.py Tue Mar 10 19:25:15 2015 +0100 @@ -896,14 +896,22 @@ page.tbody() for name, label in self.property_items: + field = name.lower() + + items = obj.get_items(name) or [] + rowspan = len(items) + + if name == "ATTENDEE": + rowspan += len(new_attendees) + 1 + elif not items: + continue + page.tr() + page.th(label, class_="objectheading %s%s" % (field, error and field in error and " error" or ""), rowspan=rowspan) # Handle datetimes specially. if name in ["DTSTART", "DTEND"]: - field = name.lower() - - page.th(label, class_="objectheading %s%s" % (field, error and field in error and " error" or "")) # Obtain the datetime. @@ -953,7 +961,6 @@ elif name == "SUMMARY": value = args.get("summary", [obj.get_value(name)])[0] - page.th(label, class_="objectheading") page.td() if is_organiser: page.input(name="summary", type="text", value=value, size=80) @@ -965,16 +972,6 @@ # Handle potentially many values. else: - items = obj.get_items(name) or [] - rowspan = len(items) - - if name == "ATTENDEE": - rowspan += len(new_attendees) + 1 - elif not items: - continue - - page.th(label, class_="objectheading", rowspan=rowspan) - first = True for i, (value, attr) in enumerate(items):