From c725f50c81b03b5542426a1eae6904bcae1f1a10 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Wed, 11 Sep 2013 12:59:11 +0200 Subject: [PATCH] views: pass the delegate user as user to the send file form when a guest delegate is sending fixes #3590 --- docbow_project/docbow/views.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/docbow_project/docbow/views.py b/docbow_project/docbow/views.py index 1bf28b2..859665d 100644 --- a/docbow_project/docbow/views.py +++ b/docbow_project/docbow/views.py @@ -124,14 +124,13 @@ def send_file(request, file_type_id): reply_to = None if 'reply_to' in request.GET: reply_to = get_mailbox(request, request.GET['reply_to']) - if is_guest(request.user): - default_sender = request.user.delegations_by.all()[0].by + if hasattr(request.user, 'delegate'): delegators = [] else: - default_sender = request.user delegators = User.objects.filter( Q(id=request.user.id) | Q(delegations_to__to=request.user)).distinct() + real_user = getattr(request.user, 'delegate', request.user) limitations = get_filetype_limitation(request.user) if limitations: if not limitations.filter(id=file_type.id).exists(): @@ -140,7 +139,7 @@ def send_file(request, file_type_id): if 'send' not in request.POST: return redirect('outbox') form = FileForm(request.POST, request.FILES, - default_sender=default_sender, user=request.user, + default_sender=request.user, user=real_user, delegations=delegators, reply_to=reply_to, file_type=file_type, **get_file_form_kwargs(request)) @@ -174,7 +173,7 @@ def send_file(request, file_type_id): 'try agrain later. If it still does not work then, contact ' 'your administrator.')) else: - form = FileForm(default_sender=default_sender, user=request.user, + form = FileForm(default_sender=request.user, user=real_user, delegations=delegators, reply_to=reply_to, file_type=file_type, **get_file_form_kwargs(request))