Browse Source

Merge branch 'master' of https://github.com/interlegis/sapl

pull/1063/head
Fábio Kaiser Rauber 8 years ago
parent
commit
d0eb200edf
  1. 33
      sapl/materia/models.py
  2. 5
      sapl/parlamentares/models.py
  3. 4
      sapl/sessao/views.py
  4. 2
      sapl/templates/base/RelatorioPresencaSessao_filter.html
  5. 11
      sapl/templates/materia/materialegislativa_filter.html
  6. 2
      sapl/templates/parlamentares/parlamentar_perfil_publico.html
  7. 2
      sapl/templates/parlamentares/public_composicaomesa_form.html
  8. 1
      sapl/templates/protocoloadm/protocolo_mostrar.html
  9. 4
      sapl/templates/sessao/presenca.html
  10. 4
      sapl/templates/sessao/presenca_ordemdia.html
  11. 9
      sapl/templates/sessao/resumo.html
  12. 11
      start.sh

33
sapl/materia/models.py

@ -4,6 +4,7 @@ import reversion
from django.contrib.auth.models import Group
from django.contrib.contenttypes.fields import GenericRelation
from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import ObjectDoesNotExist
from django.db import models
from django.utils import formats
from django.utils.translation import ugettext_lazy as _
@ -215,6 +216,22 @@ class MateriaLegislativa(models.Model):
return _('%(tipo)s%(numero)s de %(ano)s') % {
'tipo': self.tipo, 'numero': self.numero, 'ano': self.ano}
def data_entrada_protocolo(self):
'''
hack: recuperar a data de entrada do protocolo sem gerar
dependência circular
'''
from sapl.protocoloadm.models import Protocolo
if self.ano and self.numero_protocolo:
try:
return Protocolo.objects.get(
ano=self.ano,
numero=self.numero_protocolo).data
except ObjectDoesNotExist:
pass
return ''
def delete(self, using=None, keep_parents=False):
if self.texto_original:
self.texto_original.delete()
@ -668,9 +685,19 @@ class Proposicao(models.Model):
)
def __str__(self):
return '%s %s/%s' % (Proposicao._meta.verbose_name,
self.numero_proposicao,
self.ano)
if self.ano and self.numero_proposicao:
return '%s %s/%s' % (Proposicao._meta.verbose_name,
self.numero_proposicao,
self.ano)
else:
if len(self.descricao) < 30:
descricao = self.descricao[:28] + ' ...'
else:
descricao = self.descricao
return '%s %s/%s' % (Proposicao._meta.verbose_name,
self.id,
descricao)
def delete(self, using=None, keep_parents=False):
if self.texto_original:

5
sapl/parlamentares/models.py

@ -85,7 +85,8 @@ class Coligacao(models.Model):
verbose_name=_('Legislatura'))
nome = models.CharField(max_length=50, verbose_name=_('Nome'))
numero_votos = models.PositiveIntegerField(
blank=True, null=True, verbose_name=_('Nº Votos Recebidos'))
blank=True, null=True,
verbose_name=_('Nº Votos Recebidos (Coligação)'))
class Meta:
verbose_name = _('Coligação')
@ -448,7 +449,7 @@ class Mandato(models.Model):
tipo_causa_fim_mandato = models.PositiveIntegerField(blank=True, null=True)
data_fim_mandato = models.DateField(verbose_name=_('Fim do Mandato'))
votos_recebidos = models.PositiveIntegerField(
blank=True, null=True, verbose_name=_('Votos Recebidos'))
blank=True, null=True, verbose_name=_('Votos Recebidos (Mandato)'))
data_expedicao_diploma = models.DateField(
verbose_name=_('Expedição do Diploma'))
titular = models.BooleanField(

4
sapl/sessao/views.py

@ -1099,12 +1099,12 @@ class ResumoView(DetailView):
for parlamentar in Parlamentar.objects.filter(
id=orador.parlamentar.id):
partido_sigla = Filiacao.objects.filter(
parlamentar=parlamentar).first().partido.sigla
parlamentar=parlamentar).last().partido.sigla
if not partido_sigla:
partido_sigla = ''
oradores = {
'numero_ordem': orador.numero_ordem,
'parlamentar': parlamentar.nome_parlamentar,
'parlamentar': parlamentar,
'sgl_partido': partido_sigla
}
oradores_explicacoes.append(oradores)

