adicionando consistencia com cadastro de palestras e login de palestrantes
authorLincoln de Sousa <pythonwarrior@pidinti.localdomain>
Tue, 14 Aug 2007 14:28:09 +0000 (11:28 -0300)
committerLincoln de Sousa <pythonwarrior@pidinti.localdomain>
Tue, 14 Aug 2007 14:28:09 +0000 (11:28 -0300)
templates/base.html
views.py

index e6822f4..d53f90c 100644 (file)
             <h1 class="title"><a href="/">Encontro Mineiro de Software Livre</a></h1>
 
             {% if user.is_authenticated %}
-            <div id="menu-palestrante">
-                <h3>Menu do palestrante</h3>
-                <ul>
-                    <li><a href="/meus_trabalhos">Meus trabalhos inscritos</a></li>
-                    <li><a href="/inscrever_palestra">Inscreva uma palestra</a></li>
-                    <li><a href="/inscrever_minicurso">Inscreva um minicurso</a></li>
-                    <li><a href="/logout">Sair ({{ user }})</a></li>
-                </ul>
-            </div>
+
+                {% if user.palestrante_set.all %}
+                <div id="menu-palestrante">
+                    <h3>Menu do palestrante</h3>
+                    <ul>
+                        <li><a href="/meus_trabalhos">Meus trabalhos inscritos</a></li>
+                        <li><a href="/inscrever_palestra">Inscreva uma palestra</a></li>
+                        <li><a href="/inscrever_minicurso">Inscreva um minicurso</a></li>
+                        <li><a href="/logout">Sair ({{ user }})</a></li>
+                    </ul>
+                </div>
+                {% endif %}
 
             {% else %}
 
index b84ff82..246dc5a 100644 (file)
--- a/views.py
+++ b/views.py
@@ -19,7 +19,7 @@ Boston, MA 02111-1307, USA.
 """
 from django.shortcuts import render_to_response
 from django.template import RequestContext, Context
-from django.contrib.auth.decorators import login_required
+from django.contrib.auth.decorators import login_required, user_passes_test
 from django.contrib.auth.models import Group, User
 from django.contrib.auth.forms import AuthenticationForm
 from django.contrib.auth import login
@@ -138,6 +138,7 @@ def inscricao(request):
 
 
 @login_required
+@user_passes_test(lambda u:u.palestrante_set.count() == 1, login_url='/')
 def inscrever_palestra(request):
     c = {}
     if request.POST:
@@ -166,6 +167,7 @@ def inscrever_palestra(request):
 
 
 @login_required
+@user_passes_test(lambda u:u.palestrante_set.count() == 1, login_url='/')
 def meus_trabalhos(request):
     try:
         p = Palestrante.objects.get(usuario=request.user)