Browse Source

Add Materia form

pull/7/head
Edward Ribeiro 10 years ago
parent
commit
0156f67039
  1. 13
      sessao/urls.py
  2. 35
      sessao/views.py
  3. 40
      templates/sessao/materia_ordemdia.html
  4. 1
      templates/sessao/sessaoplenaria_detail.html

13
sessao/urls.py

@ -1,10 +1,11 @@
from django.conf.urls import include, url from django.conf.urls import include, url
from sessao.views import (ExpedienteView, MesaView, OradorExpedienteDelete, from sessao.views import (ExpedienteView, MateriaOrdemDiaView, MesaView,
OradorExpedienteEdit, OradorExpedienteView, OradorExpedienteDelete, OradorExpedienteEdit,
PainelView, PresencaOrdemDiaView, PresencaView, OradorExpedienteView, PainelView,
sessao_crud, tipo_expediente_crud, PresencaOrdemDiaView, PresencaView, sessao_crud,
tipo_resultado_votacao_crud, tipo_sessao_crud) tipo_expediente_crud, tipo_resultado_votacao_crud,
tipo_sessao_crud)
urlpatterns_sessao = sessao_crud.urlpatterns + [ urlpatterns_sessao = sessao_crud.urlpatterns + [
url(r'^(?P<pk>\d+)/expediente$', url(r'^(?P<pk>\d+)/expediente$',
@ -23,6 +24,8 @@ urlpatterns_sessao = sessao_crud.urlpatterns + [
url(r'^(?P<pk>\d+)/oradorexpediente/editar/(?P<oid>\d+)$', url(r'^(?P<pk>\d+)/oradorexpediente/editar/(?P<oid>\d+)$',
OradorExpedienteEdit.as_view(), name='oradoreditar'), OradorExpedienteEdit.as_view(), name='oradoreditar'),
url(r'^(?P<pk>\d+)/mesa$', MesaView.as_view(), name='mesa'), url(r'^(?P<pk>\d+)/mesa$', MesaView.as_view(), name='mesa'),
url(r'^(?P<pk>\d+)/materiaordemdia$',
MateriaOrdemDiaView.as_view(), name='materiaordemdia')
] ]
sessao_urls = urlpatterns_sessao, sessao_crud.namespace, sessao_crud.namespace sessao_urls = urlpatterns_sessao, sessao_crud.namespace, sessao_crud.namespace

35
sessao/views.py

@ -1,8 +1,11 @@
from datetime import datetime
from django import forms from django import forms
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from django.views.generic.edit import FormMixin from django.views.generic.edit import FormMixin
from extra_views import InlineFormSetView from extra_views import InlineFormSetView
from materia.models import TipoMateriaLegislativa
from parlamentares.models import Parlamentar from parlamentares.models import Parlamentar
from sapl.crud import build_crud from sapl.crud import build_crud
@ -216,6 +219,38 @@ class PresencaOrdemDiaView(FormMixin, sessao_crud.CrudDetailView):
yield (parlamentar, True) yield (parlamentar, True)
class MateriaOrdemDiaForm(forms.Form):
numero_ordem = forms.IntegerField(required=True)
class MateriaOrdemDiaView(FormMixin, sessao_crud.CrudDetailView):
template_name = 'sessao/materia_ordemdia.html'
form_class = MateriaOrdemDiaForm
def get(self, request, *args, **kwargs):
self.object = self.get_object()
context = self.get_context_data(object=self.object)
tipo_materia = TipoMateriaLegislativa.objects.all()
now = datetime.now()
data_sessao = "%s/%s/%s" % (now.day, now.month, now.year)
tipo_sessao = TipoSessaoPlenaria.objects.all()
tipo_votacao = ExpedienteMateria.TIPO_VOTACAO_CHOICES
ano_materia = now.year
context.update({'data_sessao': data_sessao,
'tipo_sessao': tipo_sessao,
'tipo_materia': tipo_materia,
'tipo_votacao': tipo_votacao,
'ano_materia': ano_materia})
return self.render_to_response(context)
class OradorForm(forms.Form): class OradorForm(forms.Form):
numero_ordem = forms.IntegerField(required=True) numero_ordem = forms.IntegerField(required=True)
parlamentar = forms.CharField(required=False, max_length=20) parlamentar = forms.CharField(required=False, max_length=20)

40
templates/sessao/materia_ordemdia.html

@ -0,0 +1,40 @@
{% extends "sessao/sessaoplenaria_detail.html" %}
{% load i18n %}
{% block detail_content %}
<form method="POST">
{% csrf_token %}
Data da Sessão:
<input type="text" id="data_sessao" name="data_sessao" length="10" maxlength="10" disabled="disabled" value="{{data_sessao}}" />
Tipo da Sessão:
<select id="tipo_sessao" name="tipo_sessao" >
{% for tipo in tipo_sessao %}
<option value="{{tipo.id}}">{{tipo.nome}}</option>
{% endfor %}
</select>
Número Ordem:
<input type="text" id="numero_ordem" name="numero_ordem"/>
</br>
Tipo Matéria:
<select id="tipo_materia" name="tipo_materia">
{% for tipo in tipo_materia %}
<option value="{{tipo.id}}">{{tipo.descricao}}</option>
{% endfor %}
</select>
Número Matéria:
<input type="text" id="numero_materia" name="numero_materia"/>
Ano Matéria:
<input type="text" id="ano_materia" name="ano_materia" value="{{ano_materia}}" />
Tipo Votação:
<select id="tipo_votacao" name="tipo_votacao">
{% for id, descricao in tipo_votacao %}
<option value="{{id}}">{{descricao}}</option>
{% endfor %}
</select>
</br>
Ementa:
<textarea cols="10" rows="10"></textarea>
<input type="submit" value="Salvar" />
</form>
{% endblock detail_content %}

1
templates/sessao/sessaoplenaria_detail.html

@ -10,5 +10,6 @@
<dd><a href="{% url 'sessaoplenaria:oradorexpediente' object.pk %}" class="button secondary">{% trans 'Oradores do Expediente' %}</a></dd> <dd><a href="{% url 'sessaoplenaria:oradorexpediente' object.pk %}" class="button secondary">{% trans 'Oradores do Expediente' %}</a></dd>
<dd><a href="{% url 'sessaoplenaria:mesa' object.pk %}" class="button secondary">{% trans 'Mesa' %}</a></dd> <dd><a href="{% url 'sessaoplenaria:mesa' object.pk %}" class="button secondary">{% trans 'Mesa' %}</a></dd>
<dd><a href="{% url 'sessaoplenaria:painel' object.pk %}" class="button secondary">{% trans 'Painel Eletrônico' %}</a></dd> <dd><a href="{% url 'sessaoplenaria:painel' object.pk %}" class="button secondary">{% trans 'Painel Eletrônico' %}</a></dd>
<dd><a href="{% url 'sessaoplenaria:materiaordemdia' object.pk %}" class="button secondary">{% trans 'Matérias' %}</a></dd>
</dl> </dl>
{% endblock sections_nav %} {% endblock sections_nav %}

Loading…
Cancel
Save