From 0c04ba2c05fb14495f45fd1f71c479fc2856da4f Mon Sep 17 00:00:00 2001 From: "J.-S. Caux" <J.S.Caux@uva.nl> Date: Fri, 30 Apr 2021 14:56:53 +0200 Subject: [PATCH] SubmissionForm: hide submitted_to and acad_field --- submissions/forms.py | 45 +++++++++---------- .../submissions/submission_form.html | 17 +------ submissions/views.py | 4 +- 3 files changed, 23 insertions(+), 43 deletions(-) diff --git a/submissions/forms.py b/submissions/forms.py index e44271d7b..c77bfcbd5 100644 --- a/submissions/forms.py +++ b/submissions/forms.py @@ -241,8 +241,8 @@ class SubmissionPrefillForm(forms.Form): def get_prefill_data(self): form_data = { - 'acad_field': self.journal.college.acad_field.id, - 'submitted_to': self.journal.id + 'acad_field': self.journal.college.acad_field, + 'submitted_to': self.journal } if self.thread_hash: form_data['thread_hash'] = self.thread_hash @@ -397,14 +397,13 @@ class SubmissionForm(forms.ModelForm): """ Form to submit a new (re)Submission. """ - acad_field = forms.ModelChoiceField( - queryset=AcademicField.objects.all(), - widget=autocomplete.ModelSelect2( - url='/ontology/acad_field-autocomplete?exclude=multidisciplinary' - ), - label='Academic field', - disabled=True - ) + # acad_field = forms.ModelChoiceField( + # queryset=AcademicField.objects.all(), + # # widget=autocomplete.ModelSelect2( + # # url='/ontology/acad_field-autocomplete?exclude=multidisciplinary' + # # ), + # label='Academic field', + # ) specialties = forms.ModelMultipleChoiceField( queryset=Specialty.objects.all(), widget=autocomplete.ModelSelect2Multiple( @@ -443,6 +442,8 @@ class SubmissionForm(forms.ModelForm): 'referees_flagged', ] widgets = { + 'submitted_to': forms.HiddenInput(), + 'acad_field': forms.HiddenInput(), 'is_resubmission_of': forms.HiddenInput(), 'thread_hash': forms.HiddenInput(), 'arxiv_link': forms.TextInput( @@ -500,25 +501,21 @@ class SubmissionForm(forms.ModelForm): del self.fields['author_comments'] del self.fields['list_of_changes'] - # Select Journal instances. - # self.fields['submitted_to'].queryset = Journal.objects.active().submission_allowed() - # self.fields['submitted_to'].label = 'Journal: submit to' - self.fields['submitted_to'].widget.attrs.update({ 'disabled': True}) - # Restrict choice of specialties to those of relevant AcademicField if kwargs['initial'].get('acad_field', None): self.fields['specialties'].widget.url = \ - self.fields['specialties'].widget.url + '?acad_field_id=' + str(kwargs['initial'].get('acad_field')) + self.fields['specialties'].widget.url + '?acad_field_id=' + str(kwargs['initial'].get('acad_field').id) # Proceedings submission fields - qs = self.fields['proceedings'].queryset.open_for_submission() - self.fields['proceedings'].queryset = qs - self.fields['proceedings'].empty_label = None - if not qs.exists(): - # No proceedings issue to submit to, so adapt the form fields - self.fields['submitted_to'].queryset = self.fields['submitted_to'].queryset.exclude( - doi_label__contains='Proc') + if 'Proc' not in kwargs['initial'].get('submitted_to', None).doi_label: del self.fields['proceedings'] + pass + else: + qs = self.fields['proceedings'].queryset.open_for_submission() + self.fields['proceedings'].queryset = qs + self.fields['proceedings'].empty_label = None + if not qs.exists(): + del self.fields['proceedings'] def is_resubmission(self): return self.is_resubmission_of is not None @@ -612,7 +609,7 @@ class SubmissionForm(forms.ModelForm): submission.submitted_by = self.requested_by.contributor # Save identifiers - url = None + url = '' if self.preprint_server == 'arXiv': url = self.cleaned_data.get('arxiv_link', '') elif self.preprint_server == 'ChemRxiv': diff --git a/submissions/templates/submissions/submission_form.html b/submissions/templates/submissions/submission_form.html index e30a97018..e961b59d3 100644 --- a/submissions/templates/submissions/submission_form.html +++ b/submissions/templates/submissions/submission_form.html @@ -14,7 +14,7 @@ {% block content %} <div class="row"> <div class="col-12"> - <h1 class="highlight">Submit a manuscript to SciPost</h1> + <h1 class="highlight">Submit a manuscript to {{ journal.name }}</h1> </div> <div class="col-12"> @@ -59,19 +59,4 @@ {% block footer_script %} {{ form.media }} - <script nonce="{{ request.csp_nonce }}"> - $(document).ready(function(){ - $("#id_proceedings").parents('.form-group').hide() - $('select#id_submitted_to').on('change', function (){ - var selection = $(this).val(); - $("#id_proceedings").parents('.form-group').hide() - - switch(selection){ - case "{{ id_SciPostPhysProc }}": - $("#id_proceedings").parents('.form-group').show() - break; - } - }).trigger('change'); - }); - </script> {% endblock %} diff --git a/submissions/views.py b/submissions/views.py index db2364fa9..7e3f44b5f 100644 --- a/submissions/views.py +++ b/submissions/views.py @@ -230,8 +230,7 @@ class RequestSubmissionView(LoginRequiredMixin, PermissionRequiredMixin, CreateV def get_context_data(self, *args, **kwargs): context = super().get_context_data(*args, **kwargs) - context['id_SciPostPhys'] = get_object_or_404(Journal, doi_label='SciPostPhys').id - context['id_SciPostPhysProc'] = get_object_or_404(Journal, doi_label='SciPostPhysProc').id + context['journal'] = get_object_or_404(Journal, doi_label=self.kwargs.get('journal_doi_label')) return context def get_form_kwargs(self): @@ -512,7 +511,6 @@ def submission_detail(request, identifier_w_vn_nr): 'is_author': is_author, 'is_author_unchecked': is_author_unchecked, }) - print(context) return render(request, 'submissions/submission_detail.html', context) -- GitLab