Skip to content

Commit ed96cee

Browse files
committed
Add listing of recently approved drafts to approval page by request
from Barry Leiba. - Legacy-Id: 4420
1 parent 3a7a45f commit ed96cee

4 files changed

Lines changed: 42 additions & 5 deletions

File tree

ietf/submit/tests.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,10 +373,12 @@ def test_approvals(self):
373373

374374
IdSubmissionDetail.objects.create(filename="draft-ietf-mars-foo",
375375
group_acronym_id=Group.objects.get(acronym="mars").pk,
376+
submission_date=datetime.date.today(),
376377
revision="00",
377378
status_id=POSTED)
378379
IdSubmissionDetail.objects.create(filename="draft-ietf-mars-bar",
379380
group_acronym_id=Group.objects.get(acronym="mars").pk,
381+
submission_date=datetime.date.today(),
380382
revision="00",
381383
status_id=INITIAL_VERSION_APPROVAL_REQUESTED)
382384

@@ -389,6 +391,7 @@ def test_approvals(self):
389391
self.assertEquals(len(q('.approvals a:contains("draft-ietf-mars-bar")')), 1)
390392
self.assertEquals(len(q('.preapprovals td:contains("draft-ietf-mars-foo")')), 0)
391393
self.assertEquals(len(q('.preapprovals td:contains("draft-ietf-mars-baz")')), 1)
394+
self.assertEquals(len(q('.recently-approved a:contains("draft-ietf-mars-foo")')), 1)
392395

393396
def test_add_preapproval(self):
394397
make_test_data()

ietf/submit/utils.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -466,7 +466,7 @@ def get_approvable_submissions(user):
466466
if has_role(user, "Secretariat"):
467467
return res
468468

469-
# those we can reach as chairs
469+
# those we can reach as chair
470470
return res.filter(group_acronym__role__name="chair", group_acronym__role__person__user=user)
471471

472472
def get_preapprovals(user):
@@ -484,7 +484,16 @@ def get_preapprovals(user):
484484

485485
return res
486486

487+
def get_recently_approved(user, since):
488+
if not user.is_authenticated():
489+
return []
490+
491+
res = IdSubmissionDetail.objects.distinct().filter(status__in=[POSTED, POSTED_BY_SECRETARIAT], submission_date__gte=since, revision="00").order_by('-submission_date')
492+
if has_role(user, "Secretariat"):
493+
return res
487494

495+
# those we can reach as chair
496+
return res.filter(group_acronym__role__name="chair", group_acronym__role__person__user=user)
488497

489498
class DraftValidation(object):
490499

ietf/submit/views.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,10 +261,15 @@ def approvals(request):
261261
approvals = get_approvable_submissions(request.user)
262262
preapprovals = get_preapprovals(request.user)
263263

264+
days = 30
265+
recently_approved = get_recently_approved(request.user, datetime.date.today() - datetime.timedelta(days=days))
266+
264267
return render_to_response('submit/approvals.html',
265268
{'selected': 'approvals',
266269
'approvals': approvals,
267-
'preapprovals': preapprovals },
270+
'preapprovals': preapprovals,
271+
'recently_approved': recently_approved,
272+
'days': days },
268273
context_instance=RequestContext(request))
269274

270275

ietf/templates/submit/approvals.html

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
{% block morecss %}
55
{{ block.super }}
6-
table.approvals td, table.preapprovals td,
7-
table.approvals th, table.preapprovals th { text-align: left; padding-right: 8px; padding-bottom: 4px; }
6+
table.approvals td, table.preapprovals td, table.recently-approved td,
7+
table.approvals th, table.preapprovals th, table.recently-approved th { text-align: left; padding-right: 8px; padding-bottom: 4px; }
88

99
table.preapprovals tr td a.cancel { visibility: hidden; }
1010
table.preapprovals tr:hover { background-color: #eee; }
@@ -34,7 +34,7 @@ <h2 id="approvals">Submissions you can approve</h2>
3434
</table>
3535
{% endif %}
3636

37-
<h2 id="preapprovals">Pre-approved submissions not yet used</h2>
37+
<h2 id="preapprovals">Pre-approved drafts not yet submitted</h2>
3838

3939
{% if user|has_role:"Secretariat,WG Chair" %}
4040
<p>You can <a href="{% url submit_add_preapproval %}">add a pre-approval</a>.</p>
@@ -61,4 +61,24 @@ <h2 id="preapprovals">Pre-approved submissions not yet used</h2>
6161
</table>
6262
{% endif %}
6363

64+
<h2 id="recently-approved">Approved drafts within the past {{ days }} days</h2>
65+
66+
{% if not recently_approved %}
67+
<p>No drafts approved.</p>
68+
{% else %}
69+
70+
<table cellspacing="0" class="recently-approved">
71+
<tr>
72+
<th>Draft</th>
73+
<th>Submitted</th>
74+
</tr>
75+
{% for d in recently_approved %}
76+
<tr>
77+
<td><a href="{% url doc_view d.filename %}">{{ d.filename }}</a></td>
78+
<td>{{ d.submission_date }}</td>
79+
</tr>
80+
{% endfor %}
81+
</table>
82+
{% endif %}
83+
6484
{% endblock %}

0 commit comments

Comments
 (0)