adding the __unicode__ method to Improve model
[cascardo/ema.git] / eventos / models.py
index c5d9d84..fca045d 100644 (file)
@@ -35,18 +35,6 @@ class Evento(models.Model):
 
     site = models.ForeignKey(Site)
 
-    class Admin:
-        fields = (
-            (u'Informações do evento',
-             {'fields': ('nome', 'data_inicio', 'data_final', 'site')}),
-
-            (u'Informações da sede',
-             {'fields': ('local', 'nome_contato', 'endereco', 'cidade',
-                         'estado', 'telefone', 'info_adicional')}),
-        )
-
-        search_fields = list_display = 'nome', 'local'
-
     def __str__(self):
         return self.nome
 
@@ -71,21 +59,8 @@ class Palestrante(models.Model):
                                 'palestrante a uma conta no sistema para '
                                 'que ele possa enviar trabalhos e alterar '
                                 'dados pessoais.')
-
-    class Admin:
-        fields = (
-            (None, {'fields': ('nome', 'email', 'instituicao',
-                               'minicurriculo', 'curriculo')}),
-
-            (u'Telefones', {'fields': ('telefone', 'celular')}),
-
-            (u'Endereço', {'fields': ('endereco', 'cep', 'cidade', 'estado')}),
-
-            (u'Avançado', {'fields': ('usuario',),
-                           'classes': 'collapse'}),
-        )
-
-        search_fields = list_display = 'nome', 'instituicao', 'email', 'celular'
+    class Meta:
+        ordering = ['nome']
 
     def __str__(self):
         return self.nome
@@ -94,10 +69,6 @@ class TipoTrabalho(models.Model):
     nome = models.CharField(max_length=100)
     evento = models.ForeignKey(Evento)
 
-    class Admin:
-        search_fields = 'nome',
-        list_filter = 'evento',
-
     class Meta:
         verbose_name = u'Tipo de trabalho'
         verbose_name_plural = u'Tipos de trabalho'
@@ -109,13 +80,20 @@ class Trilha(models.Model):
     nome = models.CharField(max_length=100)
     evento = models.ForeignKey(Evento)
 
-    class Admin:
-        search_fields = 'nome',
-        list_filter = 'evento',
-
     def __str__(self):
         return self.nome
 
+class DuracaoTrabalho(models.Model):
+    duracao = models.CharField(u'Duração', max_length=100)
+    tipo = models.ForeignKey(TipoTrabalho)
+
+    class Meta:
+        verbose_name = u'Duração do Trabalho'
+        verbose_name_plural = u'Durações do Trabalho'
+
+    def __str__(self):
+        return self.duracao
+
 class Trabalho(models.Model):
     titulo = models.CharField(max_length=100)
     evento = models.ForeignKey(Evento)
@@ -125,15 +103,25 @@ class Trabalho(models.Model):
     descricao_curta = models.TextField(u'Descrição curta')
     descricao_longa = models.TextField(u'Descrição longa')
     recursos = models.TextField(blank=True)
+    duracao = models.ForeignKey(DuracaoTrabalho)
+    pub_date = models.DateTimeField(u'Data de criação', auto_now_add=True)
     outros_palestrantes = \
         models.ManyToManyField(Palestrante,
                                related_name='outros_palestrantes',
                                blank=True,
                                null=True)
 
-    class Admin:
-        list_filter = 'evento', 'tipo', 'trilha',
-        search_fields = list_display = 'titulo', 'evento', 'tipo'
-
     def __str__(self):
         return self.titulo
+
+class Improve(models.Model):
+    trabalho = models.ForeignKey(Trabalho)
+    usuario = models.ForeignKey(User, help_text=u'Este campo associa o '
+                            'palestrante a uma conta no sistema para '
+                            'que ele possa enviar trabalhos e alterar '
+                            'dados pessoais.')
+    comentario = models.TextField(u'Comentário')
+    pub_date = models.DateTimeField(u'Data do Comentário', auto_now_add=True)
+
+    def __unicode__(self):
+        return '"%s" by %s (%s)' % (self.trabalho, self.usuario, self.pub_date.strftime('%x'))