def calculadoraUnitatsFormatives(request): credentials = getImpersonateUser(request) (user, _) = credentials professor = User2Professor(user) head = u'Calculadora Unitats Formatives' infoForm = [] grupsProfessor = Grup.objects.filter( horari__professor=professor).order_by('curs').distinct() assignaturesProfessor = Assignatura.objects.filter( horari__professor=professor, horari__grup__isnull=False).order_by('curs', 'nom_assignatura').distinct() if request.method == 'POST': form = calculadoraUnitatsFormativesForm( request.POST, assignatures=assignaturesProfessor, grups=grupsProfessor) if form.is_valid(): grup = form.cleaned_data['grup'] assignatures = form.cleaned_data['assignatura'] dataInici = form.cleaned_data['dataInici'] hores = form.cleaned_data['hores'] imparticionsAssignatura = Impartir.objects.filter( dia_impartir__gte=dataInici, horari__assignatura__in=assignatures, horari__grup=grup, horari__professor=professor).order_by('dia_impartir', 'horari__hora') if imparticionsAssignatura.count() < hores: form._errors.setdefault(NON_FIELD_ERRORS, []).extend([ u'''A partir de la data {0} només hi ha {1} hores, comprova que has triat bé el curs. '''.format(dataInici, imparticionsAssignatura.count()) ]) else: try: darreraImparticio = imparticionsAssignatura[hores - 1] infoForm = [ ('Darrera classe', u'dia {0} a les {1}'.format( darreraImparticio.dia_impartir, darreraImparticio.horari.hora.hora_inici)), ] except Exception, e: form._errors.setdefault(NON_FIELD_ERRORS, []).extend([e])
def calculadoraUnitatsFormatives(request): credentials = getImpersonateUser(request) (user, _ ) = credentials professor = User2Professor( user ) head=u'Calculadora Unitats Formatives' infoForm = [] grupsProfessor = Grup.objects.filter( horari__professor = professor ).order_by('curs').distinct() assignaturesProfessor = Assignatura.objects.filter( horari__professor = professor, horari__grup__isnull = False ).order_by('curs','nom_assignatura').distinct() if request.method == 'POST': form = calculadoraUnitatsFormativesForm( request.POST, assignatures = assignaturesProfessor, grups = grupsProfessor ) if form.is_valid(): grup = form.cleaned_data['grup'] assignatures = form.cleaned_data['assignatura'] dataInici = form.cleaned_data['dataInici'] hores = form.cleaned_data['hores'] imparticionsAssignatura = Impartir.objects.filter( dia_impartir__gte = dataInici, horari__assignatura__in = assignatures, horari__grup = grup, horari__professor = professor ).order_by( 'dia_impartir', 'horari__hora' ) if imparticionsAssignatura.count() < hores: form._errors.setdefault(NON_FIELD_ERRORS, []).extend( [ u'''A partir de la data {0} només hi ha {1} hores, comprova que has triat bé el curs. '''.format( dataInici, imparticionsAssignatura.count() ) ] ) else: try: darreraImparticio = imparticionsAssignatura[hores-1] infoForm = [ ('Darrera classe', u'dia {0} a les {1}'.format( darreraImparticio.dia_impartir, darreraImparticio.horari.hora.hora_inici )), ] except Exception, e: form._errors.setdefault(NON_FIELD_ERRORS, []).extend( [e] )
comprova que has triat bé el curs. '''.format( dataInici, imparticionsAssignatura.count() ) ] ) else: try: darreraImparticio = imparticionsAssignatura[hores-1] infoForm = [ ('Darrera classe', u'dia {0} a les {1}'.format( darreraImparticio.dia_impartir, darreraImparticio.horari.hora.hora_inici )), ] except Exception, e: form._errors.setdefault(NON_FIELD_ERRORS, []).extend( [e] ) else: form = calculadoraUnitatsFormativesForm( assignatures = assignaturesProfessor , grups = grupsProfessor) return render_to_response( 'form.html', {'form': form, 'infoForm': infoForm, 'head': head}, context_instance=RequestContext(request)) #------------------------------------------------------------------------------------------ @login_required @group_required(['direcció']) def alertaAssistencia(request): credentials = getImpersonateUser(request) (user, l4) = credentials
'''.format(dataInici, imparticionsAssignatura.count()) ]) else: try: darreraImparticio = imparticionsAssignatura[hores - 1] infoForm = [ ('Darrera classe', u'dia {0} a les {1}'.format( darreraImparticio.dia_impartir, darreraImparticio.horari.hora.hora_inici)), ] except Exception, e: form._errors.setdefault(NON_FIELD_ERRORS, []).extend([e]) else: form = calculadoraUnitatsFormativesForm( assignatures=assignaturesProfessor, grups=grupsProfessor) return render_to_response('form.html', { 'form': form, 'infoForm': infoForm, 'head': head }, context_instance=RequestContext(request)) #------------------------------------------------------------------------------------------ @login_required @group_required(['direcció']) def alertaAssistencia(request): credentials = getImpersonateUser(request)