2
sapl/templates/base/RelatorioPresencaSessao_filter.html

@ -37,7 +37,7 @@
<tbody>
{% for p in parlamentares %}
<tr>
<td><b>{{p}}</b> / {{p.filiacao_set.first.partido.sigla|default:"Sem Partido"}}</td>
<td><b>{{p}}</b> / {{p.filiacao_atual|default:"Sem Partido"}}</td>
<td>{{p.sessao_count}}</td>
<td>{{p.sessao_porc}}</td>
<td>{{p.ordemdia_count}}</td>

11
sapl/templates/materia/materialegislativa_filter.html

@ -47,6 +47,14 @@
<strong>Apresentação: </strong>{{ m.data_apresentacao }}
</br>
{% endif %}
{% if m.numeracao_set.first %}
<strong>Processo: </strong>{{ m.numeracao_set.first.numero_materia }} / {{ m.numeracao_set.first.ano_materia }}
</br>
{% endif %}
{% if m.numero_protocolo %}
<strong>Protocolo: </strong>{{m.numero_protocolo}}/{{m.ano}} &nbsp;&nbsp; <strong>Data Entrada:</strong> {{m.data_entrada_protocolo}} </br>
{% endif %}
{% if m.autoria_set.all %}
<strong>Autores:</strong>
{% for a in m.autoria_set.all %}
@ -57,7 +65,7 @@
{% endif %}
{% endfor %}
</br>
{% endif %}
{% endif %}
{% if m.tramitacao_set.last.unidade_tramitacao_destino %}
<strong>Localização Atual:</strong> &nbsp;{{m.tramitacao_set.last.unidade_tramitacao_destino}}</br>
{% endif %}
@ -79,6 +87,7 @@
{% endif %}
{% if m.tramitacao_set.last.data_tramitacao %}
<strong>Data da última Tramitação:</strong> &nbsp;{{m.tramitacao_set.last.data_tramitacao}}</br>
<strong>Ultima Ação:</strong> &nbsp; {{m.tramitacao_set.last.texto}}</br>
{% endif %}
{% if m.anexo_de.exists %}
{% for a in m.materia_anexada_set.all %}

2
sapl/templates/parlamentares/parlamentar_perfil_publico.html

@ -31,7 +31,7 @@
<div class="col-sm-8">
<div id="div_data_nascimento" class="form-group">
<p><b>Partido: </b> &nbsp {{object.filiacao_set.first.partido|default_if_none:"Não informado"}}</p>
<p><b>Partido: </b> &nbsp {{object.filiacao_atual|default_if_none:"Não informado"}}</p>
</div>
</div>

2
sapl/templates/parlamentares/public_composicaomesa_form.html

@ -51,7 +51,7 @@
<td></td>
{% endif %}
<td><a href="{% url 'sapl.parlamentares:parlamentar_detail' p.parlamentar.pk %}">{{p.parlamentar.nome_parlamentar}}</a></td>
<td>{{p.parlamentar.filiacao_set.last.partido.sigla}}</td>
<td>{{p.parlamentar.filiacao_atual}}</td>
<td>{{p.cargo}}</td>
</tr>
{% endfor %}

1
sapl/templates/protocoloadm/protocolo_mostrar.html

@ -6,6 +6,7 @@
<strong>Protocolo: </strong>{{ protocolo.numero|stringformat:'06d' }}/{{ protocolo.ano }}</br>
<strong>Assunto: </strong> {{ protocolo.assunto_ementa|default:" Não informado." }}</br>
<strong>Data Protocolo: </strong> {{ protocolo.data|date:"d/m/Y" }} - Horário: {{ protocolo.hora|date:"H:i" }}</br>
<strong>Autor:</strong> {{protocolo.autor.nome}} </br>
<strong>Interessado: </strong> {{ protocolo.interessado|default:" Não informado." }}</br>
<!-- TODO: convert if-else to custom tag -->
<strong>Natureza do Processo: </strong>{% if protocolo.tipo_processo == 0 %} Administrativo {% elif protocolo.tipo_processo == 1 %} Legislativo {% endif %}</br>

