465 lines
16 KiB
HTML
465 lines
16 KiB
HTML
{% extends "base.html" %}
|
|
{# Copyright The IETF Trust 2015, All Rights Reserved #}
|
|
{% load origin %}
|
|
|
|
{% load ietf_filters %}
|
|
|
|
{% block pagehead %}
|
|
<link rel="alternate" type="application/atom+xml" title="Document changes" href="/feed/document-changes/{{ name }}/">
|
|
<meta name="description" content="{{ doc.title }} {% if doc.get_state_slug == "rfc" %}(RFC {{ rfc_number }}{% if published %}, {{ published.time|date:"F Y" }}{% endif %}{% if obsoleted_by %}; obsoleted by {{ obsoleted_by|join:", " }}{% endif %}){% else %}(Internet-Draft, {{ doc.time|date:"Y" }}){% endif %}">
|
|
{% endblock %}
|
|
|
|
{% block morecss %}
|
|
.inline { display: inline; }
|
|
{% endblock %}
|
|
|
|
{% block title %}
|
|
{% if doc.get_state_slug == "rfc" %}
|
|
RFC {{ rfc_number }}
|
|
{% else %}
|
|
{{ name }}-{{ doc.rev }}
|
|
{% endif %}
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
{% origin %}
|
|
{{ top|safe }}
|
|
|
|
{% include "doc/revisions_list.html" %}
|
|
|
|
<table class="table table-condensed">
|
|
<thead id="message-row">
|
|
<tr>
|
|
{% if doc.rev != latest_rev %}
|
|
<th colspan="4" class="alert-warning"> The information below is for an old version of the document</th>
|
|
{% else %}
|
|
<th colspan="4"> </th>
|
|
{% endif %}
|
|
</tr>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<tr>
|
|
<th>Document</th>
|
|
<th class="text-right">Type</th>
|
|
<td class="edit"></td>
|
|
<td>
|
|
{% if doc.get_state_slug == "rfc" %}
|
|
RFC - {{ doc.std_level }}
|
|
({% if published %}{{ published.time|date:"F Y" }}{% else %}publication date unknown{% endif %}{% if has_errata %}; <a href="https://www.rfc-editor.org/errata_search.php?rfc={{ rfc_number }}" rel="nofollow">Errata</a>{% else %}; No errata{% endif %})
|
|
|
|
{% if obsoleted_by %}<div>Obsoleted by {{ obsoleted_by|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
|
{% if updated_by %}<div>Updated by {{ updated_by|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
|
{% if obsoletes %}<div>Obsoletes {{ obsoletes|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
|
{% if updates %}<div>Updates {{ updates|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
|
{% if status_changes %}<div>Status changed by {{ status_changes|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
|
{% if proposed_status_changes %}<div>Proposed status changed by {{ proposed_status_changes|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
|
{% if rfc_aliases %}<div>Also known as {{ rfc_aliases|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
|
{% if draft_name %}<div>Was <a href="/doc/{{ draft_name}}/">{{ draft_name }}</a> {% if submission %}({{ submission|safe }}){% endif %}</div>{% endif %}
|
|
{% else %}
|
|
{{ doc.get_state }} Internet-Draft {% if submission %}({{ submission|safe }}){% endif %}
|
|
{% if resurrected_by %}- resurrect requested by {{ resurrected_by }}{% endif %}
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Last updated</th>
|
|
<td class="edit"></td>
|
|
<td>
|
|
{{ doc.time|date:"Y-m-d" }}
|
|
{% if latest_revision and latest_revision.time.date != doc.time.date %}
|
|
(latest revision {{ latest_revision.time|date:"Y-m-d" }})
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
|
|
{% if replaces or can_edit_stream_info %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Replaces</th>
|
|
<td class="edit">
|
|
{% if can_edit_stream_info %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_replaces" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ replaces|join:", "|urlize_ietf_docs|default:"(None)" }}
|
|
</td>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
{% if replaced_by %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Replaced by</th>
|
|
<td class="edit"></td>
|
|
<td>
|
|
{{ replaced_by|join:", "|urlize_ietf_docs }}
|
|
</td>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Stream</th>
|
|
<td class="edit">
|
|
{% if can_change_stream %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_stream" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ doc.stream|default:"(None)" }}
|
|
</td>
|
|
</tr>
|
|
|
|
{% if doc.get_state_slug != "rfc" %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Intended RFC status</th>
|
|
<td class="edit">
|
|
{% if can_edit or can_edit_stream_info %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_intended_status" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ doc.intended_std_level|default:"(None)" }}
|
|
</td>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Formats</th>
|
|
<td class="edit"></td>
|
|
<td>
|
|
{% if doc.get_state_slug != "active" and doc.get_state_slug != "rfc" %}<div class="pull-right label label-warning">Expired & archived</div>{% endif %}
|
|
{% if file_urls %}
|
|
{% for label, url in file_urls %}
|
|
<a class="btn btn-default btn-xs" href="{{ url }}">
|
|
<span class="fa fa-file-{% if label == "pdf" %}pdf-{% elif label == "xml" or label == "html" %}code-{% elif label == "plain text" %}text-{% endif %}o"></span>
|
|
{{ label }}</a>
|
|
{% endfor %}
|
|
{% else %}
|
|
(not online)
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
|
|
{% if conflict_reviews %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>IETF conflict review</th>
|
|
<td class="edit"></td>
|
|
<td>{{ conflict_reviews|join:", "|urlize_ietf_docs }}</td>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
</tbody>
|
|
<tbody>
|
|
<tr>
|
|
<th>Stream</th>
|
|
{% if doc.stream %}
|
|
<th class="text-right">
|
|
{% if doc.stream.slug != "legacy" %}
|
|
<a href="{% url "ietf.help.views.state" doc=doc.type.slug type=doc.stream.slug %}">
|
|
{% if doc.stream.slug == "ietf" %} WG {% else %} {{ doc.stream }} {% endif %} state
|
|
</a>
|
|
{% else %}
|
|
Legacy state
|
|
{% endif %}
|
|
</th>
|
|
<td class="edit">
|
|
{% if doc.stream and can_edit_stream_info %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_stream_state" name=doc.name state_type=stream_state_type_slug %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ stream_state|default:"(None)" }}
|
|
|
|
{% for m in milestones %}
|
|
<span title="{{ m.desc }} ({{ m.group.acronym }} milestone)" class="milestone">{{ m.due|date:"M Y" }}</span>
|
|
{% endfor %}
|
|
|
|
{% if stream_tags %}
|
|
<div class="stream-tags">{% for tag in stream_tags %}{{ tag.name }}{% if not forloop.last %}, {% endif %}{% endfor %}</div>
|
|
{% endif %}
|
|
</td>
|
|
{% else %}
|
|
<th class="text-right">Stream state</th>
|
|
<td class="edit"></td>
|
|
<td>(No stream defined)</td>
|
|
{% endif %}
|
|
</tr>
|
|
|
|
{% if consensus %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Consensus</th>
|
|
<td class="edit">
|
|
{% if can_edit or can_edit_stream_info %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_edit_consensus" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
<span title="Whether the document is the result of a community consensus process as defined in RFC 5741">{{ consensus }}</span>
|
|
</td>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Document shepherd</th>
|
|
<td class="edit">
|
|
{% if can_edit_stream_info %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_edit_shepherd" name=doc.name %}">Edit</a>
|
|
{% elif is_shepherd %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_shepherd_email" name=doc.name %}">Change Email</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if doc.shepherd %}{{ doc.shepherd.person }}{% else %}No shepherd assigned{% endif %}
|
|
</td>
|
|
</tr>
|
|
|
|
{% if shepherd_writeup or can_edit_shepherd_writeup %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Shepherd write-up</th>
|
|
<td class="edit">
|
|
{% if can_edit_shepherd_writeup %}
|
|
{% url "doc_edit_shepherd_writeup" name=doc.name as doc_edit_url %}
|
|
{% if doc_edit_url %}
|
|
<a class="btn btn-default btn-xs" href="{{doc_edit_url}}">Edit</a>
|
|
{% endif %}
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if shepherd_writeup %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_shepherd_writeup" name=doc.name %}">Show</a>
|
|
(last changed {{ shepherd_writeup.time|date:"Y-m-d"}})
|
|
{% else %}
|
|
(None)
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
{% if published and started_iesg_process and published.time < started_iesg_process.time %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th colspan="3" class="warning">This information refers to IESG processing after the RFC was initially published:</th>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
</tbody>
|
|
<tbody>
|
|
<tr>
|
|
<th>IESG</th>
|
|
<th class="text-right"><a href="{% url "ietf.help.views.state" doc=doc.type.slug type="iesg" %}">IESG state</a></th>
|
|
<td class="edit">
|
|
{% if iesg_state and can_edit %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_state" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ iesg_state_summary|default:"I-D Exists" }}
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Telechat date</th>
|
|
<td class="edit">
|
|
{% if can_edit %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_telechat_date" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if telechat %}
|
|
On agenda of {{ telechat.telechat_date }} IESG telechat
|
|
{% if telechat.returning_item %}
|
|
(returning item)
|
|
{% endif %}
|
|
{% else %}
|
|
{% if can_edit %}
|
|
(None)
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% if ballot_summary %}
|
|
<br><i>{{ ballot_summary }}</i>
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Responsible AD</th>
|
|
<td class="edit">
|
|
{% if can_edit %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_ad" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ doc.ad|default:"(None)" }}
|
|
</td>
|
|
</tr>
|
|
|
|
{% if iesg_state %}
|
|
{% if doc.note or can_edit %}
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>IESG note</th>
|
|
<td class="edit">
|
|
{% if can_edit %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_iesg_note" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ doc.note|default:"(None)"|linebreaksbr }}
|
|
</td>
|
|
</tr>
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>Send notices to</th>
|
|
<td class="edit">
|
|
{% if can_edit_notify %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_notify" name=doc.name %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ doc.notify|default:"(None)"}}
|
|
</td>
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
{% if iana_review_state %}
|
|
<tbody>
|
|
<tr>
|
|
<th>IANA</th>
|
|
<th class="text-right"><a href="{% url "ietf.help.views.state" doc=doc.type.slug type="iana-review" %}">IANA review state</a></th>
|
|
<td class="edit">
|
|
{% if can_edit_iana_state %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_iana_state" name=doc.name state_type="iana-review" %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ iana_review_state }}
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="plain">
|
|
<th></th>
|
|
<th>IANA action state</th>
|
|
<td class="edit">
|
|
{% if can_edit_iana_state %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_change_iana_state" name=doc.name state_type="iana-action" %}">Edit</a>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{{ iana_action_state }}
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
{% endif %}
|
|
|
|
<tbody>
|
|
{% if rfc_editor_state %}
|
|
<tr>
|
|
<th>RFC Editor</th>
|
|
<th class="text-right"><a href="{% url "ietf.help.views.state" doc=doc.type.slug type="rfceditor" %}">RFC Editor state</a></th>
|
|
<td class="edit"></td>
|
|
<td><a href="https://www.rfc-editor.org/queue2.html#{{ doc.name }}">{{ rfc_editor_state }}</a></td>
|
|
</tr>
|
|
{% endif %}
|
|
|
|
</tbody>
|
|
</table>
|
|
|
|
<div class="buttonlist">
|
|
<a class="btn btn-default btn-xs" href="mailto:{{ doc.name }}@tools.ietf.org?subject=Mail%20regarding%20{{ doc.name }}"><span class="fa fa-envelope-o"></span> Email authors</a>
|
|
<a class="btn btn-default btn-xs" href="{% url "ipr_search" %}?submit=draft&id={{ doc.name }}" rel="nofollow"><span class="fa fa-bolt"></span> IPR {% if doc.related_ipr %} <span class="badge">{{doc.related_ipr|length}}</span>{% endif %}</a>
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_references" doc.canonical_name %}" rel="nofollow"><span class="fa fa-long-arrow-left"></span> References</a>
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_referenced_by" doc.canonical_name %}" rel="nofollow"><span class="fa fa-long-arrow-right"></span> Referenced by</a>
|
|
<a class="btn btn-default btn-xs" href="https://www.ietf.org/tools/idnits?url=https://www.ietf.org/archive/id/{{ doc.filename_with_rev }}" rel="nofollow" target="_blank"><span class="fa fa-exclamation"></span> Nits</a>
|
|
<div class="dropdown inline">
|
|
<button class="btn btn-default btn-xs dropdown-toggle" type="button" id="ddSearchMenu" data-toggle="dropdown" aria-expanded="true">
|
|
<span class="fa fa-search"></span> Search lists <span class="caret"></span>
|
|
</button>
|
|
<ul class="dropdown-menu" role="menu">
|
|
<li role="presentation"><a role="menuitem" href="https://mailarchive.ietf.org/arch/search?q={{ doc.name }}" rel="nofollow" target="_blank">IETF Mail Archive</a></li>
|
|
<li role="presentation"><a role="menuitem" href="https://www.google.com/search?as_q={{ doc.name }}&as_sitesearch={{ search_archive }}" rel="nofollow" target="_blank">Google</a></li>
|
|
{% if user|has_role:"Area Director" %}
|
|
<li role="presentation"><a role="menuitem" href="https://www.iesg.org/bin/c5i?mid=6&rid=77&target={{ doc.name }}" rel="nofollow" target="_blank">ARO</a> </li>
|
|
{% endif %}
|
|
</ul>
|
|
</div>
|
|
{% if user.is_authenticated %}
|
|
{% if tracking_document %}
|
|
<a class="btn btn-default btn-xs community-list-add-remove-doc" href="{% url "community_remove_track_document" doc.name %}" title="Remove from your personal ID list"><span class="fa fa-bookmark-o"></span> Untrack</a>
|
|
{% else %}
|
|
<a class="btn btn-default btn-xs community-list-add-remove-doc" href="{% url "community_add_track_document" doc.name %}" title="Add to your personal ID list"><span class="fa fa-bookmark"></span> Track</a>
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% if can_edit and iesg_state %}
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_ballot_lastcall" name=doc.name %}">Last call text</a>
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_ballot_writeupnotes" name=doc.name %}">Ballot text</a>
|
|
<a class="btn btn-default btn-xs" href="{% url "doc_ballot_approvaltext" name=doc.name %}">Announcement text</a>
|
|
{% endif %}
|
|
|
|
{% if actions %}
|
|
{% for label, url in actions %}
|
|
<a class="btn btn-default btn-xs" href="{{ url }}">{{ label|capfirst_allcaps }}</a>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</div>
|
|
|
|
{% if doc.get_state_slug == "active" or doc.get_state_slug == "rfc" %}
|
|
{{ content|safe }}
|
|
|
|
{% if split_content %}
|
|
<a class="btn btn-default btn-block" href="?include_text=1"><span class="fa fa-caret-down"></span> Show full document text</a>
|
|
{% endif %}
|
|
|
|
{% else %}
|
|
<p></p>
|
|
<div class="panel panel-warning">
|
|
<div class="panel-heading">
|
|
This Internet-Draft is no longer active. A copy of
|
|
the expired Internet-Draft can be found at<br/>
|
|
<a href="{{doc.href}}">{{doc.href}}</a>
|
|
</div>
|
|
<div class="panel-body">
|
|
<p>
|
|
|
|
<h4>Abstract</h4>
|
|
<p>{{ doc.abstract }}</p>
|
|
|
|
<h4>Authors</h4>
|
|
<p>
|
|
{% for author in doc.documentauthor_set.all %}
|
|
{% if not author.author.invalid_address %}
|
|
<span class="fa fa-envelope-o"></span>
|
|
<a href="mailto:{{ author.author.address }}">
|
|
{% endif %}
|
|
{{ author.author.person }}
|
|
{% if not author.author.invalid_address %}
|
|
({{ author.author.address }})</a>
|
|
{% endif %}
|
|
{% if not forloop.last %}<br>{% endif %}
|
|
{% endfor %}
|
|
</p>
|
|
<p>(Note: The e-mail addresses provided for the authors of this Internet-Draft may no longer be valid.)</p>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% endblock %}
|