# HG changeset patch # User Paul Boddie # Date 1422467119 -3600 # Node ID 04282a33309bb70546ce504f5d6c0211951d3c17 # Parent 939c30b8e222262d285c0f4048fac1fe387f7a2e Added initial styling for the calendar. diff -r 939c30b8e222 -r 04282a33309b conf/apache/imip-agent.conf --- a/conf/apache/imip-agent.conf Wed Jan 28 17:22:40 2015 +0100 +++ b/conf/apache/imip-agent.conf Wed Jan 28 18:45:19 2015 +0100 @@ -1,4 +1,5 @@ Alias /freebusy /var/www/imip-agent/static/ +Alias /imip-manager/styles.css /var/www/imip-agent/styles.css ScriptAlias /imip-manager /var/www/imip-agent/imip_manager.py diff -r 939c30b8e222 -r 04282a33309b htdocs/styles.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/htdocs/styles.css Wed Jan 28 18:45:19 2015 +0100 @@ -0,0 +1,25 @@ +table#calendar { + border: 2px solid #000; +} + +colgroup#columns-request { + background-color: #eef; +} + +colgroup#columns-freebusy { + background-color: #fee; +} + +th.dayheading { + background-color: #f85; +} + +th.timeslot { + vertical-align: top; + padding-top: 0; +} + +td.event { + background-color: #af8; + border: 2px solid #000; +} diff -r 939c30b8e222 -r 04282a33309b imip_manager.py --- a/imip_manager.py Wed Jan 28 17:22:40 2015 +0100 +++ b/imip_manager.py Wed Jan 28 18:45:19 2015 +0100 @@ -264,7 +264,7 @@ # Presentation methods. def new_page(self, title): - self.page.init(title=title, charset=self.encoding) + self.page.init(title=title, charset=self.encoding, css="styles.css") def status(self, code, message): self.header("Status", "%s %s" % (code, message)) @@ -650,24 +650,24 @@ partitioned_group_types.append(group_type) partitioned_group_sources.append(group_source) - page.table(border=1, cellspacing=0, cellpadding=5) - self.show_calendar_participant_headings(partitioned_group_sources, group_columns) + page.table(cellspacing=5, cellpadding=5, id="calendar") + self.show_calendar_participant_headings(partitioned_group_types, partitioned_group_sources, group_columns) self.show_calendar_days(days, partitioned_groups, partitioned_group_types, group_columns) page.table.close() - def show_calendar_participant_headings(self, group_sources, group_columns): + def show_calendar_participant_headings(self, group_types, group_sources, group_columns): """ Show headings for the participants and other scheduling contributors, - defined by 'group_sources' and 'group_columns'. + defined by 'group_types', 'group_sources' and 'group_columns'. """ page = self.page - page.colgroup(span=1) # for datetime information + page.colgroup(span=1, id="columns-timeslot") - for columns in group_columns: - page.colgroup(span=columns) + for group_type, columns in zip(group_types, group_columns): + page.colgroup(span=columns, id="columns-%s" % group_type) page.thead() page.tr() @@ -743,8 +743,7 @@ active = slots and slots.get(point) if not active: - page.td(class_="empty", colspan=columns) - page.td.close() + page.td("", class_="empty", colspan=columns) continue slots = slots.items() @@ -790,16 +789,14 @@ page.td.close() else: - page.td(class_="empty") - page.td.close() + page.td("", class_="empty") # Pad with empty columns. i = columns - len(active) while i > 0: i -= 1 - page.td(class_="empty") - page.td.close() + page.td("", class_="empty") page.tr.close() diff -r 939c30b8e222 -r 04282a33309b tools/install.sh --- a/tools/install.sh Wed Jan 28 17:22:40 2015 +0100 +++ b/tools/install.sh Wed Jan 28 18:45:19 2015 +0100 @@ -21,3 +21,4 @@ fi cp imip_manager.py "$WEB_INSTALL_DIR" +cp htdocs/styles.css "$WEB_INSTALL_DIR"