4
sapl/templates/sessao/presenca.html

@ -23,7 +23,7 @@
<div class="checkbox">
<label for="id_presenca_{{forloop.counter}}">
<input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/>
{{ parlamentar.nome_parlamentar }}
{{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}
</label>
</div>
{% endfor %}
@ -42,7 +42,7 @@
{% for parlamentar, check in view.get_presencas %}
{% if check %}
<div class="row">
<div class="col-md-6"><label for="parlamentar"> - {{ parlamentar.nome_parlamentar }}</label></div>
<div class="col-md-6"><label for="parlamentar"> - {{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}</label></div>
</div>
{% endif %}
{% endfor %}

4
sapl/templates/sessao/presenca_ordemdia.html

@ -24,7 +24,7 @@
<div class="checkbox">
<label for="id_presenca_{{forloop.counter}}">
<input type="checkbox" id="id_presenca_{{forloop.counter}}" name="presenca" value="{{ parlamentar.id }}" {% if check %} checked {% endif %}/>
{{ parlamentar.nome_parlamentar }}
{{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}
</label>
</div>
{% endfor %}
@ -44,7 +44,7 @@
{% for parlamentar, check in view.get_presencas_ordem %}
{% if check %}
<div class="row">
<div class="col-md-6"><label for="parlamentar"> - {{ parlamentar.nome_parlamentar }}</label></div>
<div class="col-md-6"><label for="parlamentar"> - {{ parlamentar.nome_parlamentar }} / {{ parlamentar.filiacao_atual }}</label></div>
</div>
{% endif %}
{% endfor %}

9
sapl/templates/sessao/resumo.html

@ -42,7 +42,8 @@
<legend>Mesa Diretora</legend>
<div class="row">
{% for m in mesa %}
<div class="col-md-12"><b>{{m.cargo}}: </b>{{m.parlamentar.nome_parlamentar}}</div>
<div class="col-md-12"><b>{{m.cargo}}:
</b>{{m.parlamentar.nome_parlamentar}} / {{ m.parlamentar.filiacao_atual }}</div>
{% endfor %}
</div>
</fieldset>
@ -52,7 +53,7 @@
<legend>Lista de Presença na Sessão</legend>
<div class="row">
{% for p in presenca_sessao %}
<div class="col-md-12">{{p}}</div>
<div class="col-md-12">{{p.nome_parlamentar}} / {{ p.filiacao_atual }}</div>
{% endfor %}
</div>
</fieldset>
@ -124,7 +125,7 @@
<legend>Lista de Presença na Ordem do Dia</legend>
<div class="row">
{% for p in presenca_ordem %}
<div class="col-md-12">{{p}}</div>
<div class="col-md-12">{{p.nome_parlamentar}} / {{ p.filiacao_atual }}</div>
{% endfor %}
</div>
</fieldset>
@ -164,7 +165,7 @@
</div>
<div class="row">
{% for o in oradores_explicacoes %}
<div class="col-md-6"><b>{{o.numero_ordem}}</b> - {{o.parlamentar}}</div>
<div class="col-md-6"><b>{{o.numero_ordem}}</b> - {{o.parlamentar.nome_parlamentar}} / {{ o.parlamentar.filiacao_atual }}</div>
<div class="col-md-6">{{o.url_discurso}}</div>
</br>
{% endfor %}

11
start.sh

@ -1,6 +1,3 @@
#!/bin/sh
create_env() {
echo "[ENV FILE] creating .env file..."
# check if file exists
@ -46,7 +43,7 @@ create_env
python3 manage.py migrate
#python3 manage.py collectstatic --no-input
python3 manage.py rebuild_index --noinput
python3 manage.py rebuild_index --noinput &
user_created=$(python3 create_admin.py 2>&1)
@ -58,12 +55,12 @@ lack_pwd=$?
if [ $user_exists -eq 0 ]; then
echo "[SUPERUSER CREATION] User admin already exists. Not creating"
fi
fi
if [ $lack_pwd -eq 0 ]; then
echo "[SUPERUSER] Environment variable $ADMIN_PASSWORD for superuser admin was not set. Leaving container"
# return -1
fi
fi
/bin/sh gunicorn_start.sh no-venv &

Loading…
Cancel
Save