Example #1
0
def enroll_form(request, errors=[]):
  semester = current_reg_semester(request)
  error = None
  if not semester:
    enrollment_not_open = True
    return my_render_to_response(request, 'enroll.html', locals())
  students = get_children(request)
  print students
  if not students:
    error = 'No student listed under this account'
    return my_render_to_response(request, 'enroll.html', locals())
  mclasses = Class.objects.filter(semester=semester, elective=False)
  eclasses = Class.objects.filter(semester=semester, elective=True)

  for s in students:
    s.mclass = s.eclass = 0
  for c in mclasses:
    for s in students:
      if s in c.student_set.all():
        s.mclass = c.id

  for c in eclasses:
    for s in students:
      if s in c.student_set.all():
        s.eclass = c.id

  return my_render_to_response(request, 'enroll.html', locals())
Example #2
0
def familyinfo(request):
  print 'familyinfo'
  print request.method

  if request.method == 'GET':
    print 'GET'
    try:
      family = request.user.profile
      print 'got family'
      form = FamilyForm(instance=family)
      print 'got form'
      students = family.student_set.order_by('-birthday')
      print 'got students'

    except:
      form = FamilyForm()
    print 'Get Done'
    return my_render_to_response(request, 'family.html', locals())

  try:
    print 'Non-GET'
    print request.user
    family = request.user.profile
    print 'Got family'
    family.cache()
    print 'done cache'
    family.user = request.user
    print 'got user'
    form = FamilyForm(request.POST, instance=family)
    print 'Put try succeed'
  except:
    print 'except'
    family = Family()
    family.user = request.user
    form = FamilyForm(request.POST, instance=family)
    print 'done except'
  students = family.student_set.order_by('-birthday')
  if form.is_valid():
    print 'form is valid'
    family.school = request.session['school']
    form.save()
    messages.info(request, 'Family Information Updated.')
    return HttpResponseRedirect('/')
  else:
    print 'form is not valid'
    print  form.errors.as_data()
    messages.error(request, 'Please fix errors')
    return my_render_to_response(request, 'family.html', locals())
Example #3
0
def help(request):
  # the semester open for registration
  semester = current_reg_semester(request)
  try:
    sis_contact = Config.objects.get(name='sis_contact').emailValue
  except:
    sis_contact = "*****@*****.**"
  try:
    registrar_contact = Config.objects.get(name='registrar_contact').emailValue
  except:
    registrar_contact = "*****@*****.**"

  return my_render_to_response(request, 'help.html', locals())
Example #4
0
def student_score(request, sid):
  student = Student.objects.get(id=id_decode(sid))
  semester = current_record_semester(request)
  student.enrolledClasses = student.enroll.filter(semester=semester)

  for aclass in student.enrolledClasses:
    aclass.sessions = aclass.classsession_set.order_by('date')
    aclass.show_attendance = aclass.recordAttendance and aclass.sessions
    for cs in aclass.sessions:
      cs.att, create = Attendance.objects.get_or_create(student=student,
                                                        session=cs)
      aclass.categories = aclass.gradingcategory_set.order_by('order')
      for cat in aclass.categories:
        cat.gds = cat.gradingitem_set.order_by('date')
        for gd in cat.gds:
          try:
            gd.score = Score.objects.get(gradingItem=gd, student=student)
          except:
            gd.score = '_'
  return my_render_to_response(request, 'student_score.html', locals())
Example #5
0
def edit_student(request, sid=0):
  if sid:
    student = Student.objects.get(id=id_decode(sid))
  else:
    student = Student()
  # if sid and not student_access(request.user, student):
  #    messages.error(request, 'You are not authorized to access information of this student.')
  #    print 'You are not authorized to access information of this student.'
  #    return HttpResponseRedirect('/')
  if request.method == 'GET':
    form = StudentForm(instance=student)
  else:  # POST
    if not sid:
      student = Student(studentID=next_student_id(),
                        family=request.user.profile)
    form = StudentForm(request.POST, instance=student)
    if form.is_valid():
      form.save()
      messages.info(request, 'Student information for %s saved. ' % (
      student.firstName + ' ' + student.lastName,))
      return HttpResponseRedirect('/')
  return my_render_to_response(request, 'edit_student.html', locals())
Example #6
0
def review_tuition(request, howtopay):
  today = datetime.date.today()
  paypal = howtopay == 'paypal'
  family = request.user.profile
  # the semester open for registration
  semester = current_reg_semester(request)
  c = cal_tuition(family, semester, paypal)
  tuition, _created = Tuition.objects.get_or_create(family=family,
                                                    semester=semester)
  tuition.due = c['total']
  tuition.latest_due_calculation = datetime.date.today()
  tuition.pay_credit = paypal
  tuition.save()
  try:
    c['school_mailing_addr'] = Config.objects.get(
      name='school_mailing_addr').textValue
  except:
    c['school_mailing_addr'] = '<school mailing address>'

  c['tuition'] = tuition
  c['request'] = request
  c['today'] = today
  return my_render_to_response(request, 'review_tuition.html', c)