X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=eventos%2Fmodels.py;h=5ab55d8ab68932ad69503055ba51b37630893316;hb=e34cad20e9c5c84fd9fbd85c4e880c0827326e3d;hp=2a73e6e0bb89aac3ffe831899c1f304ab746ecc6;hpb=cc98df17208f6837aa4dc2f52267af9c1acfeeae;p=cascardo%2Feventmanager.git diff --git a/eventos/models.py b/eventos/models.py index 2a73e6e..5ab55d8 100644 --- a/eventos/models.py +++ b/eventos/models.py @@ -1,4 +1,4 @@ -# -*- coding: utf8; -*- +# -*- coding: utf-8; -*- """ Copyright (C) 2007 Lincoln de Sousa @@ -41,36 +41,23 @@ class Evento(models.Model): class Admin: fields = ( - (None, {'fields': ('nome', 'data_inicio', 'data_final')}), + ('Informações do evento', {'fields': ('nome', 'data_inicio', 'data_final')}), ('Informações da sede', {'fields': ('nome_local', 'nome_contato', - 'cidade', 'uf', 'rua', 'numero', 'info_adicional')}), + 'cidade', 'uf', 'rua', 'numero','telefone', 'info_adicional')}), ) def __str__(self): return self.nome -class AreaDeInteresse(models.Model): - nome = models.CharField(maxlength=100) - - class Meta: - verbose_name = 'area de interesse' - verbose_name_plural = 'areas de interesse' - - class Admin: - pass - - def __str__(self): - return self.nome - - class Palestrante(models.Model): nome = models.CharField(maxlength=100) email = models.CharField(maxlength=100) - telefone_residencial = models.CharField(maxlength=11, blank=True) - telefone_celular = models.CharField(maxlength=11, blank=True) - telefone_comercial = models.CharField(maxlength=11, blank=True) + telefone = models.CharField(maxlength=100, blank=True) + celular = models.CharField(maxlength=100, blank=True) + + instituicao = models.CharField(maxlength=250, blank=True) rua = models.CharField(maxlength=100) numero = models.CharField(maxlength=10) @@ -79,18 +66,17 @@ class Palestrante(models.Model): uf = models.CharField(maxlength=3) minicurriculo = models.TextField('Mini currículo') - area_interesse = models.ManyToManyField(AreaDeInteresse) + curriculo = models.TextField('Currículo') usuario = models.ForeignKey(User) class Admin: fields = ( - (None, {'fields': ('nome', 'email', 'minicurriculo', 'usuario')}), - ('Telefones', {'fields': ('telefone_residencial', - 'telefone_celular', 'telefone_comercial')}), + (None, {'fields': ('nome', 'email', 'instituicao', + 'minicurriculo', 'curriculo', 'usuario')}), + ('Telefones', {'fields': ('telefone', 'celular')}), ('Endereço', {'fields': ('rua', 'numero', 'bairro', 'cidade', 'uf')}), - (None, {'fields': ('area_interesse',)}), ) def __str__(self): @@ -99,53 +85,104 @@ class Palestrante(models.Model): class Participante(models.Model): nome = models.CharField(maxlength=100) + email = models.CharField(maxlength=100) + rg = models.CharField(maxlength=100) + home_page = models.CharField(maxlength=100, blank=True) + + telefone = models.CharField(maxlength=100, blank=True) + rua = models.CharField(maxlength=100) + numero = models.CharField(maxlength=10) + bairro = models.CharField(maxlength=100) + cidade = models.CharField(maxlength=100) + uf = models.CharField(maxlength=3) + cep = models.CharField(maxlength=8) + usuario = models.ForeignKey(User) + + class Admin: + pass + + def __str__(self): + return self.nome + + +class Caravana(models.Model): + coordenador = models.ForeignKey(Participante) + participantes = models.TextField() + + class Admin: + pass + + def __str__(self): + return str(self.coordenador) + + def parsed_participantes(self): + real_data = [] + for i in self.participantes.split('\n'): + if i.strip(): + nome, email = i.rsplit(' ', 1) + real_data.append({'nome': nome, 'email': email}) + return real_data + +class CategoriaTrabalho(models.Model): + nome = models.CharField(maxlength=100) class Admin: pass + class Meta: + verbose_name = 'Categoria de trabalho' + verbose_name_plural = 'Categorias de trabalhos' + def __str__(self): return self.nome -class CategoriaPalestra(models.Model): +class TipoTrabalho(models.Model): nome = models.CharField(maxlength=100) class Admin: pass class Meta: - verbose_name = 'Categoria de palestra' - verbose_name_plural = 'Categorias de palestra' + verbose_name = 'Tipo de trabalho' + verbose_name_plural = 'Tipos de trabalho' def __str__(self): return self.nome -class Palestra(models.Model): +class Trabalho(models.Model): titulo = models.CharField(maxlength=100) - tema = models.CharField(maxlength=100) evento = models.ForeignKey(Evento) - categoria = models.ForeignKey(CategoriaPalestra) + tipo = models.ForeignKey(TipoTrabalho) + categoria = models.ForeignKey(CategoriaTrabalho) palestrante = models.ManyToManyField(Palestrante) descricao_curta = models.TextField() descricao_longa = models.TextField() + recursos = models.TextField() class Admin: fields = ( - (None, {'fields': ('titulo', 'tema', 'evento', 'categoria', - 'palestrante', 'descricao_curta', 'descricao_longa')}), + (None, {'fields': ('titulo', 'evento', 'categoria', + 'palestrante', 'descricao_curta', 'descricao_longa', + 'recursos')}), ) - def __str__(self): return self.titulo -class MiniCurso(models.Model): - titulo = models.CharField(maxlength=100) +class Avaliacao(models.Model): + avaliador = models.ManyToManyField(User) + comentario = models.TextField() + trabalho = models.ForeignKey(Trabalho) class Admin: pass + class Meta: + verbose_name = 'Avaliação' + verbose_name_plural = 'Avaliações' + def __str__(self): - return self.titulo + return self.nome