remoção do usuário autenticado na lista de *outros palestrantes*
authorLincoln de Sousa <lincoln@archlinux-br.org>
Wed, 15 Aug 2007 23:15:30 +0000 (20:15 -0300)
committerLincoln de Sousa <lincoln@archlinux-br.org>
Wed, 15 Aug 2007 23:15:30 +0000 (20:15 -0300)
forms.py
views.py

index cf89425..90be3d6 100644 (file)
--- a/forms.py
+++ b/forms.py
@@ -22,16 +22,18 @@ from django.newforms.widgets import Textarea, PasswordInput
 from eventmanager.eventos.models import \
         TipoTrabalho, CategoriaTrabalho, Palestrante, STATE_CHOICES
 
-MKCHOICES = lambda K:[(x.id, str(x)) for x in K.objects.all()]
+MKCHOICES = lambda K, xid=-1:[(x.id, str(x)) for x in K.objects.all() \
+        if xid != x.id]
 
 class SubmeterTrabalho(forms.Form):
-    def __init__(self, *args, **kwargs):
+    def __init__(self, request, *args, **kwargs):
         super(SubmeterTrabalho, self).__init__(*args, **kwargs)
 
         newchoices = MKCHOICES(TipoTrabalho)
         self.fields['tipo'].choices = newchoices
 
-        newchoices = MKCHOICES(Palestrante)
+        palestrante = request.user.palestrante_set.get()
+        newchoices = MKCHOICES(Palestrante, xid=palestrante.id)
         self.fields['outros_palestrantes'].choices = newchoices
 
     titulo = forms.CharField(max_length=100, label='Título do trabalho')
index 355e5fa..52bae56 100644 (file)
--- a/views.py
+++ b/views.py
@@ -139,7 +139,7 @@ def inscricao(request):
 @login_required
 @user_passes_test(lambda u:u.palestrante_set.count() == 1, login_url='/')
 def submeter_trabalho(request):
-    form = SubmeterTrabalho(request.POST or None)
+    form = SubmeterTrabalho(request, request.POST or None)
     ok = False
 
     if request.POST and form.is_valid():