Browse Source

Validade votes in votação

pull/7/head
Eduardo Edson Batista Cordeiro Alves 9 years ago
parent
commit
1bcec8ade6
  1. 13
      sessao/views.py
  2. 45
      templates/sessao/votacao/votacao.html

13
sessao/views.py

@ -2,6 +2,7 @@ from datetime import datetime
from re import sub
from django import forms
from django.forms.util import ErrorList
from django.core.exceptions import ObjectDoesNotExist
from django.core.urlresolvers import reverse
from django.utils.html import strip_tags
@ -1220,9 +1221,10 @@ class ExplicacaoEdit(FormMixin, sessao_crud.CrudDetailView):
class VotacaoForm(forms.Form):
votos_sim = forms.CharField(required=True)
votos_nao = forms.CharField(required=True)
abstencoes = forms.CharField(required=True)
votos_sim = forms.CharField(required=True, label='Sim')
votos_nao = forms.CharField(required=True, label='Não')
abstencoes = forms.CharField(required=True, label='Abstenções')
total_votos = forms.CharField(required=False, label='total')
class VotacaoEdit(forms.Form):
@ -1342,6 +1344,7 @@ class VotacaoView(FormMixin, sessao_crud.CrudDetailView):
def post(self, request, *args, **kwargs):
self.object = self.get_object()
form = VotacaoForm(request.POST)
context = self.get_context_data(object=self.object)
if form.is_valid():
materia_id = kwargs['oid']
@ -1357,9 +1360,7 @@ class VotacaoView(FormMixin, sessao_crud.CrudDetailView):
qtde_presentes -= 1
if (qtde_votos > qtde_presentes or qtde_votos < qtde_presentes):
# context.update ({'error_message':
# 'A quantidade de votos e de
# presentes não correspondem.'})
form._errors["total_votos"] = ErrorList([u"aaaaa"])
return self.form_invalid(form)
elif (qtde_presentes == qtde_votos):
try:

45
templates/sessao/votacao/votacao.html

@ -2,10 +2,25 @@
{% load i18n %}
{% block detail_content %}
<form method="post">
<form id="form-votacao" method="post">
{% csrf_token %}
<fieldset>
{% if form.errors %}
<div class="alert-box alert">
<b><h4>Os seguintes erros foram encontrados:</h4></b>
<ul>
{% for field in form %}
{% if field.label == 'total'%}
<li>O total de votos não corresponde com a quantidade de presentes!</li>
{% endif %}
{% if field.errors and not field.label == 'total' %}
<li>O campo <b>{{field.label}}</b> é obrigatório!</li>
{% endif %}
{% endfor %}
</ul>
</div>
{% endif %}
<legend>{{votacao_titulo}}</legend>
<div>
<b>Matéria:</b> {{materia.materia|safe}}
@ -14,6 +29,7 @@
<br />
<br />
<b>Total presentes:</b> {{total_presentes}} (com presidente)
<input type="hidden" id="total_votos" name="total_votos">
</div>
<br />
@ -50,7 +66,30 @@
</ul>
<br /><br />
<input type="submit" value="Salvar" />
<input id="salvar-votacao" name="salvar-votacao" type="submit" value="Salvar" />
</fieldset>
</form>
{% endblock detail_content %}
{% endblock detail_content %}
{% block foot_js %}
<script language="JavaScript">
// $(document).ready(function() {
// $('#salvar-votacao').click(function(e){
// var presentes = Number($("#total_presentes").val())
// var sim = Number($("#votos_sim").val())
// var nao = Number($("#votos_nao").val())
// var abstencoes = Number($("#abstencoes").val())
// var total = sim + nao + abstencoes
// if (total < presentes) {
// alert('quantidade invalida')
// return false;
// }
// $("#form-votacao").submit()
// });
// });
</script>
{% endblock %}
Loading…
Cancel
Save