# 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:
)
#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')
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
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"""
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"""
def conversion(request):
return render_to_response("chercheurs/conversion.html", {},
context_instance=RequestContext(request))
+
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;}
td, th { vertical-align:middle; padding: 5px }
-.box { padding:0 0 20px 0; }
.lbl {color:#97012c; }
.centre { text-align:center }
#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;}
#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; }
#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; }
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;}
.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;
{
}
-#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
{
.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; }
'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',
"django.core.context_processors.request",
"context_processors.user_chercheur",
"context_processors.discipline_region",
+ "djangoflash.context_processors.flash"
)
TEMPLATE_LOADERS = (
--- /dev/null
+ALTER TABLE chercheurs_chercheur DROP COLUMN actif;
{% 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 %}
{% 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 %}
{% 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 %}
--- /dev/null
+{% 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 %}
{% block contenu %}
<h4>{{chercheur.personne.prenom}} {{chercheur.personne.nom}}</h4>
-<div class="contenu-wrapper">
<form method="post">
{% include "chercheurs/chercheur_form.html" %}
<fieldset>
<input type="submit" value="Sauvegarder" />
</form>
-</div>
{% endblock %}
{% 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
<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 %}
{% block contenu %}
<h4>Inscription au répertoire de chercheurs</h4>
-<div class="contenu-wrapper">
<form method="post">
{% include "chercheurs/chercheur_form.html" %}
<fieldset>
<br />
<input type="submit" name="Submit" value="Inscription" class="bouton" />
</form>
-</div>
{% endblock %}
{% 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 %}
{% 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 %}
{% block contenu %}
<h4>{{ chercheur }}</h4>
-<div class="contenu-wrapper">
- {% include "chercheurs/fiche.html" %}
-</div>
+{% include "chercheurs/fiche.html" %}
{% endblock %}
</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>
{% 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 %}
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 %}
{% 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>
</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 %}
{% 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">
{% 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>
<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>
<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>
<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>
<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>
<h4>Sites — 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>
--- /dev/null
+{% if message %}
+<div class="messages">{{ message }}</div>
+{% endif %}
+
{% block contenu %}
{% autopaginate sites 10 %}
-<h4>Sites — Sitothèque</h4>
<ul class="actions">
{% include "sites/actions.html" %}
</ul>
+<h4>Sites — 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 %}
{% 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 %}
(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'),
datamaster_modeles
django-roa
django-admin-tools
+ django-flash
#develop = src/caldav