From 14319ee1fcc208ff96f1145c9821426cb76146e6 Mon Sep 17 00:00:00 2001
From: Jorran de Wit <jorrandewit@outlook.com>
Date: Tue, 12 Dec 2017 13:28:54 -0400
Subject: [PATCH] Fix: clean methods in reg.invs not solid

---
 scipost/forms.py                                    | 13 ++++++++++++-
 .../scipost/draft_registration_invitation.html      |  2 +-
 .../templates/scipost/registration_invitations.html |  2 +-
 3 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/scipost/forms.py b/scipost/forms.py
index dae0ae808..854726e93 100644
--- a/scipost/forms.py
+++ b/scipost/forms.py
@@ -19,7 +19,8 @@ from captcha.fields import ReCaptchaField
 from ajax_select.fields import AutoCompleteSelectField
 from haystack.forms import ModelSearchForm as HayStackSearchForm
 
-from .constants import SCIPOST_DISCIPLINES, TITLE_CHOICES, SCIPOST_FROM_ADDRESSES
+from .constants import SCIPOST_DISCIPLINES, TITLE_CHOICES, SCIPOST_FROM_ADDRESSES,\
+    INVITATION_CITED_SUBMISSION, INVITATION_CITED_PUBLICATION
 from .decorators import has_contributor
 from .models import Contributor, DraftInvitation, RegistrationInvitation,\
                     UnavailabilityPeriod, PrecookedEmail
@@ -219,6 +220,16 @@ class RegistrationInvitationForm(forms.ModelForm):
             queryset=Publication.objects.all().order_by('-publication_date'),
             required=False)
 
+    def clean(self):
+        data = self.cleaned_data
+        if data.get('invitation_type') == INVITATION_CITED_SUBMISSION:
+            if not data.get('cited_in_submission'):
+                self.add_error('cited_in_submission', 'Please state the Submission cited.')
+        if data.get('invitation_type') == INVITATION_CITED_PUBLICATION:
+            if not data.get('cited_in_publication'):
+                self.add_error('cited_in_publication', 'Please state the Publication cited.')
+        return data
+
     def clean_email(self):
         email = self.cleaned_data['email']
         if RegistrationInvitation.objects.filter(email=email).exists():
diff --git a/scipost/templates/scipost/draft_registration_invitation.html b/scipost/templates/scipost/draft_registration_invitation.html
index 6724952a0..fe8d1f61f 100644
--- a/scipost/templates/scipost/draft_registration_invitation.html
+++ b/scipost/templates/scipost/draft_registration_invitation.html
@@ -49,7 +49,7 @@ $(document).ready(function(){
               {% csrf_token %}
               {{draft_inv_form.media}}
               {{draft_inv_form|bootstrap}}
-              <input type="submit" class="btn btn-secondary"/>
+              <input type="submit" class="btn btn-primary" value="Submit"/>
         </form>
     </div>
 </div>
diff --git a/scipost/templates/scipost/registration_invitations.html b/scipost/templates/scipost/registration_invitations.html
index cc5a6922d..bcd610d61 100644
--- a/scipost/templates/scipost/registration_invitations.html
+++ b/scipost/templates/scipost/registration_invitations.html
@@ -56,7 +56,7 @@ $(document).ready(function(){
             {% csrf_token %}
             {{reg_inv_form.media}}
             {{reg_inv_form|bootstrap}}
-            <input type="submit" class="btn btn-secondary">
+            <input type="submit" class="btn btn-primary" value="Submit">
         </form>
     </div>
 </div>
-- 
GitLab