Skip to content

Commit 884291f

Browse files
committed
Better handling of consensus for BCPs and standards track documents. Partial fix for ticket 1560.
- Legacy-Id: 10630
1 parent 4a2868c commit 884291f

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

ietf/doc/views_draft.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -449,6 +449,18 @@ def change_intention(request, name):
449449
c.save()
450450
email_desc += "\n"+c.desc
451451

452+
de = doc.latest_event(ConsensusDocEvent, type="changed_consensus")
453+
prev_consensus = de and de.consensus
454+
print prev_consensus
455+
print doc.intended_std_level_id
456+
if not prev_consensus and doc.intended_std_level_id in ("std", "ds", "ps", "bcp"):
457+
ce = ConsensusDocEvent(doc=doc, by=login, type="changed_consensus")
458+
ce.consensus = True
459+
ce.desc = "Changed consensus to <b>%s</b> from %s" % (nice_consensus(True),
460+
nice_consensus(prev_consensus))
461+
ce.save()
462+
email_desc += "\n"+ce.desc
463+
452464
doc.time = e.time
453465
doc.save()
454466

@@ -1101,6 +1113,8 @@ def edit_consensus(request, name):
11011113
if form.cleaned_data["consensus"] != prev_consensus:
11021114
e = ConsensusDocEvent(doc=doc, type="changed_consensus", by=request.user.person)
11031115
e.consensus = {"Unknown":None,"Yes":True,"No":False}[form.cleaned_data["consensus"]]
1116+
if not e.consensus and doc.intended_std_level_id in ("std", "ds", "ps", "bcp"):
1117+
return HttpResponseForbidden("BCPs and Standards Track documents must have consensus")
11041118

11051119
e.desc = "Changed consensus to <b>%s</b> from %s" % (nice_consensus(e.consensus),
11061120
nice_consensus(prev_consensus))

0 commit comments

Comments
 (0)