Move groups templates to accounts/ app.
[xnet] / xnet / accounts / views.py
index 358de78..3229180 100644 (file)
@@ -1,11 +1,34 @@
 from django.contrib import messages
 from django.shortcuts import get_object_or_404, render
 
-from xnet.accounts.models import XGroup
+from xnet.accounts.decorators import group_required
+from xnet.accounts.models import XGroup, Membership
 
 
 def index(request):
-    return render(request, 'groups/index.html', {'groups': XGroup.objects.order_by('kind')})
+    return render(request, 'accounts/index.html', {
+        'groups': XGroup.objects.order_by('kind'),
+        'sidebar': 'list',
+    })
 
-def view(request, pk):
-    return render(request, 'groups/view.html', {'group': get_object_or_404(XGroup, pk=pk)})
+def home(request, slug):
+    return render(request, 'accounts/home.html', {
+        'group': get_object_or_404(XGroup, short=slug),
+        'sidebar': 'home',
+    })
+
+@group_required()
+def directory(request, group, membership=None):
+    return render(request, 'accounts/directory.html', {
+        'group': group,
+        'memberships': group.memberships. \
+            filter(state='enabled'). \
+            select_related(). \
+            order_by('level'),
+        'is_admin': membership.level == Membership.LEVEL_ADMIN,
+        'sidebar': 'directory',
+    })
+
+@group_required(level=Membership.LEVEL_ADMIN)
+def membership_delete(request, group, to_delete):
+    pass