From 5da508d2d033e2ad31e8f841449018be0bf4a2e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89lie=20Bouttier?= Date: Sun, 19 Nov 2017 21:41:03 +0100 Subject: [PATCH] volunteers: handle logged users --- cfp/views.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/cfp/views.py b/cfp/views.py index 36fe02d..5f355ef 100644 --- a/cfp/views.py +++ b/cfp/views.py @@ -44,10 +44,23 @@ def home(request): def volunteer_enrole(request): if not request.conference.volunteers_enrollment_is_open(): raise PermissionDenied - form = VolunteerForm(request.POST or None, conference=request.conference) + initial = {} + if request.user.is_authenticated(): + if Volunteer.objects.filter(site=request.conference.site, email=request.user.email).exists(): + return redirect(reverse('volunteer-home')) + elif not request.POST: + # TODO: import biography, phone number and sms_prefered from User profile + initial.update({ + 'name': request.user.get_full_name(), + }) + form = VolunteerForm(request.POST or None, initial=initial, conference=request.conference) + if request.user.is_authenticated(): + form.fields.pop('email') if request.method == 'POST' and form.is_valid(): volunteer = form.save(commit=False) volunteer.language = request.LANGUAGE_CODE + if request.user.is_authenticated(): + volunteer.email = request.user.email volunteer.save() body = _("""Hi {},