From a0e60dae2e83db52a1f28ff71c2696770a571a6f Mon Sep 17 00:00:00 2001
From: Jorran de Wit <jorrandewit@outlook.com>
Date: Fri, 27 Apr 2018 18:48:16 +0200
Subject: [PATCH] Add files to ReportForm data

---
 submissions/forms.py                               | 6 ++++++
 submissions/templates/submissions/report_form.html | 2 +-
 submissions/views.py                               | 3 ++-
 3 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/submissions/forms.py b/submissions/forms.py
index aaf160d1c..92fceea82 100644
--- a/submissions/forms.py
+++ b/submissions/forms.py
@@ -636,6 +636,12 @@ class ReportForm(forms.ModelForm):
         if self.submission.status in POST_PUBLICATION_STATUSES:
             self.report_type = REPORT_POST_EDREC
 
+    # def clean_file_attachment(self):
+    #     f = self.cleaned_data['file_attachment']
+    #     r = f.file
+    #     raise
+    #     return f
+
     def save(self):
         """
         Update meta data if ModelForm is submitted (non-draft).
diff --git a/submissions/templates/submissions/report_form.html b/submissions/templates/submissions/report_form.html
index 84b69c692..12d790a0d 100644
--- a/submissions/templates/submissions/report_form.html
+++ b/submissions/templates/submissions/report_form.html
@@ -91,7 +91,7 @@
             <div class="row">
                 <div class="col-md-6">
                     <br>
-                    <form action="{% url 'submissions:submit_report' arxiv_identifier_w_vn_nr=submission.arxiv_identifier_w_vn_nr %}" method="post">
+                    <form action="{% url 'submissions:submit_report' arxiv_identifier_w_vn_nr=submission.arxiv_identifier_w_vn_nr %}" method="post" enctype="multipart/form-data">
                         {% csrf_token %}
                         {{ form|bootstrap:'12,12' }}
                         <div class="anonymous-alert" style="display: none;">
diff --git a/submissions/views.py b/submissions/views.py
index 3c1c2e08f..ced14a8fd 100644
--- a/submissions/views.py
+++ b/submissions/views.py
@@ -1298,7 +1298,8 @@ def submit_report(request, arxiv_identifier_w_vn_nr):
         report_in_draft = submission.reports.in_draft().get(author=current_contributor)
     except Report.DoesNotExist:
         report_in_draft = Report(author=current_contributor, submission=submission)
-    form = ReportForm(request.POST or None, instance=report_in_draft, submission=submission)
+    form = ReportForm(request.POST or None, request.FILES or None,
+                      instance=report_in_draft, submission=submission)
 
     # Check if data sent is valid
     if form.is_valid():
-- 
GitLab