Exemple #1
0
def timetable_set(request, id, school = 0):
    u'''
        Форма заполнения расписания.

        Внимание: много непонятного
    '''
    render = {}
    if school:
        school = get_object_or_404(School, id = school)
    else:
        school = request.user.school
    render['school'] = school
    render['grade'] = grade = get_object_or_404(Grade, id = id, school = school)

    try:
        current_workday = int(request.GET.get('workday', '1'))
    except ValueError:
        current_workday = 1
    if current_workday not in school.get_workdays():
        current_workday = 1

    render['workdays'] = school.get_workdays_tuple()
    render['current_workday'] = current_workday = school.get_workdays_dict()[current_workday]
    render['lessons'] = settings.LESSON_NUMBERS
    render['subjects'] = grade.get_subjects()
    render['attendance'] = TimetableDayGrade(workday = current_workday[0], grade = grade)

    if request.is_ajax():
        subject = get_object_or_404(Subject, id = request.GET.get('subject'), school = school)
        if request.GET.get('method') == 'add':
            timetable = UsalTimetable(
                    grade = grade,
                    number = request.GET.get('lesson'),
                    subject = subject,
                    group = request.GET.get('group'),
                    school = school,
                    workday = current_workday[0],
                    room = request.GET.get('room', ''),
            )
            timetable.save()
            return HttpResponse(str(timetable.id))
        elif request.GET.get('method') == 'set_room':
            timetable = get_object_or_404(UsalTimetable,
                    id = request.GET.get('lesson_id'),
                    grade = grade,
                    number = request.GET.get('lesson'),
                    subject = subject,
                    group = request.GET.get('group'),
                    school = school,
                    workday = current_workday[0],
            )
            timetable.room = request.GET.get('room', '')
            timetable.save()
        else:
            timetable = get_object_or_404(UsalTimetable,
                    id = request.GET.get('lesson_id'),
                    grade = grade,
                    number = request.GET.get('lesson'),
                    subject = subject,
                    group = request.GET.get('group'),
                    school = school,
                    workday = current_workday[0],
            )
            timetable.delete()
        return HttpResponse('ok')

    return render_to_response('timetableSet.html', render, context_instance = RequestContext(request))
Exemple #2
0
def timetable_set(request, id, school=0):
    u'''
        Форма заполнения расписания.

        Внимание: много непонятного
    '''
    render = {}
    if school:
        school = get_object_or_404(School, id=school)
    else:
        school = request.user.school
    render['school'] = school
    render['grade'] = grade = get_object_or_404(Grade, id=id, school=school)

    try:
        current_workday = int(request.GET.get('workday', '1'))
    except ValueError:
        current_workday = 1
    if current_workday not in school.get_workdays():
        current_workday = 1

    render['workdays'] = school.get_workdays_tuple()
    render['current_workday'] = current_workday = school.get_workdays_dict(
    )[current_workday]
    render['lessons'] = settings.LESSON_NUMBERS
    render['subjects'] = grade.get_subjects()
    render['attendance'] = TimetableDayGrade(workday=current_workday[0],
                                             grade=grade)

    if request.is_ajax():
        subject = get_object_or_404(Subject,
                                    id=request.GET.get('subject'),
                                    school=school)
        if request.GET.get('method') == 'add':
            timetable = UsalTimetable(
                grade=grade,
                number=request.GET.get('lesson'),
                subject=subject,
                group=request.GET.get('group'),
                school=school,
                workday=current_workday[0],
                room=request.GET.get('room', ''),
            )
            timetable.save()
            return HttpResponse(str(timetable.id))
        elif request.GET.get('method') == 'set_room':
            timetable = get_object_or_404(
                UsalTimetable,
                id=request.GET.get('lesson_id'),
                grade=grade,
                number=request.GET.get('lesson'),
                subject=subject,
                group=request.GET.get('group'),
                school=school,
                workday=current_workday[0],
            )
            timetable.room = request.GET.get('room', '')
            timetable.save()
        else:
            timetable = get_object_or_404(
                UsalTimetable,
                id=request.GET.get('lesson_id'),
                grade=grade,
                number=request.GET.get('lesson'),
                subject=subject,
                group=request.GET.get('group'),
                school=school,
                workday=current_workday[0],
            )
            timetable.delete()
        return HttpResponse('ok')

    return render_to_response('timetableSet.html',
                              render,
                              context_instance=RequestContext(request))