Désinscription des chercheurs
authorEric Mc Sween <eric.mcsween@gmail.com>
Thu, 2 Dec 2010 18:49:07 +0000 (13:49 -0500)
committerEric Mc Sween <eric.mcsween@gmail.com>
Thu, 2 Dec 2010 20:37:40 +0000 (15:37 -0500)
Conflicts:

buildout.cfg

29 files changed:
auf_savoirs_en_partage/authentification.py
auf_savoirs_en_partage/chercheurs/models.py
auf_savoirs_en_partage/chercheurs/views.py
auf_savoirs_en_partage/media/css/global.css
auf_savoirs_en_partage/settings.py
auf_savoirs_en_partage/sql/2010-11-26.sql [new file with mode: 0644]
auf_savoirs_en_partage/templates/accounts/login.html
auf_savoirs_en_partage/templates/accounts/new_password.html
auf_savoirs_en_partage/templates/accounts/send_password.html
auf_savoirs_en_partage/templates/chercheurs/desinscription.html [new file with mode: 0644]
auf_savoirs_en_partage/templates/chercheurs/edit.html
auf_savoirs_en_partage/templates/chercheurs/index.html
auf_savoirs_en_partage/templates/chercheurs/inscription.html
auf_savoirs_en_partage/templates/chercheurs/new_password.html
auf_savoirs_en_partage/templates/chercheurs/perso.html
auf_savoirs_en_partage/templates/chercheurs/retrieve.html
auf_savoirs_en_partage/templates/container_base.html
auf_savoirs_en_partage/templates/savoirs/actualite_index.html
auf_savoirs_en_partage/templates/savoirs/evenement_ajout.html
auf_savoirs_en_partage/templates/savoirs/evenement_index.html
auf_savoirs_en_partage/templates/savoirs/evenement_utilisation.html
auf_savoirs_en_partage/templates/savoirs/index.html
auf_savoirs_en_partage/templates/savoirs/ressource_index.html
auf_savoirs_en_partage/templates/savoirs/sites_auf.html
auf_savoirs_en_partage/templates/session_message.html [new file with mode: 0644]
auf_savoirs_en_partage/templates/sites/index.html
auf_savoirs_en_partage/templates/sites/retrieve.html
auf_savoirs_en_partage/urls.py
buildout.cfg

index b294c41..8215567 100644 (file)
@@ -15,7 +15,7 @@ class CascadeBackend(ModelBackend):
         # Cherche les comptes roa+locaux
         remoteUser = localUser = None
         try:
-            remoteUser = RemoteUser.objects.get(courriel=email)
+            remoteUser = RemoteUser.objects.get(courriel=email, actif=True)
             if settings.AUTH_PASSWORD_REQUIRED and not remoteUser.check_password(password):
                 remoteUser = None
         except:
index c4063d4..f4b39e7 100644 (file)
@@ -217,7 +217,6 @@ class Chercheur(models.Model):
     )
 
     #meta
-    actif = models.BooleanField(editable = False)
     date_creation = models.DateField(auto_now_add=True, db_column='date_creation')
     date_modification = models.DateField(auto_now=True, db_column='date_modification')
     
index 50dcb37..b8fc891 100644 (file)
@@ -18,6 +18,7 @@ from models import Personne, Utilisateur, Groupe, ChercheurGroupe
 from django.contrib.auth import authenticate, login
 from django.contrib.auth.decorators import login_required
 from django.contrib.auth.forms import AuthenticationForm as OriginalAuthenticationForm
+from django.contrib.auth.models import User
 
 from django.db.models import Q
 from django.shortcuts import get_object_or_404
@@ -141,6 +142,26 @@ def inscription(request):
                               context_instance=RequestContext(request))
 
 @login_required()
+def desinscription(request):
+    """Désinscription du chercheur"""
+    try:
+        chercheur = Chercheur.objects.get(personne__courriel=request.user.email)
+    except Chercheur.DoesNotExist:
+        return HttpResponseRedirect(url('chercheurs.views.chercheur_login'))
+    if request.method == 'POST':
+        if request.POST.get('confirmer'):
+            chercheur.personne.actif = False
+            chercheur.personne.save()
+            User.objects.filter(username=chercheur.personne.courriel).delete()
+            request.flash['message'] = "Vous avez été désinscrit du répertoire des chercheurs."
+            return HttpResponseRedirect(url('django.contrib.auth.views.logout'))
+        else:
+            request.flash['message'] = "Opération annulée."
+            return HttpResponseRedirect(url('chercheurs.views.perso'))
+    return render_to_response("chercheurs/desinscription.html", {},
+                              context_instance=RequestContext(request))
+
+@login_required()
 @never_cache
 def edit(request):
     """Edition d'un chercheur"""
