def configuracao(request): """Configuração de usuário""" esquema = FormConfigurar().bind(request=request) esquema.title = "Configuração de usuário" form = deform.Form(esquema, buttons=("Salvar",)) if "Configurar" in request.POST: # Validação do formulário try: form.validate(request.POST.items()) except deform.ValidationFailure as e: return {"form": e.render()} # Criação e inserção cidadao = Cidadao("", "") cidadao = merge_session_with_post(cidadao, request.POST.items()) request.db[cidadao.nome] = cidadao # request.db.commit() transaction.commit() # request.session.flash(u"Usuário registrado com sucesso.") # request.session.flash(u"Agora você já pode logar com ele.") return HTTPFound(location=request.route_url("lista")) else: # Apresentação do formulário return {"form": form.render()}
def rcad_senha(request): """Redefinir senha de usuário""" esquema = FormRecadSenha().bind(request=request) esquema.title = "Redefinir senha" cidadao = Cidadao("","") form = deform.Form(esquema, buttons=('Salvar',)) if 'Salvar' in request.POST: # Validação do formulário try: appstruct = form.validate(request.POST.items()) except deform.ValidationFailure as e: return {'form': e.render()} #validar token, se ok, merge session cidadao = merge_session_with_post(cidadao, request.POST.items()) transaction.commit() return HTTPFound(location=request.route_url('usuario')) else: return{'form':form.render()}
def inserir_ponto(request): """ Página para inserir novos pontos/atividades no mapa pelo usuário """ esquema = FormInserirP().bind(request=request) esquema.title = "Inserir ponto no mapa" form = deform.Form(esquema, buttons=('Inserir', 'Cancelar')) #não se se isto fica aqui ou no models if not request.db.has_key("atvTree"): request.db["atvTree"] = OOBTree() if 'Inserir' in request.POST: try: form.validate(request.POST.items()) except deform.ValidationFailure as e: return {'form': e.render()} if(authenticated_userid(request)): dadosSite = request.db['dadosSite'] # Criação e inserção atividade = Atividade_cidadao() atividade = merge_session_with_post(atividade, request.POST.items()) #inserir id para a atividade? atividade.data = datetime.now() atividade.cidadao = authenticated_userid(request) atividade.id = dadosSite.proxId request.db['atvTree'][atividade.id] = atividade dadosSite.proxId = dadosSite.proxId + 1 #chama função para inserir na lista de atualizações Dados_site.addAtual(dadosSite, atividade) Dados_site.addAtvUsr(dadosSite) transaction.commit() request.session.flash(u"Atividade de usuário cadastrada com sucesso.") #retorno -> levar atividade inserida return HTTPFound(location=request.route_url('orcamentoId', id = atividade.id)) else: return {'form': form.render()}
def cadastro(request): """Cadastro de usuário""" # soh eh rodado 1 vez... tem que colocar na configurcao ou coisa assim?... # Ensure that a ’userdb’ key is present # in the root if not request.db.has_key("usrTree"): request.db["usrTree"] = OOBTree() esquema = FormCadastrar().bind(request=request) esquema.title = "Cadastrar novo usuário" form = deform.Form(esquema, buttons=('Cadastrar',)) if 'Cadastrar' in request.POST: # Validação do formulário try: form.validate(request.POST.items()) except deform.ValidationFailure as e: return {'form': e.render()} #deslogando usuário, caso haja algum headers = forget(request) # Criação e inserção cidadao = Cidadao("","") cidadao = merge_session_with_post(cidadao, request.POST.items()) #tchau lista #request.db['cidadaos'][cidadao.email] = cidadao request.db['usrTree'][cidadao.email] = cidadao dadosSite = request.db['dadosSite'] #chama função para atualizar contadores Dados_site.addUsr(dadosSite) transaction.commit() request.session.flash(u"Usuário registrado com sucesso.") request.session.flash(u"Agora você já pode logar com ele.") return HTTPFound(location=request.route_url('inicial'), headers = headers) else: # Apresentação do formulário return {'form': form.render()}
def configuracao(request): """Configuração de usuário""" cidadao = Cidadao("","") cidadao = request.db["usrTree"][authenticated_userid(request)] #verificar se cidadão está preenchido appstruct = record_to_appstruct(cidadao) esquema = FormConfigurar().bind(request=request) esquema.title = "Configuração de usuário" form = deform.Form(esquema, buttons=('Salvar', 'Excluir')) if 'Salvar' in request.POST: # Validação do formulário cidadao = merge_session_with_post(cidadao, request.POST.items()) appstruct = record_to_appstruct(cidadao) try: esquema = FormConfigurar().bind(request=request) esquema.title = "Configuração de usuário" form = deform.Form(esquema, buttons=('Salvar', 'Excluir')) form.render(appstruct) appstruct = form.validate(request.POST.items()) except deform.ValidationFailure as e: return {'form': e.render()} transaction.commit() return HTTPFound(location=request.route_url('usuario')) elif 'Excluir' in request.POST: del request.db["usrTree"][authenticated_userid(request)] transaction.commit() headers = forget(request) return HTTPFound(location=request.route_url('inicial')) else: # Apresentação do formulário return{'form':form.render(appstruct)}