def groupe_retrieve(request, id):
groupe = get_object_or_404(Groupe, id=id)
membres = groupe.membership.all().filter(actif=True).order_by('-date_modification')
+ plus_que_20 = True if membres.count() > 20 else False
+ membres_20 = membres[:20]
messages = groupe.message_set.all()[:5]
est_chercheur, est_membre, est_membre_actif = False, False, False
return render_to_response(
"chercheurs/groupe_retrieve.html", {
'groupe': groupe,
- 'membres': membres,
+ 'membres': membres_20,
+ 'plus_que_20': plus_que_20,
'messages': messages,
'est_chercheur': est_chercheur,
'est_membre': est_membre,
}, context_instance=RequestContext(request)
)
+def groupe_membres(request, id):
+ groupe = get_object_or_404(Groupe, id=id)
+ membres = groupe.membership.all().filter(actif=True).order_by('chercheur__nom')
+
+ return render_to_response(
+ "chercheurs/groupe_membres.html", {
+ 'groupe': groupe,
+ 'membres': membres,
+ }, context_instance=RequestContext(request)
+ )
+
def groupe_messages(request, id):
groupe = get_object_or_404(Groupe, id=id)
--- /dev/null
+{% extends "container_base.html" %}
+{% load pagination_tags %}
+
+{% block contenu %}
+{% autopaginate membres 50 %}
+
+<h1>{{ groupe }}</h1>
+<p><a href="{% url groupe_retrieve groupe.pk %}">Retour à la page du groupe</a></p>
+
+<h2>Liste complète des membres</h2>
+{% if membres %}
+ <ul>
+ {% for membre in membres.all %}
+ <li><a href="{% url chercheurs.views.retrieve membre.chercheur.pk %}">{{ membre.chercheur.prenom }} {{ membre.chercheur.nom|upper }}</a></li>
+ {% endfor %}
+ </ul>
+ <div class="pagination">{% paginate %}</div>
+{% else %}
+<p>Aucun membre</p>
+{% endif %}
+
+{% endblock %}
{% extends "container_base.html" %}
-{% load pagination_tags %}
{% block contenu %}
-{% autopaginate membres 20 %}
<h1>{{ groupe }}</h1>
<div style="float:left;width:270px">
{% if membres %}
- <h2>Membres</h2>
- <ul>
- {% for membre in membres.all %}
- <li><a href="{% url chercheurs.views.retrieve membre.chercheur.pk %}">{{ membre.chercheur.prenom }} {{ membre.chercheur.nom|upper }}</a></li>
- {% endfor %}
- </ul>
- {% paginate %}
+ <h2>Membres</h2>
+ <ul>
+ {% for membre in membres.all %}
+ <li><a href="{% url chercheurs.views.retrieve membre.chercheur.pk %}">{{ membre.chercheur.prenom }} {{ membre.chercheur.nom|upper }}</a></li>
+ {% endfor %}
+ </ul>
+ {% if plus_que_20 %}
+ <a href="{% url groupe_membres groupe.pk %}">Voir tous les chercheurs de ce groupe</a>
+ {% endif %}
{% endif %}
<!--<h2>Recherches prédéfinies</h2>-->
</div>
(r'^groupes/$', 'chercheurs.views.groupe_index'),
url(r'^groupes/(?P<id>\d+)/$', 'chercheurs.views.groupe_retrieve', name='groupe_retrieve'),
url(r'^groupes/(?P<id>\d+)/adhesion/$', 'chercheurs.views.groupe_adhesion', name='groupe_adhesion'),
+ url(r'^groupes/(?P<id>\d+)/membres/$', 'chercheurs.views.groupe_membres', name='groupe_membres'),
url(r'^groupes/(?P<id>\d+)/messages/$', 'chercheurs.views.groupe_messages', name='groupe_messages'),
# section par discipline et/ou région