Ejemplo n.º 1
0
    def post(self, registry_id, id):
        user = self.get_current_user()
        _quiz = model.Quiz().retrieve(id)
       
        msg = ""
       
        _quiz.titulo = self.get_argument("titulo","")
        _quiz.descricao = self.get_argument("descricao","")
        _quiz.data_inicio = self.get_argument("data_start","")       
        _quiz.data_fim = self.get_argument("data_end","")
        _quiz.exibicao = self.get_argument("exibicao", "")      
       
       
        if _quiz.titulo == "":
            msg += u"Título do quiz não preenchido.<br/>"
        
        if not _quiz.descricao:
            msg += u"Descrição do quiz não preenchida.<br/>"      
       
       
        if not _quiz.data_inicio:
            msg += u"O quiz deve possuir uma data de início.<br/>"       
           
       
        if not _quiz.data_fim:
            msg += u"O quiz deve possuir uma data de encerramento.<br/>"
       
        if not msg and not maiorData(_quiz.data_fim, _quiz.data_inicio, short=True):
            msg += u"A Data/hora de encerramento não pode ser anterior à Data/hora de início.<br/>"
       
        if msg:
           self.render("modules/quiz/quiz-edit.html",  NOMEPAG=u"Quiz", QUIZDATA=_quiz, REGISTRY_ID=registry_id, \
                                                MSG=msg) 
           return
                      
        else:
            # registro da atualização
            # guarda-se apenas a ultima alteração
           
            _quiz.data_alt = str(datetime.now())
            _quiz.alterado_por = user     
                       
            _quiz.save()
           

            log.model.log(user, u'alterou quiz em', objeto=registry_id, tipo="quiz",link="/quiz/%s")
            self.redirect("/quiz/%s"%(registry_id))
Ejemplo n.º 2
0
    def post(self, registry_id, id):
        user = self.get_current_user()
        _atividade = model.Activity().retrieve(id)
        
        members = []
        if isACommunity(registry_id):
            _community = core.model.Registry().retrieve(registry_id)
            (num_members, members) = _community.getMembersList()
        
        msg = ""
        titulo = self.get_argument("titulo","")
        if not titulo:
            msg = u"A atividade precisa ter um titulo.<br/>"
            
        if _atividade.subtype== "comunity":
            _atividade.encarregados = self.get_arguments("encarregados")
        
        _atividade.titulo = titulo
        _atividade.observacao = self.get_argument("observacao",'')
        _atividade.data_start = self.get_argument("data_start",'')
        _atividade.data_end = self.get_argument("data_end",'')
        _atividade.data_conclusion = self.get_argument("data_conclusion",'')
        _atividade.prioritario = self.get_argument("prioritario",'N')
        _atividade.status = self.get_argument("status","")

        if _atividade.data_end and _atividade.data_start and not maiorData(_atividade.data_end, _atividade.data_start, short=True):
            msg += u"A Data de encerramento não pode ser anterior à Data de início.<br/>"
        
        if msg: 
            self.render("modules/activity/activity-edit.html",  NOMEPAG=u"atividades", ATIVIDADE=_atividade, MEMBERS=members, \
                                                                REGISTRY_ID=registry_id, MSG=msg)  
            return       
        
        doc_id = id
        _atividade.data_alt = str(datetime.now())
        _atividade.type="activity"
        _atividade.registry_id = registry_id
        _atividade.alterado_por = user
        _atividade.save(id=doc_id)
        
        log.model.log(user, u'alterou uma atividade em', objeto=registry_id, tipo="activity", link="/activity/%s"%registry_id)
        self.render("modules/activity/activity-edit.html",  NOMEPAG=u"atividades", MEMBERS=members, ATIVIDADE=_atividade, \
                    REGISTRY_ID=registry_id, MSG=u"Alteração realizada com sucesso")  
Ejemplo n.º 3
0
 def post(self, registry_id): 
     user = self.get_current_user()
     subtype = self.get_argument ("subtype","")
     if subtype == "":
         raise HTTPError (400)
         return
     
     _quiz = model.Quiz()
     _quiz.titulo = self.get_argument("titulo","")
     _quiz.questions = self.get_arguments("questions")
     _quiz.descricao = self.get_argument("descricao","")
     _quiz.data_inicio = self.get_argument("data_start","")        
     _quiz.data_fim = self.get_argument("data_end","") 
     _quiz.exibicao = self.get_argument("exibicao", "")       
     
     msg = ""
     if _quiz.titulo == "":
         msg += u"Título do quiz não preenchido.<br/>"
     
     else:
         quiz_id = remove_special_chars(remove_diacritics(_quiz.titulo.replace(" ","_")))
         if quiz_id == "":
              msg += u"Título do quiz inválido<br/>"
              
     if not _quiz.descricao:
         msg += u"Descrição do quiz não preenchida.<br/>"       
     
     if not _quiz.questions:
         msg += u"Selecione pelo menos uma questão para fazer parte do quiz.<br/>"    
     
     if not _quiz.data_inicio:
         msg += u"O quiz deve possuir uma data de início.<br/>"        
         
     if not _quiz.data_fim:
         msg += u"O quiz deve possuir uma data de encerramento.<br/>"
     
     if not msg and not maiorData(_quiz.data_fim, _quiz.data_inicio, short=True):
         msg += u"A Data/hora de encerramento não pode ser anterior à Data/hora de início.<br/>"
     
     if msg:
         self.render("modules/quiz/quiz-form.html", NOMEPAG=u"Quiz", QUIZ=_quiz, REGISTRY_ID=registry_id, \
                                              MSG=msg, \
                                              QUESTIONS=self.prepareQuestionList(question.model.Question.listObjectsBySubtype(subtype, registry_id)), \
                                              TITLE=u"Criar Quiz ("+TIPO_QUIZ[subtype]+")", \
                                              LINKS=[], SUBTYPE=subtype )  
         return
                    
     else:
         _quiz.data_cri = str(datetime.now())
         _quiz.data_alt = _quiz.data_cri
         _quiz.service = "quiz"
         _quiz.type = "quiz"
         _quiz.subtype = subtype
         doc_id = uuid4().hex
         _quiz.registry_id = registry_id
         _quiz.owner = user
         try:
             _quiz.save(id=doc_id)
         except Exception as detail:
             self.render("modules/quiz/quiz-form.html",  NOMEPAG=u"Questionário", QUIZDATA=_quiz, REGISTRY_ID=registry_id, \
                                              QUESTIONS=self.prepareQuestionList(question.model.Question.listObjectsBySubtype(subtype, registry_id)), \
                                              SUBTYPE=subtype,\
                                              TITLE=u"Criar Quiz ("+TIPO_QUIZ[subtype]+")", \
                                              LINKS=[], \
                                              MSG=u"Já existe um quiz com este título.")
             return
             
         log.model.log(user, u'criou quiz em', objeto=registry_id, tipo="quiz",link="/quiz/%s"%quiz_id)
         self.redirect("/quiz/%s" % registry_id)