diff --git a/wiki_groups/templates/wiki_groups/graph.html b/wiki_groups/templates/wiki_groups/graph.html deleted file mode 100644 index f2cfea7..0000000 --- a/wiki_groups/templates/wiki_groups/graph.html +++ /dev/null @@ -1,37 +0,0 @@ -{% extends "wiki/base.html" %} -{% load staticfiles %} - -{% block wiki_site_title %}Groupes - WikiENS{% endblock %} - -{% block wiki_contents %} -

Graphe des groupes du wiki

- -
- -
- -
- -

- Les flèches représentent l'inclusion : A -> B signifie que - le groupe A est contenu dans le groupe B. -

- - - - -{% endblock %} diff --git a/wiki_groups/templates/wiki_groups/list.html b/wiki_groups/templates/wiki_groups/list.html new file mode 100644 index 0000000..ecf293e --- /dev/null +++ b/wiki_groups/templates/wiki_groups/list.html @@ -0,0 +1,52 @@ +{% extends "wiki/base.html" %} +{% load staticfiles %} + +{% block wiki_site_title %}Groupes - WikiENS{% endblock %} + +{% block wiki_contents %} +

+ Liste des groupes du wiki + {% if request.user.is_staff or request.user.managed_groups.exists %} + + Liste des groupes gérés + + {% endif %} +

+
+ + + +

Graphe des groupes du wiki

+
+ +
+
+ +

+ Les flèches représentent l'inclusion : A -> B signifie que + le groupe A est contenu dans le groupe B. +

+ + + + +{% endblock %} diff --git a/wiki_groups/urls.py b/wiki_groups/urls.py index b9c4f44..8414869 100644 --- a/wiki_groups/urls.py +++ b/wiki_groups/urls.py @@ -4,8 +4,8 @@ from wiki_groups import views app_name = "wiki_groups" urlpatterns = [ + path("", views.GroupList.as_view(), name="list"), path("dot_graph", views.dot_graph, name="dot_graph"), - path("graph", views.graph, name="graph"), path("managed", views.ManagedGroupsView.as_view(), name="managed-groups"), path("", views.WikiGroupView.as_view(), name="admin-group"), path( diff --git a/wiki_groups/views.py b/wiki_groups/views.py index f580963..db751b9 100644 --- a/wiki_groups/views.py +++ b/wiki_groups/views.py @@ -2,7 +2,7 @@ from django.contrib.auth import get_user_model from django.contrib.auth.mixins import LoginRequiredMixin, UserPassesTestMixin from django.http import HttpResponse, HttpResponseRedirect from django.urls import reverse, reverse_lazy -from django.views.generic import DetailView, ListView, RedirectView, TemplateView +from django.views.generic import DetailView, ListView, RedirectView from django.views.generic.detail import SingleObjectMixin from django.views.generic.edit import BaseFormView @@ -30,7 +30,14 @@ def dot_graph(request): return response -graph = TemplateView.as_view(template_name="wiki_groups/graph.html") +class GroupList(ListView): + template_name = "wiki_groups/list.html" + model = WikiGroup + + def get_queryset(self): + return WikiGroup.objects.select_related("django_group").order_by( + "django_group__name" + ) class WikiGroupMixin(SingleObjectMixin, UserPassesTestMixin):