def pred(lesson): return ((week_txt in ('both', 'current') or lesson.week_type == week_txt)) and \ (not day_txt or str(lesson.week_day) == day_txt or (lesson.week_day == current_weekday() and day_txt == 'today'))
def free_classrooms(request): conv = lambda x: x != '*' and x or None curr = current_lesson() or 1 frm = int(request.GET.get('lesson', curr)) len = int(request.GET.get('length', 1)) timestamp = { 'week': request.GET.get('week', current_week().name), 'building': conv(request.GET.get('building', '*')), 'day': int(request.GET.get('day', current_weekday())), 'lessons': range(frm, frm + len) } buildings = AutoaddDict(lambda _: list()) for classroom in SOURCE.free_classrooms(**timestamp): buildings[classroom.building].append(classroom) buildings = sorted(buildings.iteritems(), cmp=lambda a, b: cmp(a[0], b[0])) fbuildings = map(lambda x: {'name': x[0], 'classrooms': sorted(x[1], cmp=cid_cmp)}, buildings) inits = dict(request.GET.items()) inits.update(timestamp) inits['lesson'] = frm data = {'form': FindFreeClassroomsForm(initial=inits), 'buildings': fbuildings, 'week_txt': timestamp['week']} return render_response(request, 'free_classrooms.html', data)
def generic_today(request, method, id_factory, template, **data_id): week_txt = current_week().name day_txt = current_weekday() schedule = create_schedule_common(method, id_factory, week_txt, day_txt, **data_id) schedule['today'] = True return render_response(request, 'days_%s.html' % template, schedule)
def is_today(day): return str(day) == str(current_weekday())