diff --git a/scipost_django/submissions/forms.py b/scipost_django/submissions/forms.py index 929d3700d206241d6dd1a2e6fa97b35eaa87c9c7..9e1ab2b2e0673e6e89d9c2d667a5e04f010200d2 100644 --- a/scipost_django/submissions/forms.py +++ b/scipost_django/submissions/forms.py @@ -83,7 +83,10 @@ class SubmissionPoolSearchForm(forms.Form): max_length=128, required=False ) - status = forms.ChoiceField(choices=SUBMISSION_STATUS, required=False) + status = forms.ChoiceField( + choices=((None, 'All submissions currently under evaluation'),) + SUBMISSION_STATUS, + required=False + ) editor_in_charge = forms.ModelChoiceField( queryset=Fellowship.objects.active(), required=False @@ -94,40 +97,19 @@ class SubmissionPoolSearchForm(forms.Form): self.helper = FormHelper() self.helper.layout = Layout( Div( - Div( - FloatingField('acad_field'), - css_class='col-lg-6' - ), - Div( - FloatingField('specialties'), - css_class='col-lg-6' - ), + Div(FloatingField('acad_field'), css_class='col-lg-6'), + Div(FloatingField('specialties'), css_class='col-lg-6'), css_class='row mb-0' ), Div( - Div( - FloatingField('author'), - css_class='col-lg-6' - ), - Div( - FloatingField('title'), - css_class='col-lg-6' - ), + Div(FloatingField('author'), css_class='col-lg-6'), + Div(FloatingField('title'), css_class='col-lg-6'), css_class='row mb-0' ), Div( - Div( - FloatingField('identifier'), - css_class='col-lg-4' - ), - Div( - FloatingField('status'), - css_class='col-lg-4' - ), - Div( - FloatingField('editor_in_charge'), - css_class='col-lg-4' - ), + Div(FloatingField('identifier'), css_class='col-lg-3'), + Div(FloatingField('status'), css_class='col-lg-5'), + Div(FloatingField('editor_in_charge'), css_class='col-lg-4'), css_class='row mb-0' ), ) diff --git a/scipost_django/submissions/managers/submission.py b/scipost_django/submissions/managers/submission.py index 8377b6ae6aa80e24664b60bf6d8a2820921f04d9..144bf6b4981152da53b5123a63a587ec92aade48 100644 --- a/scipost_django/submissions/managers/submission.py +++ b/scipost_django/submissions/managers/submission.py @@ -67,11 +67,15 @@ class SubmissionQuerySet(models.QuerySet): def pool(self, user): """Return the user-dependent pool of Submissions in active referee phase.""" - return self.pool_editable(user).filter(is_current=True, status__in=[ + allowed_statuses = [ constants.STATUS_UNASSIGNED, constants.STATUS_EIC_ASSIGNED, constants.STATUS_ACCEPTED, - constants.STATUS_ACCEPTED_AWAITING_PUBOFFER_ACCEPTANCE]) + constants.STATUS_ACCEPTED_AWAITING_PUBOFFER_ACCEPTANCE + ] + if user.has_perm('scipost.can_oversee_refereeing'): + allowed_statuses.append(constants.STATUS_INCOMING) + return self.pool_editable(user).filter(is_current=True, status__in=allowed_statuses) def pool_editable(self, user): """Return the editable pool for a certain user. diff --git a/scipost_django/submissions/views.py b/scipost_django/submissions/views.py index 17afc37e6a0d41584acdb3f3a3b5e1eb1951c135..b559210177d98e3ad7beaa943895c1f7b0ca912b 100644 --- a/scipost_django/submissions/views.py +++ b/scipost_django/submissions/views.py @@ -31,7 +31,8 @@ from dal import autocomplete from .constants import ( STATUS_ACCEPTED_AWAITING_PUBOFFER_ACCEPTANCE, STATUS_ACCEPTED, STATUS_REJECTED, - STATUS_VETTED, SUBMISSION_STATUS, STATUS_FAILED_PRESCREENING, STATUS_ASSIGNMENT_FAILED, + STATUS_VETTED, SUBMISSION_STATUS, STATUS_FAILED_PRESCREENING, + STATUS_UNASSIGNED, STATUS_ASSIGNMENT_FAILED, STATUS_DRAFT, CYCLE_DIRECT_REC, STATUS_COMPLETED, STATUS_DEPRECATED, EIC_REC_PUBLISH, EIC_REC_REJECT, DECISION_FIXED, FIGSHARE_PREPRINT_SERVERS) @@ -771,7 +772,7 @@ def pool2(request): Listing of Submissions for purposes of editorial handling. """ context = { - 'form': SubmissionPoolSearchForm() + 'form': SubmissionPoolSearchForm(initial={ 'status': STATUS_UNASSIGNED }) } return render(request, 'submissions/pool/pool2.html', context)