Beispiel #1
0
    def post(self):
        user = self.get_current_user()
        msg = ""
            
        #Email agora é um array
        emails = self.get_argument("email", "")
        email_array = list(set(emails.split()))
        
        msg += self._validate_emails(email_array)
        
        user_keys = core.database.REGISTRY[user]['mykeys']
        lista_invited = [ model.MAGKEYS[key]["email"] for key in user_keys]
            
        invited_before = self._already_invited(email_array,lista_invited)
        
        if invited_before:
            for mail in invited_before:
                msg += u"Você já convidou o e-mail: %s<br/>" %mail
        
        for email in email_array:
            if emailExists(email):
                msg += u"Já existe um usuário cadastrado com o email: %s<br/>" % email
        
        # Comunidades é uma lista das comunidades default do usuário
        # que vai se cadastrar com esta chave
        comunidades = []
        for comu in list(set(self.get_argument("comunidades", "").split())):
            if isACommunity(comu):
                if isOwner(user, comu) or isMember(user, PRIV_GLOBAL_ADMIN):
                    comunidades.append(comu)
                else:
                    msg += u"Você deve ser dono ou administrador da comunidade %s.<br/>" % comu
                    
            else:
                msg += u"Comunidade %s não existente.<br/>" % comu
        
        if not msg:
            [self._send_invites(mail, user, comunidades) for mail in email_array]

            request_id = self.get_argument("request_id", "")
            if request_id != "":
                request_data = _EMPTYREQUESTINVITE()
                request_data.update(model.REQUESTINVITE[request_id])
                request_data["estado"] = "aprovado"
                model.REQUESTINVITE[request_id] = request_data
        else:
            msg += u"Os convites não foram enviados.<br/>"

        if msg:
            showInvitesPage(self, user, msg, email_list=emails, community_list=self.get_argument("comunidades", ""))
        else:
            showInvitesPage(self, user, u"Convites enviados com sucesso.<br/>")
Beispiel #2
0
    def post(self, registry_id, form):
        
        form_id = "%s/%s" % (registry_id, form)
        
        request_data = _EMPTYREQUESTINVITE()
        request_data["nome"] = self.get_argument("nome","")
        request_data["email"] = self.get_argument("email","")
        request_data["campolivre"] = self.get_argument("campolivre","")

        if request_data["nome"]=="" or request_data["email"]=="" or request_data["campolivre"]=="":
            formdata = _EMPTYREQUESTINVITEFORM()
            formdata.update(model.REQUESTINVITEFORM[form_id])
            self.render("modules/invites/show-form-invite.html", \
                        MSG=u"Todos os campos são obrigatórios", \
                        FORMDATA=formdata, \
                        NOMEPAG="convites")
            
        elif emailExists(request_data["email"]):
            msg = u"O email %s já está cadastrado na plataforma. <a href='/forgotpasswd'>Clique aqui para recuperar a sua senha</a>." % request_data["email"]
            formdata = _EMPTYREQUESTINVITEFORM()
            formdata.update(model.REQUESTINVITEFORM[form_id])
            self.render("modules/invites/show-form-invite.html", \
                        MSG=msg, \
                        FORMDATA=formdata, \
                        NOMEPAG="convites")
            
        else:
            request_data["owner"] = registry_id
            request_data["nome_form"] = form_id
            request_data["estado"] = "pendente"
            request_data["data_cri"] = str(datetime.now())
            
            request_id = uuid4().hex
            model.REQUESTINVITE[request_id] = request_data
            
            formdata = _EMPTYREQUESTINVITEFORM()
            formdata.update(model.REQUESTINVITEFORM[form_id])
            msg = formdata["resposta"]
            self.render("home.html", MSG=msg, \
                        NOMEPAG="convites")