From b9d66ca166646357afda9eb3c9c94625f86a46c8 Mon Sep 17 00:00:00 2001 From: Jorran de Wit <jorrandewit@outlook.com> Date: Fri, 29 Sep 2017 22:27:40 +0200 Subject: [PATCH] Do the same for the EdColAdmin --- scipost/static/scipost/assets/css/_pool.scss | 1 + .../admin/editorial_admin_summary.html | 144 ----------------- .../submissions/admin/submission_details.html | 147 ++++++++++++++++++ .../submissions/admin/submission_li.html | 24 +++ .../submissions/admin/editorial_admin.html | 72 ++------- submissions/urls.py | 2 + submissions/views.py | 8 +- 7 files changed, 193 insertions(+), 205 deletions(-) delete mode 100644 submissions/templates/partials/submissions/admin/editorial_admin_summary.html create mode 100644 submissions/templates/partials/submissions/admin/submission_details.html create mode 100644 submissions/templates/partials/submissions/admin/submission_li.html diff --git a/scipost/static/scipost/assets/css/_pool.scss b/scipost/static/scipost/assets/css/_pool.scss index 32ba99f0e..5a59e0df5 100644 --- a/scipost/static/scipost/assets/css/_pool.scss +++ b/scipost/static/scipost/assets/css/_pool.scss @@ -2,6 +2,7 @@ $pool-icons-width: 40px; $pool-flex-width: calc(100% - 40px); +.editorial-admin, .pool { .pool-item { .icons { diff --git a/submissions/templates/partials/submissions/admin/editorial_admin_summary.html b/submissions/templates/partials/submissions/admin/editorial_admin_summary.html deleted file mode 100644 index 65fdf4c9c..000000000 --- a/submissions/templates/partials/submissions/admin/editorial_admin_summary.html +++ /dev/null @@ -1,144 +0,0 @@ -{% load guardian_tags %} -{% load scipost_extras %} -{% load submissions_extras %} - - -<h5 class="pb-0">{{submission.get_subject_area_display}}</h5> -<h3 class="card-title"> - <a href="{{submission.get_absolute_url}}">{{submission.title}}</a> -</h3> - -<p class="card-text mb-3">by {{submission.author_list}}</p> -<h3>Info</h3> -<table class="text-muted w-100 mb-1"> - <tr> - <td style="min-width: 40%;">Version</td> - <td>{{submission.arxiv_vn_nr}} ({% if submission.is_current %}current version{% else %}deprecated version {{submission.arxiv_vn_nr}}{% endif %})</td> - </tr> - <tr> - <td>Submitted</td> - <td>{{submission.submission_date}} to {{submission.get_submitted_to_journal_display}}</td> - </tr> - - {% if submission.acceptance_date %} - <tr> - <td>Accepted</td> - <td>{{submission.acceptance_date}}</td> - </tr> - {% endif %} - - <tr> - <td>Latest activity</td> - <td>{{submission.latest_activity}}</td> - </tr> - <tr> - <td>Editor-in-charge</td> - <td> - {% if submission.editor_in_charge %} - {{ submission.editor_in_charge }} - {% elif perms.scipost.can_assign_submissions %} - <a href="{% url 'submissions:assign_submission' submission.arxiv_identifier_w_vn_nr %}">Send a new assignment request</a> - {% else %} - - - {% endif %} - </td> - </tr> - <tr> - <td>Status</td> - <td>{{ submission.get_status_display }}</td> - </tr> - <tr> - <td>Refereeing cycle</td> - <td>{{ submission.get_refereeing_cycle_display }}</td> - </tr> - - {% include 'partials/submissions/refereeing_status_as_tr.html' with submission=submission %} - - <tr> - <td>Comments</td> - <td> - {{submission.comments.vetted.count}} - <span class="circle-clickable" data-toggle="tooltip" data-placement='bottom' data-html="true" title="{{submission.comments.regular_comments.vetted.count}} comments<br>{{submission.comments.author_replies.vetted.count}} author replies<hr>{{submission.comments.awaiting_vetting.count}} awaiting vetting">?</span> - </td> - </tr> - - <tr> - <td>Reporting deadline</td> - <td> - {% if submission.reporting_deadline > now %} - in {{submission.reporting_deadline|timeuntil}} - {% else %} - {{submission.reporting_deadline|timesince}} ago - {% endif %} - </td> - </tr> - - <tr> - <td>Plagiarism score</td> - <td> - {% if submission.plagiarism_report %} - {{ submission.plagiarism_report.score }}% - {% else %} - <a href="{% url 'submissions:plagiarism' submission.arxiv_identifier_w_vn_nr %}">Run plagiarism check</a> - {% endif %} - </td> - </tr> - -</table> -<a href="{% url 'submissions:editorial_page' submission.arxiv_identifier_w_vn_nr %}" class="d-inline-block mb-3">Go to Editorial Page</a> - -<h3>Actions</h3> - -<ul class="pl-4 mb-3"> - {# EIC Assignments #} - {% if perms.scipost.can_assign_submissions %} - {% if not submission.editor_in_charge %} - <li>EIC Assignment requests:</li> - <ul> - {% for assignment in submission.editorial_assignments.all %} - {% include 'submissions/_assignment_info.html' with assignment=assignment %} - {% empty %} - <li>None found. <a href="{% url 'submissions:assign_submission' submission.arxiv_identifier_w_vn_nr %}">Send a first assignment request</a></li> - {% endfor %} - </ul> - <li><a href="{% url 'submissions:assign_submission' submission.arxiv_identifier_w_vn_nr %}">Send a new assignment request</a></li> - <li><a href="{% url 'submissions:assignment_failed' submission.arxiv_identifier_w_vn_nr %}">Close pre-screening: failure to find EIC</a></li> - {% endif %} - {% endif %} - - {# Plagiarism #} - <li><a href="{% url 'submissions:plagiarism' submission.arxiv_identifier_w_vn_nr %}">Manage plagiarism report</a></li> - - {# Compile pdfs #} - {% if submission.reports.accepted.exists %} - <li><a href="{% url 'submissions:reports_accepted_list' %}?submission={{submission.arxiv_identifier_w_vn_nr}}">Compile accepted reports</a></li> - {% endif %} - - {# Communication #} - {% if submission.editor_in_charge %} - <li><a href="{% url 'submissions:communication' arxiv_identifier_w_vn_nr=submission.arxiv_identifier_w_vn_nr comtype='StoE' %}">Send a communication to the Editor-in-charge</a></li> - {% endif %} - - {# EIC Recommendations #} - {% if submission.eicrecommendations.exists %} - <li>See Editorial Recommendations:</li> - <ul> - {% for rec in submission.eicrecommendations.all %} - <li><a href="{% url 'submissions:eic_recommendation_detail' arxiv_identifier_w_vn_nr=submission.arxiv_identifier_w_vn_nr rec_id=rec.id %}">{{rec.get_recommendation_display}}</a></li> - {% endfor %} - </ul> - {% endif %} - - {# Accepted submission actions #} - {% if submission.status == 'accepted' %} - <li><a href="{% url 'submissions:treated_submission_pdf_compile' submission.arxiv_identifier_w_vn_nr %}">Update the Refereeing Package pdf</a></li> - <li>After proofs have been accepted, you can <a href="{% url 'journals:initiate_publication' %}">initiate the publication process</a> (leads to the validation page)</li> - {% endif %} -</ul> - - -<h3>Events</h3> -<a href="javascript:;" data-toggle="toggle" data-target="#eventslist">Show/hide events</a> -<div id="eventslist"> - {% include 'submissions/submission_event_list.html' with events=submission.events.for_eic %} -</div> diff --git a/submissions/templates/partials/submissions/admin/submission_details.html b/submissions/templates/partials/submissions/admin/submission_details.html new file mode 100644 index 000000000..39969bdc5 --- /dev/null +++ b/submissions/templates/partials/submissions/admin/submission_details.html @@ -0,0 +1,147 @@ +{% load guardian_tags %} +{% load scipost_extras %} +{% load submissions_extras %} + + +<div class="card border-secondary mt-2 submission-detail"> + <div class="card-body"> + <h5 class="pb-0">{{submission.get_subject_area_display}}</h5> + <h3 class="card-title"> + <a href="{{submission.get_absolute_url}}">{{submission.title}}</a> + </h3> + + <p class="card-text mb-3">by {{submission.author_list}}</p> + <h3>Info</h3> + <table class="text-muted w-100 mb-1"> + <tr> + <td style="min-width: 40%;">Version</td> + <td>{{submission.arxiv_vn_nr}} ({% if submission.is_current %}current version{% else %}deprecated version {{submission.arxiv_vn_nr}}{% endif %})</td> + </tr> + <tr> + <td>Submitted</td> + <td>{{submission.submission_date}} to {{submission.get_submitted_to_journal_display}}</td> + </tr> + + {% if submission.acceptance_date %} + <tr> + <td>Accepted</td> + <td>{{submission.acceptance_date}}</td> + </tr> + {% endif %} + + <tr> + <td>Latest activity</td> + <td>{{submission.latest_activity}}</td> + </tr> + <tr> + <td>Editor-in-charge</td> + <td> + {% if submission.editor_in_charge %} + {{ submission.editor_in_charge }} + {% elif perms.scipost.can_assign_submissions %} + <a href="{% url 'submissions:assign_submission' submission.arxiv_identifier_w_vn_nr %}">Send a new assignment request</a> + {% else %} + - + {% endif %} + </td> + </tr> + <tr> + <td>Status</td> + <td>{{ submission.get_status_display }}</td> + </tr> + <tr> + <td>Refereeing cycle</td> + <td>{{ submission.get_refereeing_cycle_display }}</td> + </tr> + + {% include 'partials/submissions/refereeing_status_as_tr.html' with submission=submission %} + + <tr> + <td>Comments</td> + <td> + {{submission.comments.vetted.count}} + <span class="circle-clickable" data-toggle="tooltip" data-placement='bottom' data-html="true" title="{{submission.comments.regular_comments.vetted.count}} comments<br>{{submission.comments.author_replies.vetted.count}} author replies<hr>{{submission.comments.awaiting_vetting.count}} awaiting vetting">?</span> + </td> + </tr> + + <tr> + <td>Reporting deadline</td> + <td> + {% if submission.reporting_deadline > now %} + in {{submission.reporting_deadline|timeuntil}} + {% else %} + {{submission.reporting_deadline|timesince}} ago + {% endif %} + </td> + </tr> + + <tr> + <td>Plagiarism score</td> + <td> + {% if submission.plagiarism_report %} + {{ submission.plagiarism_report.score }}% + {% else %} + <a href="{% url 'submissions:plagiarism' submission.arxiv_identifier_w_vn_nr %}">Run plagiarism check</a> + {% endif %} + </td> + </tr> + + </table> + <a href="{% url 'submissions:editorial_page' submission.arxiv_identifier_w_vn_nr %}" class="d-inline-block mb-3">Go to Editorial Page</a> + + <h3>Actions</h3> + + <ul class="pl-4 mb-3"> + {# EIC Assignments #} + {% if perms.scipost.can_assign_submissions %} + {% if not submission.editor_in_charge %} + <li>EIC Assignment requests:</li> + <ul> + {% for assignment in submission.editorial_assignments.all %} + {% include 'submissions/_assignment_info.html' with assignment=assignment %} + {% empty %} + <li>None found. <a href="{% url 'submissions:assign_submission' submission.arxiv_identifier_w_vn_nr %}">Send a first assignment request</a></li> + {% endfor %} + </ul> + <li><a href="{% url 'submissions:assign_submission' submission.arxiv_identifier_w_vn_nr %}">Send a new assignment request</a></li> + <li><a href="{% url 'submissions:assignment_failed' submission.arxiv_identifier_w_vn_nr %}">Close pre-screening: failure to find EIC</a></li> + {% endif %} + {% endif %} + + {# Plagiarism #} + <li><a href="{% url 'submissions:plagiarism' submission.arxiv_identifier_w_vn_nr %}">Manage plagiarism report</a></li> + + {# Compile pdfs #} + {% if submission.reports.accepted.exists %} + <li><a href="{% url 'submissions:reports_accepted_list' %}?submission={{submission.arxiv_identifier_w_vn_nr}}">Compile accepted reports</a></li> + {% endif %} + + {# Communication #} + {% if submission.editor_in_charge %} + <li><a href="{% url 'submissions:communication' arxiv_identifier_w_vn_nr=submission.arxiv_identifier_w_vn_nr comtype='StoE' %}">Send a communication to the Editor-in-charge</a></li> + {% endif %} + + {# EIC Recommendations #} + {% if submission.eicrecommendations.exists %} + <li>See Editorial Recommendations:</li> + <ul> + {% for rec in submission.eicrecommendations.all %} + <li><a href="{% url 'submissions:eic_recommendation_detail' arxiv_identifier_w_vn_nr=submission.arxiv_identifier_w_vn_nr rec_id=rec.id %}">{{rec.get_recommendation_display}}</a></li> + {% endfor %} + </ul> + {% endif %} + + {# Accepted submission actions #} + {% if submission.status == 'accepted' %} + <li><a href="{% url 'submissions:treated_submission_pdf_compile' submission.arxiv_identifier_w_vn_nr %}">Update the Refereeing Package pdf</a></li> + <li>After proofs have been accepted, you can <a href="{% url 'journals:initiate_publication' %}">initiate the publication process</a> (leads to the validation page)</li> + {% endif %} + </ul> + + + <h3>Events</h3> + <div id="eventslist"> + {% include 'submissions/submission_event_list.html' with events=submission.events.for_eic %} + </div> + </div> +</div> diff --git a/submissions/templates/partials/submissions/admin/submission_li.html b/submissions/templates/partials/submissions/admin/submission_li.html new file mode 100644 index 000000000..0581df05c --- /dev/null +++ b/submissions/templates/partials/submissions/admin/submission_li.html @@ -0,0 +1,24 @@ +<div class="row pool-item mb-0"> + <div class="icons{% if is_current %} text-info{% endif %}"> + {% include 'partials/submissions/admin/submission_tooltip.html' with submission=submission %} + + {% if submission.status == 'unassigned' %} + <i class="fa fa-exclamation mt-1 px-1 text-danger" data-toggle="tooltip" data-html="true" title="This Submission does not have a Editor-in-charge"></i> + {% endif %} + </div> + <div class="item col-auto"> + <p class="mb-1"> + <a href="{% url 'submissions:admin' submission.arxiv_identifier_w_vn_nr %}">{{ submission.title }}</a><br> + <em>by {{ submission.author_list }}</em> + </p> + + <p class="card-text mb-2"> + <a href="{% url 'submissions:admin' submission.arxiv_identifier_w_vn_nr %}" data-toggle="dynamic" data-target="#details" data-toggle="dynamic" data-target="">See details</a> + {% if submission.editor_in_charge == request.user.contributor %} + · <a href="{% url 'submissions:editorial_page' submission.arxiv_identifier_w_vn_nr %}">Go directly to editorial page</a> + {% endif %} + </p> + + <p class="label label-{% if submission.status == 'unassigned' %}outline-danger{% else %}secondary{% endif %} label-sm">{{ submission.get_status_display }}</p> + </div> +</div> diff --git a/submissions/templates/submissions/admin/editorial_admin.html b/submissions/templates/submissions/admin/editorial_admin.html index b1145975f..c91c421f9 100644 --- a/submissions/templates/submissions/admin/editorial_admin.html +++ b/submissions/templates/submissions/admin/editorial_admin.html @@ -9,6 +9,7 @@ <span class="breadcrumb-item">Editorial Administration</span> {% endblock %} +{% block body_class %}{{ block.super }} editorial-admin{% endblock %} {% block content %} <div class="row"> @@ -50,25 +51,10 @@ {% endif %} <h3>Submissions currently in pre-screening</h3> - <ul class="list-unstyled"> + <ul class="list-unstyled" data-target="active-list"> {% for sub in submission_list.prescreening %} - <li> - {% include 'partials/submissions/admin/submission_tooltip.html' with submission=sub %} - {% if sub == submission %} - <strong> - <a href="?submission={{sub.arxiv_identifier_w_vn_nr}}">{{sub.title}}</a> - <div class="pl-md-4"> - <em>by {{sub.author_list}}</em><br> - latest activity: {{sub.latest_activity|timesince}} ago - </div> - </strong> - {% else %} - <a href="?submission={{sub.arxiv_identifier_w_vn_nr}}">{{sub.title}}</a> - <div class="pl-md-4"> - <em>by {{sub.author_list}}</em><br> - latest activity: {{sub.latest_activity|timesince}} ago - </div> - {% endif %} + <li class="p-2{% if sub == submission %} active{% endif %}"> + {% include 'partials/submissions/admin/submission_li.html' with submission=sub %} </li> {% empty %} <li>No Submissions are currently in pre-screening</li> @@ -76,25 +62,10 @@ </ul> <h3>Submissions currently in refereeing round</h3> - <ul class="list-unstyled"> + <ul class="list-unstyled" data-target="active-list"> {% for sub in submission_list.actively_refereeing %} - <li> - {% include 'partials/submissions/admin/submission_tooltip.html' with submission=sub %} - {% if sub == submission %} - <strong> - <a href="?submission={{sub.arxiv_identifier_w_vn_nr}}">{{sub.title}}</a> - <div class="pl-md-4"> - <em>by {{sub.author_list}}</em><br> - latest activity: {{sub.latest_activity|timesince}} ago - </div> - </strong> - {% else %} - <a href="?submission={{sub.arxiv_identifier_w_vn_nr}}">{{sub.title}}</a> - <div class="pl-md-4"> - <em>by {{sub.author_list}}</em><br> - latest activity: {{sub.latest_activity|timesince}} ago - </div> - {% endif %} + <li class="p-2{% if sub == submission %} active{% endif %}"> + {% include 'partials/submissions/admin/submission_li.html' with submission=sub %} </li> {% empty %} <li>No Submissions are currently in refereeing round</li> @@ -102,25 +73,10 @@ </ul> <h3>Submissions accepted</h3> - <ul class="list-unstyled"> + <ul class="list-unstyled" data-target="active-list"> {% for sub in submission_list.accepted %} - <li> - {% include 'partials/submissions/admin/submission_tooltip.html' with submission=sub %} - {% if sub == submission %} - <strong> - <a href="?submission={{sub.arxiv_identifier_w_vn_nr}}">{{sub.title}}</a> - <div class="pl-md-4"> - <em>by {{sub.author_list}}</em><br> - latest activity: {{sub.latest_activity|timesince}} ago - </div> - </strong> - {% else %} - <a href="?submission={{sub.arxiv_identifier_w_vn_nr}}">{{sub.title}}</a> - <div class="pl-md-4"> - <em>by {{sub.author_list}}</em><br> - latest activity: {{sub.latest_activity|timesince}} ago - </div> - {% endif %} + <li class="p-2{% if sub == submission %} active{% endif %}"> + {% include 'partials/submissions/admin/submission_li.html' with submission=sub %} </li> {% empty %} <li>All accepted Submissions are published</li> @@ -128,13 +84,9 @@ </ul> </div> - <div class="col-md-5"> + <div class="col-md-5" id="details"> {% if submission %} - <div class="card border-secondary mt-2"> - <div class="card-body"> - {% include 'partials/submissions/admin/editorial_admin_summary.html' with submission=submission %} - </div> - </div> + {% include 'partials/submissions/admin/submission_details.html' with submission=submission %} {% else %} <h3><em>Click on a submission to see its summary and actions</em></h3> <h2>All events in the last 24 hours</h2> diff --git a/submissions/urls.py b/submissions/urls.py index de96d327d..6cd83e4ec 100644 --- a/submissions/urls.py +++ b/submissions/urls.py @@ -26,6 +26,8 @@ urlpatterns = [ # Editorial Administration url(r'^admin$', views.EditorialSummaryView.as_view(), name='admin'), + url(r'^admin/{regex}$'.format(regex=SUBMISSIONS_COMPLETE_REGEX), + views.EditorialSummaryView.as_view(), name='admin'), url(r'^admin/treated$', views.treated_submissions_list, name='treated_submissions_list'), url(r'^admin/{regex}/reports/compile$'.format(regex=SUBMISSIONS_COMPLETE_REGEX), views.treated_submission_pdf_compile, name='treated_submission_pdf_compile'), diff --git a/submissions/views.py b/submissions/views.py index 5cf5ae5c0..2224d60f4 100644 --- a/submissions/views.py +++ b/submissions/views.py @@ -1537,7 +1537,7 @@ class EditorialSummaryView(SubmissionAdminViewMixin, ListView): # Pick submission from `submission_list` to include proper filters such as author filters. try: - arxiv_id = self.request.GET.get('submission') + arxiv_id = self.kwargs.get('arxiv_identifier_w_vn_nr') assert arxiv_id context['submission'] = (context['submission_list'] .get(arxiv_identifier_w_vn_nr=arxiv_id)) @@ -1553,6 +1553,12 @@ class EditorialSummaryView(SubmissionAdminViewMixin, ListView): .filter(submission__status='voting_in_preparation')) return context + def get_template_names(self): + if self.request.GET.get('json'): + return ['partials/submissions/admin/submission_details.html'] + else: + return ['submissions/admin/editorial_admin.html'] + class PlagiarismView(SubmissionAdminViewMixin, UpdateView): permission_required = 'scipost.can_do_plagiarism_checks' -- GitLab