Ejemplo n.º 1
0
class EvaluationSystemForm():
    def __init__(self, request):
        self.evaluationSystem = QueryEvaluationSystem().getEvaluationSystemByCourseSelected(request)
        
    def is_valid(self):
        items = QueryItem().getListItemsByEvaluationSystem(self.evaluationSystem)
        total = 0.0
        for item in items:
            evaluations = QueryEvaluation().getListEvaluationsByItem(item)
            for evaluation in evaluations:
                total += evaluation.getPercentage()
        
        if abs(total-100)<0.01 :
            self.errors = None
            return True
        else:
            self.errors = "Els percentatges de les evaluacions han de sumar el 100%."
            return False
    
    def save(self):
        self.evaluationSystem.estado = "A"
        self.evaluationSystem.save()
        cambiaEstadoTodosLosProyectos(self.evaluationSystem.curso)
Ejemplo n.º 2
0
def copyEvaluationSystem(fromCourse, toCourse):
    newEvaluationSystem = SistemaEvaluacion()
    newEvaluationSystem.curso, newEvaluationSystem.estado = toCourse, "D"
    newEvaluationSystem.save()
    if fromCourse :
        fromEvaluationSystemTreeComplete = QueryEvaluationSystemTreeComplete(QueryEvaluationSystem().getEvaluationSystemByCourse(fromCourse))
        for item in fromEvaluationSystemTreeComplete.getItems():
            newItem = Hito()
            newItem.nombre, newItem.plazo, newItem.orden, newItem.sistemaEvaluacion = item.getName(), item.getPeriod(), item.getOrder(), newEvaluationSystem 
            newItem.save()
            for evaluation in item.getEvaluations() :
                newEvaluation = Evaluacion()
                newEvaluation.nombre, newEvaluation.evaluador, newEvaluation.porcentaje, newEvaluation.hito = evaluation.getName(), evaluation.getEvaluator(), evaluation.getPercentage(), newItem 
                newEvaluation.save()
                for question in evaluation.getQuestions():
                    newQuestion = Pregunta()
                    newQuestion.pregunta, newQuestion.tipoRespuesta, newQuestion.evaluacion = question.pregunta, question.tipoRespuesta, newEvaluation
                    newQuestion.save()
Ejemplo n.º 3
0
 def __init__(self, request):
     self.evaluationSystem = QueryEvaluationSystem().getEvaluationSystemByCourseSelected(request)
Ejemplo n.º 4
0
 def createItem(self):
     self.form.item.sistemaEvaluacion = QueryEvaluationSystem().getEvaluationSystemByCourseSelected(self.form.request)
     self.form.item.orden =  len(QueryItem().getListItemsByEvaluationSystem(self.form.item.sistemaEvaluacion)) + 1
     self.form.item.save()
Ejemplo n.º 5
0
def activable(request):
    evaluationSystem = QueryEvaluationSystem().getEvaluationSystemByCourseSelected(request)
    if evaluationSystem : 
        return not evaluationSystem.isActive()
    else: return False