diff --git a/sigi/apps/eventos/admin.py b/sigi/apps/eventos/admin.py index 82fb986..271c713 100644 --- a/sigi/apps/eventos/admin.py +++ b/sigi/apps/eventos/admin.py @@ -66,8 +66,8 @@ class EventoAdmin(admin.ModelAdmin): date_hierarchy = 'data_inicio' list_display = ('nome', 'tipo_evento', 'status', 'data_inicio', 'data_termino', 'municipio', 'solicitante') - list_filter = ('status', 'tipo_evento', 'virtual', 'municipio__uf', - 'solicitante') + list_filter = ('status', 'tipo_evento', 'tipo_evento__categoria', 'virtual', + 'municipio__uf', 'solicitante') raw_id_fields = ('casa_anfitria', 'municipio',) search_fields = ('nome', 'tipo_evento__nome', 'casa_anfitria__search_text', 'municipio__search_text', 'solicitante') diff --git a/sigi/apps/eventos/migrations/0009_tipoevento_categoria.py b/sigi/apps/eventos/migrations/0009_tipoevento_categoria.py new file mode 100644 index 0000000..a81069b --- /dev/null +++ b/sigi/apps/eventos/migrations/0009_tipoevento_categoria.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('eventos', '0008_auto_20211104_1253'), + ] + + operations = [ + migrations.AddField( + model_name='tipoevento', + name='categoria', + field=models.CharField(default='E', max_length=1, verbose_name='Categoaria', choices=[(b'C', 'Curso'), (b'E', 'Encontro'), (b'O', 'Oficina'), (b'S', 'Semin\xe1rio'), (b'V', 'Visita')]), + preserve_default=False, + ), + ] diff --git a/sigi/apps/eventos/models.py b/sigi/apps/eventos/models.py index 964997c..2eb1eed 100644 --- a/sigi/apps/eventos/models.py +++ b/sigi/apps/eventos/models.py @@ -11,8 +11,20 @@ from sigi.apps.servidores.models import Servidor from django.core.exceptions import ValidationError class TipoEvento(models.Model): - nome = models.CharField(_(u"Nome"), max_length=100) + CATEGORIA_CHOICES = ( + ('C', _(u'Curso')), + ('E', _(u'Encontro')), + ('O', _(u'Oficina')), + ('S', _(u'Seminário')), + ('V', _(u'Visita')), + ) + nome = models.CharField(_(u"Nome"), max_length=100) + categoria = models.CharField( + _(u'Categoaria'), + max_length=1, + choices=CATEGORIA_CHOICES + ) class Meta: ordering = ("nome",) verbose_name, verbose_name_plural = _(u"Tipo de evento"), _(u"Tipos de evento") diff --git a/sigi/apps/home/templatetags/menu_conf.yaml b/sigi/apps/home/templatetags/menu_conf.yaml index 8ef31b9..4d3f9f0 100644 --- a/sigi/apps/home/templatetags/menu_conf.yaml +++ b/sigi/apps/home/templatetags/menu_conf.yaml @@ -45,12 +45,18 @@ main_menu: url: ocorrencias/ocorrencia/?minhas=S&status__in=1,2 - title: Eventos children: - - title: Eventos + - title: Todos os eventos url: eventos/evento/ + - title: Cursos + url: eventos/evento/?tipo_evento__categoria__exact=C + - title: Encontros + url: eventos/evento/?tipo_evento__categoria__exact=E - title: Oficinas - url: eventos/evento/?tipo_evento__nome__contains=Oficina + url: eventos/evento/?tipo_evento__categoria__exact=O + - title: Seminários + url: eventos/evento/?tipo_evento__categoria__exact=S - title: Visitas Interlegis - url: eventos/evento/?tipo_evento__nome__contains=Visita + url: eventos/evento/?tipo_evento__categoria__exact=V - title: Calendário mensal url: eventos/calendario - title: Alocação de equipe