4848from ietf .doc .utils import ( add_links_in_new_revision_events , augment_events_with_revision ,
4949 can_adopt_draft , get_chartering_type , get_document_content , get_tags_for_stream_id ,
5050 needed_ballot_positions , nice_consensus , prettify_std_name , update_telechat , has_same_ballot ,
51- get_initial_notify , make_notify_changed_event , crawl_history , default_consensus )
51+ get_initial_notify , make_notify_changed_event , crawl_history , default_consensus )
5252from ietf .community .utils import augment_docs_with_tracking_info
5353from ietf .group .models import Role
5454from ietf .group .utils import can_manage_group , can_manage_materials
5757from ietf .person .models import Email
5858from ietf .utils .history import find_history_active_at
5959from ietf .doc .forms import TelechatForm , NotifyForm
60- from ietf .doc .mails import email_comment
60+ from ietf .doc .mails import email_comment
6161from ietf .mailtrigger .utils import gather_relevant_expansions
6262from ietf .meeting .models import Session
6363from ietf .meeting .utils import group_sessions , get_upcoming_manageable_sessions , sort_sessions
64+ from ietf .review .models import ReviewRequest
65+ from ietf .review .utils import can_request_review_of_doc
6466
6567def render_document_top (request , doc , tab , name ):
6668 tabs = []
@@ -279,8 +281,8 @@ def document_main(request, name, rev=None):
279281 can_edit_stream_info = is_authorized_in_doc_stream (request .user , doc )
280282 can_edit_shepherd_writeup = can_edit_stream_info or user_is_person (request .user , doc .shepherd and doc .shepherd .person ) or has_role (request .user , ["Area Director" ])
281283 can_edit_notify = can_edit_shepherd_writeup
282- can_edit_consensus = False
283284
285+ can_edit_consensus = False
284286 consensus = nice_consensus (default_consensus (doc ))
285287 if doc .stream_id == "ietf" and iesg_state :
286288 show_in_states = set (IESG_BALLOT_ACTIVE_STATES )
@@ -294,6 +296,8 @@ def document_main(request, name, rev=None):
294296 e = doc .latest_event (ConsensusDocEvent , type = "changed_consensus" )
295297 consensus = nice_consensus (e and e .consensus )
296298
299+ can_request_review = can_request_review_of_doc (request .user , doc )
300+
297301 # mailing list search archive
298302 search_archive = "www.ietf.org/mail-archive/web/"
299303 if doc .stream_id == "ietf" and group .type_id == "wg" and group .list_archive :
@@ -353,6 +357,8 @@ def document_main(request, name, rev=None):
353357 published = doc .latest_event (type = "published_rfc" )
354358 started_iesg_process = doc .latest_event (type = "started_iesg_process" )
355359
360+ review_requests = ReviewRequest .objects .filter (doc = doc ).exclude (state__in = ["withdrawn" , "rejected" ])
361+
356362 return render_to_response ("doc/document_draft.html" ,
357363 dict (doc = doc ,
358364 group = group ,
@@ -374,6 +380,7 @@ def document_main(request, name, rev=None):
374380 can_edit_consensus = can_edit_consensus ,
375381 can_edit_replaces = can_edit_replaces ,
376382 can_view_possibly_replaces = can_view_possibly_replaces ,
383+ can_request_review = can_request_review ,
377384
378385 rfc_number = rfc_number ,
379386 draft_name = draft_name ,
@@ -412,6 +419,7 @@ def document_main(request, name, rev=None):
412419 search_archive = search_archive ,
413420 actions = actions ,
414421 presentations = presentations ,
422+ review_requests = review_requests ,
415423 ),
416424 context_instance = RequestContext (request ))
417425
@@ -563,6 +571,24 @@ def document_main(request, name, rev=None):
563571 ),
564572 context_instance = RequestContext (request ))
565573
574+
575+ if doc .type_id == "review" :
576+ basename = "{}-{}.txt" .format (doc .name , doc .rev )
577+ pathname = os .path .join (doc .get_file_path (), basename )
578+ content = get_document_content (basename , pathname , split = False )
579+
580+ review_req = ReviewRequest .objects .filter (review = doc .name ).first ()
581+
582+ return render (request , "doc/document_review.html" ,
583+ dict (doc = doc ,
584+ top = top ,
585+ content = content ,
586+ revisions = revisions ,
587+ latest_rev = latest_rev ,
588+ snapshot = snapshot ,
589+ review_req = review_req ,
590+ ))
591+
566592 raise Http404
567593
568594
0 commit comments