Browse Source

mudanças requeridas

pull/1137/head
cristian-longhi 9 years ago
parent
commit
d32e0af952
  1. 68
      sapl/sessao/views.py
  2. 56
      sapl/templates/sessao/presenca.html
  3. 49
      sapl/templates/sessao/presenca_ordemdia.html

68
sapl/sessao/views.py

@ -29,7 +29,7 @@ from sapl.materia.models import (Autoria, DocumentoAcessorio,
from sapl.materia.views import MateriaLegislativaPesquisaView from sapl.materia.views import MateriaLegislativaPesquisaView
from sapl.norma.models import NormaJuridica from sapl.norma.models import NormaJuridica
from sapl.parlamentares.models import (Filiacao, Legislatura, Parlamentar, from sapl.parlamentares.models import (Filiacao, Legislatura, Parlamentar,
SessaoLegislativa, Mandato) ### SessaoLegislativa, Mandato)
from sapl.sessao.apps import AppConfig from sapl.sessao.apps import AppConfig
from sapl.sessao.forms import ExpedienteMateriaForm, OrdemDiaForm from sapl.sessao.forms import ExpedienteMateriaForm, OrdemDiaForm
@ -533,7 +533,7 @@ class SessaoPermissionMixin(PermissionRequiredForAppCrudMixin,
class PresencaMixin: class PresencaMixin:
def get_presencas_demais(self): def get_presencas(self):
self.object = self.get_object() self.object = self.get_object()
presencas = SessaoPlenariaPresenca.objects.filter( presencas = SessaoPlenariaPresenca.objects.filter(
@ -547,53 +547,12 @@ class PresencaMixin:
mandato_parlamentar = [p.parlamentar for p in mandato] mandato_parlamentar = [p.parlamentar for p in mandato]
for parlamentar in mandato_parlamentar: for parlamentar in mandato_parlamentar:
if parlamentar in Parlamentar.objects.filter(ativo=False): if parlamentar in presentes:
if parlamentar in presentes: yield (parlamentar, True)
yield (parlamentar, True) else:
else: yield (parlamentar, False)
yield (parlamentar, False)
def get_presencas_ativos(self):
self.object = self.get_object()
presencas = SessaoPlenariaPresenca.objects.filter(
sessao_plenaria_id=self.object.id
)
presentes = [p.parlamentar for p in presencas]
mandato = Mandato.objects.filter(
legislatura_id=self.object.legislatura_id)
mandato_parlamentar = [p.parlamentar for p in mandato]
for parlamentar in mandato_parlamentar:
if parlamentar in Parlamentar.objects.filter(ativo=True):
if parlamentar in presentes:
yield (parlamentar, True)
else:
yield (parlamentar, False)
def get_presencas_ordem_demais(self):
self.object = self.get_object()
presencas = PresencaOrdemDia.objects.filter(
sessao_plenaria_id=self.object.id
)
presentes = [p.parlamentar for p in presencas]
mandato = Mandato.objects.filter(
legislatura_id=self.object.legislatura_id)
mandato_parlamentar = [p.parlamentar for p in mandato]
for parlamentar in mandato_parlamentar:
if parlamentar in Parlamentar.objects.filter(ativo=False):
if parlamentar in presentes:
yield (parlamentar, True)
else:
yield (parlamentar, False)
def get_presencas_ordem_ativos(self): def get_presencas_ordem(self):
self.object = self.get_object() self.object = self.get_object()
presencas = PresencaOrdemDia.objects.filter( presencas = PresencaOrdemDia.objects.filter(
@ -607,11 +566,10 @@ class PresencaMixin:
mandato_parlamentar = [p.parlamentar for p in mandato] mandato_parlamentar = [p.parlamentar for p in mandato]
for parlamentar in mandato_parlamentar: for parlamentar in mandato_parlamentar:
if parlamentar in Parlamentar.objects.filter(ativo=True): if parlamentar in presentes:
if parlamentar in presentes: yield (parlamentar, True)
yield (parlamentar, True) else:
else: yield (parlamentar, False)
yield (parlamentar, False)
class PresencaView(FormMixin, PresencaMixin, DetailView): class PresencaView(FormMixin, PresencaMixin, DetailView):
@ -637,7 +595,7 @@ class PresencaView(FormMixin, PresencaMixin, DetailView):
sessao_plenaria_id=self.object.id) sessao_plenaria_id=self.object.id)
# Id dos parlamentares presentes # Id dos parlamentares presentes
marcados = request.POST.getlist('presenca_ativos') + request.POST.getlist('presenca_demais') marcados = request.POST.getlist('presenca_ativos') + request.POST.getlist('presenca_inativos')
# Deletar os que foram desmarcadors # Deletar os que foram desmarcadors
deletar = set(set(presentes_banco) - set(marcados)) deletar = set(set(presentes_banco) - set(marcados))
@ -745,7 +703,7 @@ class PresencaOrdemDiaView(FormMixin, PresencaMixin, DetailView):
sessao_plenaria_id=pk) sessao_plenaria_id=pk)
# Id dos parlamentares presentes # Id dos parlamentares presentes
marcados = request.POST.getlist('presenca_ativos') + request.POST.getlist('presenca_demais') marcados = request.POST.getlist('presenca_ativos') + request.POST.getlist('presenca_inativos')
# Deletar os que foram desmarcadors # Deletar os que foram desmarcadors
deletar = set(set(presentes_banco) - set(marcados)) deletar = set(set(presentes_banco) - set(marcados))

56
sapl/templates/sessao/presenca.html

@ -27,35 +27,29 @@
</div> </div>
</div> </div>
<br /> <br />
<div id="ativos">
<div class="controls"> <div class="controls">
{% for parlamentar, check in view.get_presencas_ativos %} {% for parlamentar, check in view.get_presencas %}
<div class="checkbox"> {% if parlamentar.ativo %}
<label for="id_presenca_{{forloop.counter}}"> <div class="checkbox">
<input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_ativos" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/> <label for="id_presenca_{{forloop.counter}}">
{{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }} <input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_ativos" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/>
</label> {{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}
</div> </label>
{% endfor %} </div>
</div> {% else %}
</div> <div class="checkbox inativos" style="display:none;">
<label for="id_presenca_{{forloop.counter}}">
<div id="demais" style="display:none;"> <input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_inativos" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/>
<div class="controls"> {{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}
{% for parlamentar, check in view.get_presencas_demais %} </label>
<div class="checkbox"> </div>
<label for="id_presenca_{{forloop.counter}}"> {% endif %}
<input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_demais" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/> {% endfor %}
{{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }} </div>
</label>
</div>
{% endfor %}
</div>
</div>
<br /> <br />
<input type="submit" value="Salvar" class="btn btn-primary" /> <input type="submit" value="Salvar" class="btn btn-primary" />
</form> </form>
@ -86,7 +80,7 @@
$(this).trigger('click'); $(this).trigger('click');
}); });
if (($('[name=ativos]').is(':checked')) == false) { if (($('[name=ativos]').is(':checked')) == false) {
$('[name=presenca_demais]').each(function() { $('[name=presenca_inativos]').each(function() {
$(this).prop('checked', event.target.checked ? 'checked': null); $(this).prop('checked', event.target.checked ? 'checked': null);
$(this).trigger('click'); $(this).trigger('click');
}); });
@ -95,11 +89,7 @@
} }
function escondeInativos() { function escondeInativos() {
if ($('[name=ativos]').is(':checked')) { $(".inativos").toggle();
document.getElementById("demais").style.display = 'none';
} else {
document.getElementById("demais").style.display = 'block';
}
} }
</script> </script>
{% endblock %} {% endblock %}

49
sapl/templates/sessao/presenca_ordemdia.html

@ -30,32 +30,25 @@
<br /> <br />
<div id="ativos">
<div class="controls"> <div class="controls">
{% for parlamentar, check in view.get_presencas_ordem_ativos %} {% for parlamentar, check in view.get_presencas_ordem %}
<div class="checkbox"> {% if parlamentar.ativo %}
<label for="id_presenca_{{forloop.counter}}"> <div class="checkbox">
<input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_ativos" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/> <label for="id_presenca_{{forloop.counter}}">
{{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }} <input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_ativos" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/>
</label> {{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}
</div> </label>
{% endfor %} </div>
{% else %}
<div class="checkbox inativos" style="display:none;">
<label for="id_presenca_{{forloop.counter}}">
<input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_inativos" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/>
{{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}
</label>
</div>
{% endif %}
{% endfor %}
</div> </div>
</div>
<div id="demais" style="display:none;">
<div class="controls">
{% for parlamentar, check in view.get_presencas_ordem_demais %}
<div class="checkbox">
<label for="id_presenca_{{forloop.counter}}">
<input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca_demais" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/>
{{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}
</label>
</div>
{% endfor %}
</div>
</div>
<br /> <br />
<input type="submit" value="Salvar" class="btn btn-primary" /> <input type="submit" value="Salvar" class="btn btn-primary" />
@ -88,7 +81,7 @@
$(this).trigger('click'); $(this).trigger('click');
}); });
if (($('[name=ativos]').is(':checked')) == false) { if (($('[name=ativos]').is(':checked')) == false) {
$('[name=presenca_demais]').each(function() { $('[name=presenca_inativos]').each(function() {
$(this).prop('checked', event.target.checked ? 'checked': null); $(this).prop('checked', event.target.checked ? 'checked': null);
$(this).trigger('click'); $(this).trigger('click');
}); });
@ -97,11 +90,7 @@
} }
function escondeInativos() { function escondeInativos() {
if ($('[name=ativos]').is(':checked')) { $(".inativos").toggle();
document.getElementById("demais").style.display = 'none';
} else {
document.getElementById("demais").style.display = 'block';
}
} }
</script> </script>
{% endblock %} {% endblock %}

Loading…
Cancel
Save