Merge lp:~salgado/summit/drop-unused-rooms into lp:summit

Proposed by Guilherme Salgado
Status: Merged
Merged at revision: 58
Proposed branch: lp:~salgado/summit/drop-unused-rooms
Merge into: lp:summit
Diff against target: 121 lines (+52/-25)
1 file modified
summit/schedule/render.py (+52/-25)
To merge this branch: bzr merge lp:~salgado/summit/drop-unused-rooms
Reviewer Review Type Date Requested Status
Dave Walker (community) Approve
Review via email: mp+39178@code.launchpad.net

Description of the change

This branch drops unused rooms on the linaro-only view and changes the icon used for linaro sessions.

To post a comment you must log in.
Revision history for this message
Dave Walker (davewalker) wrote :

lgtm

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'summit/media/img/blueprint-linaro.png'
0Binary files summit/media/img/blueprint-linaro.png 2010-09-22 14:38:26 +0000 and summit/media/img/blueprint-linaro.png 2010-10-22 20:18:47 +0000 differ0Binary files summit/media/img/blueprint-linaro.png 2010-09-22 14:38:26 +0000 and summit/media/img/blueprint-linaro.png 2010-10-22 20:18:47 +0000 differ
=== modified file 'summit/schedule/render.py'
--- summit/schedule/render.py 2010-10-21 11:14:25 +0000
+++ summit/schedule/render.py 2010-10-22 20:18:47 +0000
@@ -119,7 +119,7 @@
119 _now = datetime.datetime.utcnow()119 _now = datetime.datetime.utcnow()
120 if self.fakenow is not None:120 if self.fakenow is not None:
121 _now = self.fakenow121 _now = self.fakenow
122 _local_now = self.summit.localize(_now)122 _local_now = self.summit.localize(_now)
123 try:123 try:
124 _slots = self.summit.slot_set.filter(124 _slots = self.summit.slot_set.filter(
125 start_utc__lte=_now, end_utc__gte=_now)[0]125 start_utc__lte=_now, end_utc__gte=_now)[0]
@@ -140,7 +140,7 @@
140 if _guess.start.date() != _local_now.date():140 if _guess.start.date() != _local_now.date():
141 self.endofday = True141 self.endofday = True
142 return142 return
143 else:143 else:
144 _slots = [_guess]144 _slots = [_guess]
145 except IndexError:145 except IndexError:
146 _slots = []146 _slots = []
@@ -265,37 +265,37 @@
265 html += '<p><strong>No more sessions for today.</strong></p>'265 html += '<p><strong>No more sessions for today.</strong></p>'
266 return mark_safe(html)266 return mark_safe(html)
267267
268 headings = u''268 headings = u''
269 meetings = u''269 meetings = u''
270270
271 for date_num, date in enumerate(self.dates):271 for date_num, date in enumerate(self.dates):
272 for slot_num, slot in enumerate(self.slots[date]):272 for slot_num, slot in enumerate(self.slots[date]):
273 for room_num, info in enumerate(self.meetings[slot]):273 for room_num, info in enumerate(self.meetings[slot]):
274 (room, meeting) = info274 (room, meeting) = info
275 if room is None: 275 if room is None:
276 continue276 continue
277 if meeting is None:277 if meeting is None:
278 meeting_title = ''278 meeting_title = ''
279 else:279 else:
280 meeting_title = meeting.title280 meeting_title = meeting.title
281 try:281 try:
282 track = meeting.tracks.all()[0].title.lower()282 track = meeting.tracks.all()[0].title.lower()
283 except (IndexError, AttributeError):283 except (IndexError, AttributeError):
284 track = "unknown"284 track = "unknown"
285 headings += '<th>%s</th>\n' % escape(room.name)285 headings += '<th>%s</th>\n' % escape(room.name)
286 meetings += '<td class="%s">%s</td>\n' % (track, escape(meeting_title))286 meetings += '<td class="%s">%s</td>\n' % (track, escape(meeting_title))
287287
288 html += '<table>\n'288 html += '<table>\n'
289289
290 html += '<tr>\n'290 html += '<tr>\n'
291 html += headings291 html += headings
292 html += '</tr>\n'292 html += '</tr>\n'
293293
294 html += '<tr>\n'294 html += '<tr>\n'
295 html += meetings295 html += meetings
296 html += '</tr>\n'296 html += '</tr>\n'
297297
298 html += '</table>\n'298 html += '</table>\n'
299299
300 return mark_safe(html)300 return mark_safe(html)
301301
@@ -1012,9 +1012,36 @@
1012 1012
1013class LinaroSchedule(Schedule):1013class LinaroSchedule(Schedule):
10141014
1015 def meeting_div(self, meeting, room=None, slot=None, pos=None):1015 def calculate(self):
1016 if meeting.is_linaro or meeting.type in ('talk', 'plenary'):1016 super(LinaroSchedule, self).calculate()
1017 return super(LinaroSchedule, self).meeting_div(1017
1018 meeting, room=room, slot=slot, pos=pos)1018 # Find all the meetings that are linaro-related and all the rooms that
1019 else:1019 # are used by at least one linaro-related meeting.
1020 return u''1020 used_rooms = set()
1021 linaro_meetings = []
1022 for slot, meetings in self.meetings.items():
1023 for room, meeting in meetings:
1024 if meeting is None:
1025 continue
1026 if meeting.is_linaro or meeting.type in ('talk', 'plenary'):
1027 used_rooms.add(room)
1028 linaro_meetings.append(meeting)
1029
1030 # Now remove all unused rooms from self.rooms.
1031 unused_rooms = set(self.rooms) - used_rooms
1032 for room in unused_rooms:
1033 self.rooms.remove(room)
1034
1035 # Finally, remove the (room, meeting) tuples from self.meetings
1036 # for all rooms that are unused. Also drop all non-linaro meetings
1037 # from self.meetings.
1038 for slot, meetings in self.meetings.items():
1039 if slot.type == 'lunch':
1040 continue
1041 tmp_meetings = meetings[:]
1042 for room, meeting in tmp_meetings:
1043 if room in unused_rooms:
1044 meetings.remove((room, meeting))
1045 elif meeting not in linaro_meetings:
1046 idx = meetings.index((room, meeting))
1047 meetings[idx] = (room, None)

Subscribers

People subscribed via source and target branches