From 7b02c567bfb0703c4d0ac1e3fb385b7388c0bc32 Mon Sep 17 00:00:00 2001 From: Sergios Aftsidis <safts@noc.grnet.gr> Date: Mon, 17 Oct 2016 17:27:09 +0300 Subject: [PATCH] Fix user accounts assigned with wrong peers --- accounts/views.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/accounts/views.py b/accounts/views.py index 35c0e280..ada4eb7c 100644 --- a/accounts/views.py +++ b/accounts/views.py @@ -85,10 +85,19 @@ def activate(request, activation_key): if request.method == "POST": request_data = request.POST.copy() - try: + try: user = User.objects.get(pk=request_data['user']) up = user.get_profile() - for peer in request_data['peers']: + + # use getlist to get the list of peers (might be multiple) + profile_peers = request.POST.getlist('peers') + + # remove already assigned peers, as these are selected by + # the user, no admin has yet verified those. They will be + # replaced by the admin's selection. + up.peers.clear() + + for peer in profile_peers: up.peers.add(Peer.objects.get(pk=peer)) up.save() -- GitLab