Skip to content

Commit dc3e8ee

Browse files
committed
Added default to review completion draft version number. If the reviewer
is filling in the review form himself the default will be the latest version of the draft. If it is someone else filling in the review then the version number is the latest version at the point when review was assigned (i.e., it assumes reviewer did review on version he was requested to and then document authors might have updated the document). Also mark the document versions that are earlier than the review request date with red background and those which are newer with green background. Fixes ietf-tools#2125. Commit ready for merge. - Legacy-Id: 15354
1 parent 0783890 commit dc3e8ee

2 files changed

Lines changed: 40 additions & 6 deletions

File tree

ietf/doc/views_review.py

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ class CompleteReviewForm(forms.Form):
373373
completion_time = forms.TimeField(widget=forms.HiddenInput, initial=datetime.time.min)
374374
cc = MultiEmailField(required=False, help_text="Email addresses to send to in addition to the review team list")
375375

376-
def __init__(self, review_req, *args, **kwargs):
376+
def __init__(self, review_req, is_reviewer, *args, **kwargs):
377377
self.review_req = review_req
378378

379379
super(CompleteReviewForm, self).__init__(*args, **kwargs)
@@ -390,9 +390,33 @@ def __init__(self, review_req, *args, **kwargs):
390390
for slug, label in self.fields["state"].choices
391391
]
392392

393-
self.fields["reviewed_rev"].help_text = mark_safe(
394-
" ".join("<a class=\"rev label label-default\" title=\"{1:%Y-%m-%d}\">{0}</a>".format(*r)
395-
for r in known_revisions))
393+
if 'initial' in kwargs:
394+
reviewed_rev_class = []
395+
for r in known_revisions:
396+
last_version = r[0]
397+
if r[1] < review_req.time:
398+
kwargs["initial"]["reviewed_rev"] = r[0]
399+
reviewed_rev_class.append('reviewer-doc-past')
400+
else:
401+
reviewed_rev_class.append('reviewer-doc-ok')
402+
403+
# After this the ones in future are marked with green, but we
404+
# want also to mark the oldest one before the review was assigned
405+
# so shift list one step.
406+
reviewed_rev_class.pop(0)
407+
reviewed_rev_class.append('reviewer-doc-ok')
408+
409+
# If it is users own review, then default to latest version
410+
if is_reviewer:
411+
kwargs["initial"]["reviewed_rev"] = last_version
412+
413+
self.fields["reviewed_rev"].help_text = mark_safe(
414+
" ".join("<a class=\"rev label label-default {0}\" title=\"{2:%Y-%m-%d}\">{1}</a>".format(reviewed_rev_class[i], *r)
415+
for i, r in enumerate(known_revisions)))
416+
else:
417+
self.fields["reviewed_rev"].help_text = mark_safe(
418+
" ".join("<a class=\"rev label label-default {0}\" title=\"{2:%Y-%m-%d}\">{1}</a>".format('', *r)
419+
for i, r in enumerate(known_revisions)))
396420

397421
self.fields["result"].queryset = self.fields["result"].queryset.filter(reviewteamsettings__group=review_req.team)
398422

@@ -463,7 +487,8 @@ def complete_review(request, name, request_id):
463487
(to, cc) = gather_address_lists('review_completed',review_req = review_req)
464488

465489
if request.method == "POST":
466-
form = CompleteReviewForm(review_req, request.POST, request.FILES)
490+
form = CompleteReviewForm(review_req, is_reviewer,
491+
request.POST, request.FILES)
467492
if form.is_valid():
468493
review_submission = form.cleaned_data['review_submission']
469494

@@ -626,7 +651,7 @@ def complete_review(request, name, request_id):
626651
except TemplateDoesNotExist:
627652
pass
628653

629-
form = CompleteReviewForm(review_req, initial=initial)
654+
form = CompleteReviewForm(review_req, is_reviewer, initial=initial)
630655

631656
mail_archive_query_urls = mailarch.construct_query_urls(review_req)
632657

ietf/static/ietf/css/ietf.css

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -590,6 +590,15 @@ table.simple-table td:last-child {
590590
background-color: #F0F0F0;
591591
}
592592

593+
594+
.reviewer-doc-past {
595+
background-color: #800000;
596+
}
597+
598+
.reviewer-doc-ok {
599+
background-color: #008000;
600+
}
601+
593602
/* === Statistics =========================================================== */
594603

595604
.stats-options > * {

0 commit comments

Comments
 (0)