@@ -168,7 +189,7 @@ def perso(request):
         return HttpResponseRedirect(url('chercheurs.views.chercheur_login'))
     return render_to_response("chercheurs/perso.html",
                               dict(chercheur=chercheur, modification=modification),
-                              context_instance=RequestContext(request))
+                              context_instance=context_instance)
             
 def retrieve(request, id):
     """Fiche du chercheur"""
@@ -180,3 +201,4 @@ def retrieve(request, id):
 def conversion(request):
     return render_to_response("chercheurs/conversion.html", {}, 
                               context_instance=RequestContext(request))
+
index 311cc31..4e169cd 100644 (file)
@@ -36,7 +36,6 @@ h6 {font-size:1em;margin:0 0 1em 0;}
 em{font-style:italic;}
 strong{font-weight:bold;}
 p{margin:0 0 1em 0;}
-ul, ol{margin:0 0 1em 33px;list-style:none;}
 dt{margin:0.5em 0 0;}
 dd{margin:0.25em 0 0.5em 2.5em;}
 sup{font-size:smaller; vertical-align:0.5em; line-height:1px;}
@@ -64,7 +63,6 @@ label {
 td, th { vertical-align:middle; padding: 5px }
 
 
-.box { padding:0 0 20px 0; }
 .lbl {color:#97012c; }
 
 .centre { text-align:center }
@@ -108,22 +106,9 @@ div.boite-recherche p a:hover { color:#97012c; text-decoration:none;}
 #col-menu li.active a, #col-menu a:hover { background:#d5d5d5; margin-left:0; border-left: 5px solid #666; }
 #col-menu .actif a { color:#97012c; font-weight:bold; }
 
-#contenu { 
-    float:left; position:relative; width:744px; 
-    margin:100px 0px 50px 0px; padding:0; 
-    background:url(../img/contenu-bkg-middle.png) repeat-y 0 0; 
-}
-
 #tabs { margin-left:8px; margin-right:8px; }
 
-#contenu h4 { padding:0 25px; margin-bottom:0.4em; font-size:2.2em; font-weight:normal; letter-spacing:-1px; width:60%; }
-#contenu h4 a { text-decoration:none; color:black; }
-#contenu h4 a:hover { text-decoration:underline; }
-#contenu h5 { padding:10px 0 0 25px; margin-bottom:0.4em; font-size:1.8em; font-weight:normal; letter-spacing:-1px; }
-#contenu h5 a { text-decoration:none; color:black; }
-#contenu h5 a:hover { text-decoration:underline; }
-
-#contenu .zone-texte {padding:0 25px; font-size:1.2em; min-height:375px;}
+#contenu .zone-texte { font-size:1.2em; min-height:375px;}
 #contenu .zone-texte ul li {list-style:disc; margin:0 0 .25em;}
 #contenu .zone-texte ol li {list-style:decimal; margin:0 0 .25em;}
 #contenu .zone-texte ul ul, #contenu .zone-texte ol ol {margin-top:.25em; margin-bottom:.25em;}
@@ -131,7 +116,7 @@ div.boite-recherche p a:hover { color:#97012c; text-decoration:none;}
 #contenu .zone-texte h3 {font-size:1.1em;}
 #contenu .zone-texte blockquote {margin:0 2em 1em; font-style:italic;}
 
-#contenu .texte { padding:0 25px; font-size:1.2em; }
+#contenu .texte { font-size:1.2em; }
 #contenu .texte ul li { list-style:disc; margin:0 0 .25em; }
 #contenu .texte ol li { list-style:decimal; margin:0 0 .25em; }
 #contenu .texte ul ul, #contenu .description ol ol  { margin-top:.25em; margin-bottom:.25em; }
@@ -141,10 +126,6 @@ div.boite-recherche p a:hover { color:#97012c; text-decoration:none;}
 
 #contenu img.top, .resultats img.top { height:10px; position:relative; top:-10px; left:0;}
 #contenu img.bottom, .resultats img.bottom{ height:10px; position:relative; bottom:-10px; left:0;}
-#contenu .demi-gauche { width:361px; margin-left:12px; background-color:#f5f5f5; float:left;}
-#contenu .demi-droite { width:358px; margin-right:12px; float:right;}
-#contenu .demi-gauche img.top { height:9px; position:relative; top:-9px;}
-#contenu .demi-gauche img.bottom { height:9px;  position:relative; bottom:-9px;}
 
 .contenu-wrapper { padding:0 25px; }
 
@@ -160,9 +141,6 @@ ul.liste-de-l-accueil a.la-date { color:black; }
 ul.liste-de-l-accueil .le-titre {display:block; font-size:1.2em; font-weight:bold; margin:.25em 0;}
 ul.liste-de-l-accueil .le-resume {font-size:1.1em;}
 ul.liste-de-l-accueil .le-resume a { display:inline;}
-ul.sous-menu li, ul.actions li { display:inline; padding:0px 0px 0px 10px; font-size:1.1em; }
-
-ul.actions { position:absolute; top:15px; right:20px; width:30%; text-align:right }
 
 .resultats { width:744px; display:inline; margin:0; padding:0; float:left; margin-top:100px; margin-bottom:50px; margin-left:0; background:url(../img/contenu-bkg-middle.png) repeat-y 0 0;}
 .resultats a:hover{text-decoration:none;}
@@ -215,9 +193,6 @@ ul.actions { position:absolute; top:15px; right:20px; width:30%; text-align:righ
 
 .publications_autre {border:1px solid #CCC; background:#FAFAFA; margin:10px; padding:10px; display:none;}
 
-#agenda, #actualites {position:relative;}
-#rss-agenda, #rss-actualites {position:absolute; right:26px; top:10px;}
-
 .infotip
 {
 width:300px;
@@ -230,31 +205,6 @@ float:right;
 {
 
 }
-#fiche_chercheur
-{
-  font-size:120%;
-}
-#fiche_chercheur h5
-{
-  font-size:150%;
-  border-color:#000000;
-  border-width:1px 0 0 0;
-  border-style:solid none none none;
-  margin-top:20px;
-  padding:10px;
-}
-
-#fiche_chercheur .label
-{
-color:grey;
-font-weight:bold;
-width:150px;
-}
-
-#fiche_chercheur .souligne
-{
-  border-bottom:1px solid #DDD;
-}
 
 .message
 {
@@ -277,3 +227,44 @@ color:red;
 
 .delete-row { position:absolute; top:10px; right:10px }
 .add-row { float:right; margin-right:21px }
+
+.cadre { width: 60%; margin: 100px auto; padding: 20px; background: #f9f9f9; border: 1px solid #aaa }
+
+/* Boîte principale */
+
+#boite-principale { position: absolute; top: 280px; width: 744px; 
+                    background: url(../img/contenu-bkg-middle.png) repeat-y 0 0; }
+#boite-principale .top-border { position: absolute; top: -10px; }
+#boite-principale .bottom-border { position: absolute; bottom: -10px; }
+                    
+#flash-message { margin: 10px 20px; background: #f3e3e7; color: #b03d5e; padding: 1em; font-size: 120%;
+                 border: 1px solid #b03d5e; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
+#contenu { position: relative; padding: 20px; }
+
+/* Contenu */
+
+#contenu h4 { margin-bottom: 4px; font-size: 220%; font-weight: normal; letter-spacing: -1px; }
+#contenu h4 a { text-decoration:none; color:black; }
+#contenu h4 a:hover { text-decoration:underline; }
+#contenu h5 { margin-bottom: 4px; font-size: 180%; font-weight: normal; letter-spacing: -1px; }
+#contenu h5 a { text-decoration:none; color:black; }
+#contenu h5 a:hover { text-decoration:underline; }
+
+#fiche_chercheur { font-size: 120%; }
+#fiche_chercheur h5 { font-size: 150%; border-color: #000000; border-width: 1px 0 0 0; 
+                      border-style: solid none none none; margin-top: 20px; padding: 10px; }
+#fiche_chercheur .label { color: grey; font-weight: bold; width: 150px; }
+#fiche_chercheur .souligne { border-bottom: 1px solid #DDD; }
+
+/* Actions */
+
+.actions { float: right; text-align: right }
+.box .actions { float: none; text-align: left; margin-left: 0; list-style-type: none }
+.box .actions li { display: inline; padding-right: 10px; font-size: 110%; }
+
+/* Page d'accueil */
+
+.box { position: relative; padding: 10px 20px; }
+.demi-gauche { width: 345px; background-color: #f5f5f5; float: left; }
+.demi-droite { width: 345px; float: right; }
+#rss-agenda, #rss-actualites { position: absolute; top: 15px; right: 20px; }
index 5334d72..237db1c 100644 (file)
@@ -41,6 +41,7 @@ MIDDLEWARE_CLASSES = (
     'django.middleware.cache.FetchFromCacheMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
+    'djangoflash.middleware.FlashMiddleware',
     'pagination.middleware.PaginationMiddleware',
     'django_sorting.middleware.SortingMiddleware',
     'django.middleware.doc.XViewMiddleware',
@@ -77,6 +78,7 @@ TEMPLATE_CONTEXT_PROCESSORS = (
     "django.core.context_processors.request",
     "context_processors.user_chercheur",
     "context_processors.discipline_region",
+    "djangoflash.context_processors.flash"
 )
 
 TEMPLATE_LOADERS = (
diff --git a/auf_savoirs_en_partage/sql/2010-11-26.sql b/auf_savoirs_en_partage/sql/2010-11-26.sql
new file mode 100644 (file)
index 0000000..9c4f8c4
--- /dev/null
@@ -0,0 +1 @@
+ALTER TABLE chercheurs_chercheur DROP COLUMN actif;
index a4586c8..e8e9c5c 100644 (file)
@@ -4,27 +4,26 @@
 {% block contenu %}
 
 <h4>Connexion</h4>
-<div class="contenu-wrapper">
-    {% if form.errors %}
-    <p class="message">Login ou mot de passe invalide.</p>
-    {% endif %}
-    <form method="post" action="{% url chercheurs.views.chercheur_login %}">
-      <table>
-        <tr>
-          <td>{{ form.username.label_tag }}</td>
-          <td>{{ form.username }}</td>
-        </tr>
-        <tr>
-          <td>{{ form.password.label_tag }}</td>
-          <td>{{ form.password }}</td>
-        </tr>
-      </table>
-      <input type="submit" value="Connexion" />
-    </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>
+
+{% if form.errors %}
+<p class="message">Login ou mot de passe invalide.</p>
+{% endif %}
+<form method="post" action="{% url chercheurs.views.chercheur_login %}">
+  <table>
+    <tr>
+      <td>{{ form.username.label_tag }}</td>
+      <td>{{ form.username }}</td>
+    </tr>
+    <tr>
+      <td>{{ form.password.label_tag }}</td>
+      <td>{{ form.password }}</td>
+    </tr>
+  </table>
+  <input type="submit" value="Connexion" />
+</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>
 
 {% endblock %}
 
index d30caa8..76f37b8 100644 (file)
@@ -2,17 +2,15 @@
 
 {% block contenu %}
 <h4>Demande de changement de mot de passe</h4>
-<div class="contenu-wrapper">
-    {% if message %}
-        <span class="message">{{message}}</span>
-        <p>Cliquez <a href="{% url chercheurs.views.chercheur_login %}">ici</a> pour accéder à votre <a href="{% url chercheurs.views.chercheur_login %}">espace chercheur.</a> </p>
-    {% endif %}
-    <form method="post">
-        <fieldset>
-            <span>Veuillez saisir un nouveau mot de passe.</span>
-            {% include "table_form.html" %}
-        </fieldset>
-        <input type="submit" name="Submit" value="Envoyer" class="bouton" />
-    </form>
-</div>
+{% if message %}
+<span class="message">{{message}}</span>
+<p>Cliquez <a href="{% url chercheurs.views.chercheur_login %}">ici</a> pour accéder à votre <a href="{% url chercheurs.views.chercheur_login %}">espace chercheur.</a> </p>
+{% endif %}
+<form method="post">
+    <fieldset>
+        <span>Veuillez saisir un nouveau mot de passe.</span>
+        {% include "table_form.html" %}
+    </fieldset>
+    <input type="submit" name="Submit" value="Envoyer" class="bouton" />
+</form>
 {% endblock %}
index 081589e..5960c81 100644 (file)
@@ -2,17 +2,15 @@
 
 {% block contenu %}
 <h4>Demande de changement de mot de passe</h4>
-<div class="contenu-wrapper">
-    {% if form.is_valid %}
-        <span class="message">Un message a été envoyé à l'adresse électronique spécifiée.</span>
-    {% else %}
-    <form method="post">
-        <fieldset>
-            {% include "table_form.html" %}
-            <span>Veuillez entrer l'adresse électronique avec laquelle vous avez completé votre inscription.</span>
-        </fieldset>
-        <input type="submit" name="Submit" value="Envoyer" class="bouton" />
-    </form>
-    {% endif %}
-</div>
+{% if form.is_valid %}
+<span class="message">Un message a été envoyé à l'adresse électronique spécifiée.</span>
+{% else %}
+<form method="post">
+    <fieldset>
+        {% include "table_form.html" %}
+        <span>Veuillez entrer l'adresse électronique avec laquelle vous avez completé votre inscription.</span>
+    </fieldset>
+    <input type="submit" name="Submit" value="Envoyer" class="bouton" />
+</form>
+{% endif %}
 {% endblock %}
diff --git a/auf_savoirs_en_partage/templates/chercheurs/desinscription.html b/auf_savoirs_en_partage/templates/chercheurs/desinscription.html
new file mode 100644 (file)
index 0000000..9fc80d0
--- /dev/null
@@ -0,0 +1,11 @@
+{% extends "container_base.html" %}
+
+{% block contenu %}
+<div class="cadre">
+    <form action="" method="post">
+        <p>Voulez-vous vraiment vous désinscrire de Savoirs en partage?</p>
+        <input type="submit" name="confirmer" value="Oui" />
+        <input type="submit" name="annuler" value="Non" />
+    </form>
+</div>
+{% endblock %}
index 1fbf121..b4661f8 100644 (file)
@@ -7,7 +7,6 @@
 
 {% block contenu %}
 <h4>{{chercheur.personne.prenom}} {{chercheur.personne.nom}}</h4>
-<div class="contenu-wrapper">
 <form method="post">
     {% include "chercheurs/chercheur_form.html" %}    
     <fieldset>
@@ -64,5 +63,4 @@
 
     <input type="submit" value="Sauvegarder" />
 </form>
-</div>
 {% endblock %}
index 89a605e..22bdfc2 100644 (file)
@@ -5,12 +5,12 @@
 {% block contenu %}
 {% autopaginate chercheurs 20 %}
 
-<h4>Répertoire des chercheurs</h4>
-
 <ul class="actions">
     {% include "chercheurs/actions.html" %}
 </ul>
 
+<h4>Répertoire des chercheurs</h4>
+
 <div class="texte">
     <p>
     Bienvenue sur le répertoire des chercheurs francophones de l'Agence
@@ -37,7 +37,7 @@
 
 <h5>Recherche</h5>
 
-<form method="get" action="" class="contenu-wrapper">
+<form method="get" action="">
     <table id="repertoire_recherche">
         {% form_field search_form.q %}
         {% form_field search_form.nom %}
 <h5>Résultats : {{nb_chercheurs}} chercheurs correspondant à votre recherche</h5>
 
 <div class="centre">{% paginate %}</div>
-<div class="contenu-wrapper">
-    <table id="repertoire">
-        <tr>
-            <th>Nom</th>
-            <th>Établissement</th>
-            <th>Localisation</th>
-        </tr>
+<table id="repertoire">
+    <tr>
+        <th>Nom</th>
+        <th>Établissement</th>
+        <th>Localisation</th>
+    </tr>
     {% for chercheur in chercheurs %}
-        <tr class="{% cycle 'odd' 'notodd' %}">
-            <td><a href="{% url chercheurs.views.retrieve id=chercheur.id %}">{{ chercheur }}</a></td>
-            <td>{% firstof chercheur.etablissement chercheur.etablissement_autre_nom %}</td>
-            <td>{% firstof chercheur.etablissement.pays chercheur.etablissement_autre_pays %}</td>
-        </tr>
+    <tr class="{% cycle 'odd' 'notodd' %}">
+        <td><a href="{% url chercheurs.views.retrieve id=chercheur.id %}">{{ chercheur }}</a></td>
+        <td>{% firstof chercheur.etablissement chercheur.etablissement_autre_nom %}</td>
+        <td>{% firstof chercheur.etablissement.pays chercheur.etablissement_autre_pays %}</td>
+    </tr>
     {% endfor %}
-    </table>
-</div>
+</table>
 <div class="centre">{% paginate %}</div>
 
 {% endblock %}
index 8c47554..ffb56b6 100644 (file)
@@ -8,7 +8,6 @@
 {% block contenu %}
 <h4>Inscription au répertoire de chercheurs</h4>
 
-<div class="contenu-wrapper">
 <form method="post">
     {% include "chercheurs/chercheur_form.html" %}   
     <fieldset>
@@ -40,5 +39,4 @@
     <br />
     <input type="submit" name="Submit" value="Inscription" class="bouton" />
 </form>
-</div>
 {% endblock %}
index 72a8891..aeb9460 100644 (file)
@@ -2,7 +2,5 @@
 
 {% block contenu %}
 <h4>Demande de changement de mot de passe</h4>
-<div class="contenu-wrapper">
-    Mot de passe: <strong>{{new_password}}</strong>
-</div>
+Mot de passe: <strong>{{new_password}}</strong>
 {% endblock %}
index ad949c0..460c331 100644 (file)
@@ -3,19 +3,19 @@
 {% block contenu %}
 
 {% if modification %}
-    <span class="contenu-wrapper message">Votre fiche a bien été enregistrée.</span>
+    <span "message">Votre fiche a bien été enregistrée.</span>
 {% endif %}
     
-<h4>{{ chercheur }}</h4>
 <ul class="actions">
     <li><a href="{% url chercheurs.views.index %}">Tous les chercheurs</a></li>
     <li><a href="{% url chercheurs.views.edit %}">Éditer votre fiche</a></li>
     <li><a href="{% url chercheurs.views.change_password %}">Modifier votre mot de passe</a></li>
-    <li><a href="{% url django.contrib.auth.views.logout %}">Déconnexion</a></li>
+    <li><a href="{% url django.contrib.auth.views.logout %}">Vous déconnecter</a></li>
+    <li><a href="{% url chercheurs.views.desinscription %}">Vous désinscrire du répertoire</a></li>
 </ul>
 
-<div class="contenu-wrapper">
-    {% include "chercheurs/fiche.html" %}
-</div>
+<h4>{{ chercheur }}</h4>
+
+{% include "chercheurs/fiche.html" %}
 
 {% endblock %}
index 49ffb0b..5b74540 100644 (file)
@@ -2,7 +2,5 @@
 
 {% block contenu %}
 <h4>{{ chercheur }}</h4>
-<div class="contenu-wrapper">
-    {% include "chercheurs/fiche.html" %}
-</div>
+{% include "chercheurs/fiche.html" %}
 {% endblock %}
index 386ee59..1b95563 100644 (file)
                     </div>
                 </div>
                 
-                <div id="contenu" class="clearfix">
-                    <img src="{{ MEDIA_URL }}img/contenu-bkg-top.png" width="744" height="10" alt="top" align="top" class="top" />
-                    <div class="clearfix">
+                <div id="boite-principale">
+                    <img src="{{ MEDIA_URL }}img/contenu-bkg-top.png" width="744" height="10" class="top-border" />
+                    {% if flash.message %}
+                    <div id="flash-message">{{ flash.message }}</div>
+                    {% endif %}
+                    <div id="contenu" class="clearfix">
                         {% block contenu %}
                         {% endblock %}
                     </div>
-                    <!-- Fin block -->
-                    <img src="{{ MEDIA_URL }}img/contenu-bkg-bottom.png" width="744" height="10" alt="bottom" align="bottom" class="bottom" />
+                    <img src="{{ MEDIA_URL }}img/contenu-bkg-bottom.png" width="744" height="10" class="bottom-border" />
                 </div>
 
                 <div class="clear"></div>      
index 3789291..ca92979 100644 (file)
@@ -5,15 +5,13 @@
 {% block contenu %}
 {% autopaginate actualites 10 %}
 
-<h4>Actualités</h4>
-
-<ul class="actions">
-    <li><a href="/rss/actualites"><img src="/media/img/feed.png" /></a></li>
-</ul>
+<h4>
+    Actualités <a href="/rss/actualites"><img src="/media/img/feed.png" alt="fil RSS"/></a>
+</h4>
 
 <h5>Recherche</h5>
 
-<form action="" method="get" class="contenu-wrapper">
+<form action="" method="get">
     <table>
     {{ search_form.as_table }}
     <tr><th></th><td><input type="submit" value="Rechercher" /></td></tr>
 
 <h5>Résultats : {{ nb_resultats }} actualités correspondant à votre recherche</h5>
 
-<div  class="contenu-wrapper">
-    <div class="centre">{% paginate %}</div>
-    {% for actualite in actualites %}
-        {% include "savoirs/actualite_resultat.html" %}
-    {% endfor %}
-    <div class="centre">{% paginate %}</div>
-</div>
+<div class="centre">{% paginate %}</div>
+{% for actualite in actualites %}
+{% include "savoirs/actualite_resultat.html" %}
+{% endfor %}
+<div class="centre">{% paginate %}</div>
 {% endblock %}
index 8c8f5b9..8d42df6 100644 (file)
     th { font-weight: normal; padding-right: 10px;}
 </style>
 
-<div class="clearfix">
-    <h4>Soumettre un évènement</h4>
-    <div class="contenu-wrapper">
-        <form method="POST">
-            <table class="form">
-                {% include "render_form.html" %}
-                <tr><td></td><td><input type="submit" value="Ajouter" /></td></tr>
-            </table>
-        </form>
-    </div>
-</div>
+<h4>Soumettre un évènement</h4>
+<form method="POST">
+    <table class="form">
+        {% include "render_form.html" %}
+        <tr><td></td><td><input type="submit" value="Ajouter" /></td></tr>
+    </table>
+</form>
 
 {% endblock %}
index adfd6b0..9738286 100644 (file)
@@ -3,12 +3,10 @@
 
 {% block contenu %}
 {% autopaginate evenements 10 %}
-<h4>Agenda</h4>
-
 <ul class="actions">
     {% include "savoirs/evenement_actions.html" %}
-    <li><a href="/rss/agenda"><img src="/media/img/feed.png" /></a></li>
 </ul>
+<h4>Agenda <a href="/rss/agenda"><img src="/media/img/feed.png" alt="fil RSS" /></a></h4>
 
 <div class="texte">
     <p>
@@ -21,7 +19,7 @@
 </div>
 
 <h5>Recherche</h5>
-    <form action="" method="get" class="contenu-wrapper">
+    <form action="" method="get">
     <table>
     {{ search_form.as_table }}
     <tr><th></th><td><input type="submit" value="Rechercher" /></td></tr>
 
 <h5>Résultats : {{ nb_resultats }} évènements correspondant à votre recherche</h5>
 
-<div class="contenu-wrapper">
-    <div class="centre">{% paginate %}</div>
-    {% for evenement in evenements %}
-    {% include "savoirs/evenement_resultat.html" %}
-    {% endfor %}
-    <div class="centre">{% paginate %}</div>
-</div>
+<div class="centre">{% paginate %}</div>
+{% for evenement in evenements %}
+{% include "savoirs/evenement_resultat.html" %}
+{% endfor %}
+<div class="centre">{% paginate %}</div>
 {% endblock %}
index bd73008..5343068 100644 (file)
@@ -1,13 +1,13 @@
 {% extends "container_base.html" %}
 
 {% block contenu %}
-<h4>Agenda</h4>
-
 <ul class="actions">
     {% include "savoirs/evenement_actions.html" %}
     <li><a href="/rss/agenda"><img src="/media/img/feed.png" /></a></li>
 </ul>
 
+<h4>Agenda</h4>
+
 <h5>Conditions d'utilisation</h5>
 
 <div class="texte">
index bd1c66d..21046f8 100644 (file)
@@ -3,10 +3,11 @@
 {% block contenu %}
 <div class="demi-gauche clearfix">
     <div id="actualites" class="box">
-        <h4><a href="{% url savoirs.views.actualite_index %}">Actualités</a></h4>
-        <a id="rss-actualites" href="/rss/actualites"><img src="/media/img/feed.png" /></a>
-        
-        <ul class="sous-menu">
+        <h4>
+            <a href="{% url savoirs.views.actualite_index %}">Actualités</a>
+            <a id="rss-actualites" href="/rss/actualites"><img src="/media/img/feed.png" /></a>
+        </h4> 
+        <ul class="actions">
             <li><a href="{% url savoirs.views.actualite_index %}">Toutes les actualités</a></li>
         </ul>
         
@@ -25,7 +26,7 @@
     <div id="chercheurs" class="box">
         <h4><a href="{% url chercheurs.views.index %}">Répertoire</a></h4>
         
-        <ul class="sous-menu">
+        <ul class="actions">
             <li><a href="{% url chercheurs.views.index %}">Tous les chercheurs</a></li>
             {% include "chercheurs/actions.html" %}
         </ul>
 </div>
 <div class="demi-droite clearfix">
     <div id="agenda" class="box">
-        <h4><a href="{% url savoirs.views.evenement_index %}">Agenda</a></h4>
-        <a id="rss-agenda" href="/rss/agenda"><img src="/media/img/feed.png" /></a>
-
-        <ul class="sous-menu">
+        <h4>
+            <a href="{% url savoirs.views.evenement_index %}">Agenda</a>
+            <a id="rss-agenda" href="/rss/agenda"><img src="/media/img/feed.png" /></a>
+        </h4>
+        <ul class="actions">
           <li><a href="{% url savoirs.views.evenement_index %}">Tous les évènements</a></li>
           {% include "savoirs/evenement_actions.html" %}
         </ul>
@@ -64,7 +66,7 @@
     <div  id="ressources" class="box">
         <h4><a href="{% url savoirs.views.ressource_index %}">Ressources</a></h4>
         
-        <ul class="sous-menu">
+        <ul class="actions">
             <li><a href="{% url savoirs.views.ressource_index %}">Toutes les ressources</a></li>
         </ul>
         
@@ -89,7 +91,7 @@
     <div  id="sites" class="box">
         <h4><a href="{% url sitotheque.views.index %}">Sites</a></h4>
         
-        <ul class="sous-menu">
+        <ul class="actions">
             <li><a href="{% url sitotheque.views.index %}">Sitothèque</a></li>
             {% include "sites/actions.html" %}
         </ul>
index af185ed..226d905 100644 (file)
@@ -21,7 +21,7 @@
 
 <h5>Recherche</h5>
 
-<form action="" method="get" class="contenu-wrapper">
+<form action="" method="get">
     <table>
     {{ search_form.as_table }}
     <tr><th></th><td><input type="submit" value="Rechercher" /></td></tr>
index 6f047c1..af98a94 100644 (file)
@@ -10,7 +10,7 @@
 
 <h4>Sites &#8212; Sites AUF</h4>
 <div class="zone-texte">
-    <form method="get" action="" class="contenu-wrapper">
+    <form method="get" action="">
         <p style="margin-top: 10px;"><input type="text" size="40" name="q" value="{{ google_q|default:""}}" /><input type="submit" name="" value="Chercher" /></p>
     </form>
 
diff --git a/auf_savoirs_en_partage/templates/session_message.html b/auf_savoirs_en_partage/templates/session_message.html
new file mode 100644 (file)
index 0000000..c75db73
--- /dev/null
@@ -0,0 +1,4 @@
+{% if message %}
+<div class="messages">{{ message }}</div>
+{% endif %}
+
index 3fd0e3f..4697ced 100644 (file)
@@ -5,14 +5,14 @@
 {% block contenu %}
 {% autopaginate sites 10 %}
 
-<h4>Sites &#8212; Sitothèque</h4>
 <ul class="actions">
     {% include "sites/actions.html" %}
 </ul>
+<h4>Sites &#8212; Sitothèque</h4>
 
 <h5>Recherche</h5>
 
-<form method="get" action="" class="contenu-wrapper">
+<form method="get" action="">
     <table id="repertoire_recherche">
     {{search_form.as_table}}
     <tr><th></th><td><input type="submit" class="bouton" value="Rechercher" /></td></tr>
 
 <h5>Résultats : {{nb_sites}} site{{ nb_sites|pluralize }} correspondant à votre recherche</h5>
 
-<div class="contenu-wrapper">
-    <div class="centre">{% paginate %}</div>
-    {% for site in sites %}
-        {% include "sites/resultat.html" %}
-    {% endfor %}
-    <div class="centre">{% paginate %}</div>
-</div>
+<div class="centre">{% paginate %}</div>
+{% for site in sites %}
+{% include "sites/resultat.html" %}
+{% endfor %}
+<div class="centre">{% paginate %}</div>
 {% endblock %}
index 3c86e12..86740dd 100644 (file)
@@ -3,41 +3,39 @@
 {% block contenu %}
 <h4>{{ site }}</h4>
 
-<div class="contenu-wrapper">
-    <a href="{{site.url}}">{{site.url}}</a>
-    <br />
-    <p>{{site.description}}</p>
+<a href="{{site.url}}">{{site.url}}</a>
+<br />
+<p>{{site.description}}</p>
 
-    <table>
-        <tr>
-            <td><strong>Type:</strong></td>
-            <td>{{site.type_display}}</td>
-        </tr>
-        <tr>
-            <td><strong>Éditeur:</strong></td>
-            <td>{{site.editeur}}</td>
-        </tr>
-        <tr>
-            <td><strong>Auteur:</strong></td>
-            <td>{{site.auteur}}</td>
-        </tr>
-        <tr>
-            <td><strong>Mots-clés:</strong></td>
-            <td>{{site.mots_cles}}</td>
-        </tr>
-        <tr>
-            <td><strong>Date de publication:</strong></td>
-            <td>{{site.date_publication|default:"-"}}</td>
-        </tr>
-        <tr>
-            <td><strong>Disciplines:</strong></td>
-            <td>{{ site.discipline.all|join:", " }}</td>
-        </tr>
-        <tr>
-            <td><strong>Thématiques:</strong></td>
-            <td>{{ site.thematique.all|join:", " }}</td>
-        </tr>
-    </table>
-</div>
+<table>
+    <tr>
+        <td><strong>Type:</strong></td>
+        <td>{{site.type_display}}</td>
+    </tr>
+    <tr>
+        <td><strong>Éditeur:</strong></td>
+        <td>{{site.editeur}}</td>
+    </tr>
+    <tr>
+        <td><strong>Auteur:</strong></td>
+        <td>{{site.auteur}}</td>
+    </tr>
+    <tr>
+        <td><strong>Mots-clés:</strong></td>
+        <td>{{site.mots_cles}}</td>
+    </tr>
+    <tr>
+        <td><strong>Date de publication:</strong></td>
+        <td>{{site.date_publication|default:"-"}}</td>
+    </tr>
+    <tr>
+        <td><strong>Disciplines:</strong></td>
+        <td>{{ site.discipline.all|join:", " }}</td>
+    </tr>
+    <tr>
+        <td><strong>Thématiques:</strong></td>
+        <td>{{ site.thematique.all|join:", " }}</td>
+    </tr>
+</table>
 
 {% endblock %}
index b2dd434..b683919 100644 (file)
@@ -61,6 +61,7 @@ urlpatterns = sep_patterns + patterns(
     (r'^chercheurs/$', 'chercheurs.views.index'),
     (r'^chercheurs/(?P<id>\d+)/$', 'chercheurs.views.retrieve'),
     (r'^chercheurs/inscription/$', 'chercheurs.views.inscription'),
+    (r'^chercheurs/desinscription/$', 'chercheurs.views.desinscription'),
     (r'^chercheurs/perso/$', 'chercheurs.views.perso'),
     (r'^chercheurs/edit/$', 'chercheurs.views.edit'),
     (r'^chercheurs/conversion$', 'chercheurs.views.conversion'),
index 6f5c9d1..3590376 100644 (file)
@@ -27,6 +27,7 @@ eggs = auf_references_client
     datamaster_modeles
     django-roa
     django-admin-tools
+    django-flash
 
 #develop = src/caldav