On affiche la liste des managers
This commit is contained in:
parent
cc50d540c3
commit
29c5abbc1a
2 changed files with 38 additions and 34 deletions
|
@ -4,44 +4,49 @@
|
|||
{% block wiki_site_title %}Groupes - WikiENS{% endblock %}
|
||||
|
||||
{% block wiki_contents %}
|
||||
<h2>Liste des groupes du wiki</h2>
|
||||
<h2>
|
||||
Liste des groupes du wiki
|
||||
{% if request.user.is_staff or request.user.managed_groups.exists %}
|
||||
<a class="btn btn-primary float-right" href="{% url 'wiki_groups:managed-groups' %}">
|
||||
Liste des groupes gérés
|
||||
</a>
|
||||
{% endif %}
|
||||
</h2>
|
||||
<hr>
|
||||
|
||||
<hr />
|
||||
<ul>
|
||||
{% for group in wikigroup_list %}
|
||||
<li>{{ group.django_group.name }} {% if group.managers.exists %}(Géré par {% for m in group.managers.all %}{{ m }}{% if not forloop.last %}, {% endif %}{% endfor %}){% endif %}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
{% for id, name in groups %}
|
||||
<li>{{name}}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<h2>Graphe des groupes du wiki</h2>
|
||||
<hr>
|
||||
|
||||
<h2>Graphe des groupes du wiki</h2>
|
||||
<div id="svg-graph"></div>
|
||||
<hr>
|
||||
|
||||
<hr />
|
||||
<p>
|
||||
Les flèches représentent l'inclusion : <code>A -> B</code> signifie que
|
||||
le groupe <code>A</code> est contenu dans le groupe <code>B</code>.
|
||||
</p>
|
||||
|
||||
<div id="svg-graph"></div>
|
||||
<script src="{% static 'wiki_groups/js/vendor/viz.js' %}"></script>
|
||||
<script src="{% static 'wiki_groups/js/vendor/lite.render.js' %}"></script>
|
||||
<script>
|
||||
var viz = new Viz();
|
||||
|
||||
<hr />
|
||||
|
||||
<p>
|
||||
Les flèches représentent l'inclusion : <code>A -> B</code> signifie que
|
||||
le groupe <code>A</code> est contenu dans le groupe <code>B</code>.
|
||||
</p>
|
||||
|
||||
<script src="{% static 'wiki_groups/js/vendor/viz.js' %}"></script>
|
||||
<script src="{% static 'wiki_groups/js/vendor/lite.render.js' %}"></script>
|
||||
<script>
|
||||
var viz = new Viz();
|
||||
|
||||
var xhttp = new XMLHttpRequest();
|
||||
xhttp.onreadystatechange = function() {
|
||||
if (this.readyState == 4 && this.status == 200) {
|
||||
viz.renderSVGElement(this.responseText)
|
||||
var xhttp = new XMLHttpRequest();
|
||||
xhttp.onreadystatechange = function() {
|
||||
if (this.readyState == 4 && this.status == 200) {
|
||||
viz.renderSVGElement(this.responseText)
|
||||
.then(element => {
|
||||
document.getElementById("svg-graph").appendChild(element);
|
||||
})
|
||||
}
|
||||
};
|
||||
xhttp.open("GET", "{% url 'wiki_groups:dot_graph' %}", true);
|
||||
xhttp.send();
|
||||
</script>
|
||||
}
|
||||
};
|
||||
xhttp.open('GET', '{% url 'wiki_groups:dot_graph' %}', true);
|
||||
xhttp.send();
|
||||
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
|
|
@ -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
|
||||
|
||||
|
@ -33,10 +33,9 @@ def dot_graph(request):
|
|||
class GroupList(ListView):
|
||||
template_name = "wiki_groups/list.html"
|
||||
model = WikiGroup
|
||||
context_object_name = "groups"
|
||||
|
||||
def get_queryset(self):
|
||||
return WikiGroup.objects.values_list("id", "django_group__name").order_by(
|
||||
return WikiGroup.objects.select_related("django_group").order_by(
|
||||
"django_group__name"
|
||||
)
|
||||
|
||||
|
|
Loading…
Reference in a new issue