Présenter un lien unique "Accès aux inscrits" pour la connexion et
authorEric Mc Sween <eric.mcsween@gmail.com>
Tue, 2 Nov 2010 18:43:23 +0000 (14:43 -0400)
committerEric Mc Sween <eric.mcsween@gmail.com>
Tue, 2 Nov 2010 18:43:23 +0000 (14:43 -0400)
l'inscription.

Demande #584

auf_savoirs_en_partage/chercheurs/views.py
auf_savoirs_en_partage/media/css/global.css
auf_savoirs_en_partage/templates/accounts/login.html
auf_savoirs_en_partage/templates/chercheurs/actions.html
auf_savoirs_en_partage/templates/container_base.html
auf_savoirs_en_partage/urls.py

index 1875018..f6a9041 100644 (file)
@@ -4,7 +4,7 @@ from django.shortcuts import render_to_response
 from django.http import HttpResponseRedirect, HttpResponse
 from django.template import Context, RequestContext
 from django.template.loader import get_template
-from django.core.urlresolvers import reverse
+from django.core.urlresolvers import reverse as url
 from django.core.mail import send_mail
 from django.conf import settings
 
@@ -101,27 +101,20 @@ def change_password(request):
             Context (variables), 
             context_instance = RequestContext(request))            
              
-def chercheur_login(request, template_name='registration/login.html', redirect_field_name='next'):
+def chercheur_login(request):
     "Displays the login form and handles the login action."
-    redirect_to = request.REQUEST.get(redirect_field_name, '')
     if request.method == "POST":
         form = AuthenticationForm(data=request.POST)
         if form.is_valid():
-            # Light security check -- make sure redirect_to isn't garbage.
-            if not redirect_to or '//' in redirect_to or ' ' in redirect_to:
-                redirect_to = settings.LOGIN_REDIRECT_URL
             from django.contrib.auth import login
             login(request, form.get_user())
             if request.session.test_cookie_worked():
                 request.session.delete_test_cookie()
-            return HttpResponseRedirect(redirect_to)
+            return HttpResponseRedirect(url('chercheurs.views.perso'))
     else:
         form = AuthenticationForm(request)
     request.session.set_test_cookie()
-    return render_to_response(template_name, {
-        'form': form,
-        redirect_field_name: redirect_to,
-    }, context_instance=RequestContext(request))
+    return render_to_response('accounts/login.html', dict(form=form), context_instance=RequestContext(request))
     
     
 def index(request):
@@ -190,7 +183,7 @@ def inscription(request):
                         g = Groupe.objects.get(pk=g)
                         ChercheurGroupe.objects.get_or_create(chercheur=c, groupe=g, actif=1)
                     return HttpResponseRedirect("/chercheurs/%d/?inscription=1" % c.id)
-                    #return HttpResponseRedirect(reverse('chercheurs.views.retrieve', args=(c.id,)))
+                    #return HttpResponseRedirect(url('chercheurs.views.retrieve', args=(c.id,)))
     else:
         personne_form = PersonneForm(prefix="personne")
         chercheur_form = ChercheurForm(prefix="chercheur")
@@ -320,7 +313,7 @@ def perso(request):
     chercheur = context_instance['user_chercheur']
     modification = request.GET.get('modification')
     if not chercheur:
-        return HttpResponseRedirect(reverse('chercheurs.views.chercheur_login'))
+        return HttpResponseRedirect(url('chercheurs.views.chercheur_login'))
     variables = { 'chercheur': chercheur,
                   'modification': modification,
                 }
index b4f93e2..1c9be58 100644 (file)
@@ -204,7 +204,7 @@ select     { width:100%; overflow:hidden }
 #agenda, #actualites {position: relative;}
 #rss-agenda, #rss-actualites {position: absolute; right: 26px; top: 10px;}
 
-form {padding-right:20px}
+form {padding-right:20px; margin: 1em 0; }
 
 form fieldset {
   clear: both;
index 872ba4e..4914f1a 100644 (file)
@@ -8,7 +8,6 @@
     <p class="message">Login ou mot de passe invalide.</p>
     {% endif %}
     <form method="post" action="{% url chercheurs.views.chercheur_login %}">
-      <fieldset>
       <table>
         <tr>
           <td>{{ form.username.label_tag }}</td>
           <td>{{ form.password }}</td>
         </tr>
       </table>
-      <p><a href="{% url chercheurs.views.send_password %}">Mot de passe oublié ?</a></p>
       <input type="submit" value="Connexion" />
-      <input type="hidden" name="next" value="{% if next %}{{next}}{% else %}/chercheurs/perso/{% endif %}" />
-      </fieldset>
     </form>
+    <p><a href="{% url chercheurs.views.send_password %}">Mot de passe oublié ?</a></p>
+    <p>Vous n'avez pas encore de compte? 
+    <a href="{% url chercheurs.views.inscription %}">Inscrivez-vous</a>.</p>
 </div>
 
 {% endblock %}
index 1722670..7071abe 100644 (file)
@@ -1,4 +1,5 @@
-{% if not user_chercheur %}
-<li><a href="{% url chercheurs.views.inscription %}">Inscription</a></li>
-{% endif %}
+{% if user_chercheur %}
 <li><a href="{% url chercheurs.views.perso %}">Espace chercheur</a></li>
+{% else %}
+<li><a href="{% url chercheurs.views.chercheur_login %}">Accès aux inscrits</a></li>
+{% endif %}
index fdecfd4..7c22bf3 100644 (file)
                 <div class="sous-menu droite">
                     {% if user.is_authenticated %}
                     <a href="{% url django.contrib.auth.views.logout %}" class="bout-droit">Déconnexion</a>
-                    {% else %}
-                    <a href="{% url chercheurs.views.chercheur_login %}" class="bout-droit">Connexion</a>
-                    {% endif %}
                     <span>|</span>
                     <a href="{% url savoirs.views.legal %}">Légal</a>
+                    {% else %}
+                    <a href="{% url savoirs.views.legal %}" class="bout-droit">Légal</a>
+                    {% endif %}
                     <span>|</span>
                     <a href="{% url savoirs.views.nous_contacter %}">Contact</a>
                     <span>|</span>
index e9d3959..985b651 100644 (file)
@@ -28,7 +28,7 @@ urlpatterns = patterns(
     (r'^admin/(?P<app_name>[^/]*)/(?P<model_name>[^/]*)/assigner_disciplines', 'savoirs.admin_views.assigner_disciplines', {}, 'assigner_disciplines'),
     (r'^admin/(.*)', admin.site.root),
 
-    (r'^accounts/login/$', 'chercheurs.views.chercheur_login', {'template_name': 'accounts/login.html'}),
+    (r'^accounts/login/$', 'chercheurs.views.chercheur_login'),
     (r'^accounts/logout/$', 'django.contrib.auth.views.logout', {'template_name': 'accounts/logout.html'}),
     (r'^accounts/change_password/$', 'chercheurs.views.change_password'),
     (r'^accounts/send_password/$', 'chercheurs.views.send_password'),