[#3195] Réparé la génération des choix de fuseaux horaires
[auf_savoirs_en_partage_django.git] / auf_savoirs_en_partage / chercheurs / admin_views.py
1 # -*- encoding: utf-8 -*-
2 from django.core.urlresolvers import reverse as url
3 from django.contrib.auth.decorators import login_required
4 from django.contrib import messages
5 from django.http import HttpResponseRedirect
6 from django.shortcuts import render_to_response
7 from django.template import Context, RequestContext
8
9 from chercheurs.models import AdhesionGroupe, Groupe
10 from chercheurs.forms import CGStatutForm
11 from chercheurs.utils import export as real_export
12
13
14 @login_required
15 def assigner_cgstatut(request):
16 ids = request.GET.get("ids").split(",")
17 records = AdhesionGroupe.objects.in_bulk(ids)
18 if request.method == 'POST':
19 cgstatut_form = CGStatutForm(request.POST)
20
21 if cgstatut_form.is_valid():
22
23 statut = request.POST.get("statut")
24
25 # assigner le statut à chaque référence
26 for r in records.values():
27 r.statut = statut
28 r.save()
29
30 # retouner un status à l'utilisateur sur la liste des références
31 messages.success(
32 request,
33 u"Le statut a été assigné à %s références" % (len(ids),)
34 )
35 return HttpResponseRedirect('/admin/chercheurs/')
36 else:
37 cgstatut_form = CGStatutForm()
38
39 return render_to_response ("savoirs/assigner.html",
40 Context ({'records': records,
41 'form': cgstatut_form,
42 'titre': u"Assignation d'un statut par lots",
43 'description': u"Sélectionner le statut qui sera associé :" ,
44 }),
45 context_instance = RequestContext(request))
46
47 @login_required
48 def export(request):
49 type = request.GET['type']
50 id = request.GET['id']
51
52 queryset = Groupe.objects.get(pk=id).membres.all()
53
54 return real_export(queryset, type)