adicionando campo cpf_cnpj na inscrição individual
authorLincoln de Sousa <lincoln@archlinux-br.org>
Thu, 27 Sep 2007 12:17:17 +0000 (09:17 -0300)
committerLincoln de Sousa <lincoln@archlinux-br.org>
Thu, 27 Sep 2007 12:17:17 +0000 (09:17 -0300)
eventos/models.py
forms.py
views.py

index e698eab..d770b1f 100644 (file)
@@ -96,9 +96,10 @@ class Participante(models.Model):
     cidade = models.CharField(maxlength=100)
     uf = models.CharField(maxlength=3)
     cep = models.CharField(maxlength=8)
     cidade = models.CharField(maxlength=100)
     uf = models.CharField(maxlength=3)
     cep = models.CharField(maxlength=8)
-    usuario = models.ForeignKey(User)
+    cpf_cnpj = models.CharField(maxlength=20, blank=True)
 
     comercial = models.BooleanField(default=False)
 
     comercial = models.BooleanField(default=False)
+    usuario = models.ForeignKey(User)
     refbanco = models.IntegerField()
 
     class Admin:
     refbanco = models.IntegerField()
 
     class Admin:
index f89c3c7..1f10f13 100644 (file)
--- a/forms.py
+++ b/forms.py
@@ -142,6 +142,15 @@ class InscricaoBase(LoginBase):
 class Inscricao(InscricaoBase):
     inscricao_comercial = forms.BooleanField(required=False,
         label='Inscrição Comercial')
 class Inscricao(InscricaoBase):
     inscricao_comercial = forms.BooleanField(required=False,
         label='Inscrição Comercial')
+    cpf_cnpj = forms.CharField(max_length=20, required=False, label='CPF/CNPJ',
+        help_text='Somente necessário para a inscrição comercial')
+
+    def clean_cpf_cnpj(self):
+        cpf_cnpj = self.cleaned_data['cpf_cnpj']
+        if self.cleaned_data['inscricao_comercial'] and not cpf_cnpj:
+            raise ValidationError('Você escolheu a inscrição comercial, '
+                    'portanto este campo se torna obrigatório')
+        return cpf_cnpj
 
 class InscricaoCaravana(InscricaoBase):
     lista_nomes = forms.CharField(label='Lista de nomes',
 
 class InscricaoCaravana(InscricaoBase):
     lista_nomes = forms.CharField(label='Lista de nomes',
index 290bfbf..e64e704 100644 (file)
--- a/views.py
+++ b/views.py
@@ -168,6 +168,7 @@ def inscricao_individual(request):
         p.telefone = cd['telefone']
         p.home_page = cd['home_page']
         p.comercial = cd['inscricao_comercial']
         p.telefone = cd['telefone']
         p.home_page = cd['home_page']
         p.comercial = cd['inscricao_comercial']
+        p.cpf_cnpj = cd['cpf_cnpj']
         p.save()
 
         u = authenticate(username=cd['nome_usuario'], password=cd['senha'])
         p.save()
 
         u = authenticate(username=cd['nome_usuario'], password=cd['senha'])
@@ -209,6 +210,7 @@ def inscricao_caravana(request):
         p.telefone = cd['telefone']
         p.home_page = cd['home_page']
         p.comercial = False # yeah, always false!
         p.telefone = cd['telefone']
         p.home_page = cd['home_page']
         p.comercial = False # yeah, always false!
+        p.cpf_cnpj = ''
         p.save()
 
         c = Caravana()
         p.save()
 
         c = Caravana()