Exemple #1
0
 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'))
Exemple #2
0
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)
Exemple #3
0
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)
Exemple #4
0
def is_today(day):
    return str(day) == str(current_weekday())