From 4a1cbb65cc2161b4418f9d775d21f41d57eb6ee9 Mon Sep 17 00:00:00 2001 From: Felipe Vieira Date: Fri, 2 Dec 2011 19:24:10 +0000 Subject: [PATCH] validando categorias 1 e 2 --- sigi/apps/diagnosticos/views.py | 35 +++++++++++++++++-- ...ticos_categoria_casa_legislativa_form.html | 1 + .../diagnosticos_categoria_contatos_form.html | 2 ++ 3 files changed, 35 insertions(+), 3 deletions(-) diff --git a/sigi/apps/diagnosticos/views.py b/sigi/apps/diagnosticos/views.py index 9534fc4..e54b163 100644 --- a/sigi/apps/diagnosticos/views.py +++ b/sigi/apps/diagnosticos/views.py @@ -85,15 +85,17 @@ def categoria_detalhes(request, id_diagnostico, id_categoria): instance=diagnostico, category=id_categoria) if form.is_valid(): form.save() + resposta = { + 'mensagem': 'sucesso' + } else: # Montando a estrutura das mensagens de erro no formato JSON resposta = { 'mensagem': 'erro', 'erros': form.errors } - json = simplejson.dumps(resposta) - print json - return HttpResponse(json, mimetype="application/json") + json = simplejson.dumps(resposta) + return HttpResponse(json, mimetype="application/json") else: form = DiagnosticoMobileForm(instance=diagnostico, category=id_categoria) @@ -121,6 +123,17 @@ def categoria_casa_legislativa(request, id_diagnostico): instance=casa_legislativa) if form.is_valid(): form.save() + resposta = { + 'mensagem': 'sucesso' + } + else: + # Montando a estrutura das mensagens de erro no formato JSON + resposta = { + 'mensagem': 'erro', + 'erros': form.errors + } + json = simplejson.dumps(resposta) + return HttpResponse(json, mimetype="application/json") else: form = CasaLegislativaMobileForm(instance=casa_legislativa) @@ -150,10 +163,26 @@ def categoria_contatos(request, id_diagnostico): forms = [FuncionariosMobileForm( request.POST, prefix=f.setor, instance=f) for f, c in funcionarios] + resposta = { + 'mensagem': 'sucesso', + 'erros' : {} + } + # valida e salva um formulario por vez for form in forms: if form.is_valid(): form.save() + else: + # Montando a estrutura das mensagens de erro no formato JSON + resposta['mensagem'] = 'erro' + resposta['erros'].update(form.errors) + for form_telefones in form.telefones.forms: + for key, value in form_telefones.errors.iteritems(): + key = form_telefones.prefix + "-" + key + resposta['erros'][key] = value + + json = simplejson.dumps(resposta) + return HttpResponse(json, mimetype="application/json") else: forms = [FuncionariosMobileForm(prefix=f.setor, instance=f) for f, c in funcionarios] diff --git a/sigi/templates/diagnosticos/diagnosticos_categoria_casa_legislativa_form.html b/sigi/templates/diagnosticos/diagnosticos_categoria_casa_legislativa_form.html index 090879b..9dfe475 100644 --- a/sigi/templates/diagnosticos/diagnosticos_categoria_casa_legislativa_form.html +++ b/sigi/templates/diagnosticos/diagnosticos_categoria_casa_legislativa_form.html @@ -31,6 +31,7 @@
{{ field }} +
{% endfor %} diff --git a/sigi/templates/diagnosticos/diagnosticos_categoria_contatos_form.html b/sigi/templates/diagnosticos/diagnosticos_categoria_contatos_form.html index 4c0cc57..a9f7e60 100644 --- a/sigi/templates/diagnosticos/diagnosticos_categoria_contatos_form.html +++ b/sigi/templates/diagnosticos/diagnosticos_categoria_contatos_form.html @@ -24,6 +24,7 @@
{{ field }} +
{% endfor %}

Telefones

@@ -32,6 +33,7 @@ {{ form.tipo }} {{ form.numero}} {% for field in form.hidden_fields %} {{ field }} + {% endfor %} {% endfor %}