From 3bfb9303bca2cc4cb2e0a570f65204ac01087829 Mon Sep 17 00:00:00 2001
From: Robert Sparks <rjsparks@nostrum.com>
Date: Fri, 15 Mar 2024 23:16:09 -0500
Subject: [PATCH] fix: appropriate metadata for editorial stream docs (#7195)

---
 ietf/doc/tests_draft.py                |  12 +-
 ietf/templates/doc/document_draft.html | 238 +++++++++++++------------
 2 files changed, 131 insertions(+), 119 deletions(-)

diff --git a/ietf/doc/tests_draft.py b/ietf/doc/tests_draft.py
index 045fdc7f4..cc22e2213 100644
--- a/ietf/doc/tests_draft.py
+++ b/ietf/doc/tests_draft.py
@@ -20,7 +20,7 @@ from django.utils.html import escape
 import debug                            # pyflakes:ignore
 
 from ietf.doc.expire import get_expired_drafts, send_expire_notice_for_draft, expire_draft
-from ietf.doc.factories import IndividualDraftFactory, WgDraftFactory, RgDraftFactory, DocEventFactory
+from ietf.doc.factories import EditorialDraftFactory, IndividualDraftFactory, WgDraftFactory, RgDraftFactory, DocEventFactory
 from ietf.doc.models import ( Document, DocReminder, DocEvent,
     ConsensusDocEvent, LastCallDocEvent, RelatedDocument, State, TelechatDocEvent, 
     WriteupDocEvent, DocRelationshipName, IanaExpertDocEvent )
@@ -2161,3 +2161,13 @@ class ShepherdWriteupTests(TestCase):
         self.assertContains(r, "for Group Documents", status_code=200)
         r = self.client.post(url,dict(reset_text=''))
         self.assertContains(r, "for Group Documents", status_code=200)
+
+class EditorialDraftMetadataTests(TestCase):
+    def test_editorial_metadata(self):
+        draft = EditorialDraftFactory()
+        url = urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name))
+        r = self.client.get(url)
+        q = PyQuery(r.content)
+        top_level_metadata_headings = q("tbody>tr>th:first-child").text()
+        self.assertNotIn("IESG", top_level_metadata_headings)
+        self.assertNotIn("IANA", top_level_metadata_headings)
diff --git a/ietf/templates/doc/document_draft.html b/ietf/templates/doc/document_draft.html
index 3831d1016..0dc64e9f3 100644
--- a/ietf/templates/doc/document_draft.html
+++ b/ietf/templates/doc/document_draft.html
@@ -267,7 +267,7 @@
                 </tr>
             {% endif %}
         </tbody>
-        {% if not doc.stream_id == 'iab' %}
+        {% if doc.stream_id != 'iab' and doc.stream_id != 'editorial' %}
             <tbody class="meta border-top">
                 <tr>
                     <th scope="row">
@@ -447,125 +447,127 @@
                     </tr>
                 </tbody>
             {% endif %}
-            {% if can_edit_iana_state or iana_review_state or iana_experts_state or iana_experts_comment %}
-                <tbody class="meta border-top">
-                    {% if iana_review_state or can_edit_iana_state %}
-                        <tr>
-                            <th scope="row">
-                                IANA
-                            </th>
-                            <th scope="row">
-                                <a href="{% url "ietf.doc.views_help.state_help" type="draft-iana-review" %}">
-                                    IANA review state
-                                </a>
-                            </th>
-                            <td class="edit">
-                                {% if can_edit_iana_state and not snapshot %}
-                                    <a class="btn btn-primary btn-sm"
-                                       href="{% url 'ietf.doc.views_draft.change_iana_state' name=doc.name state_type="iana-review" %}">
-                                        Edit
-                                    </a>
-                                {% endif %}
-                            </td>
-                            <td class="{% if iana_review_state|slugify|slice:7 != "iana-ok" %}text-danger{% else %}text-success{% endif %}">
-                                {% if not iana_review_state %}
-                                    <span class="text-body-secondary">
-                                        (None)
-                                    </span>
-                                {% else %}
-                                    {{ iana_review_state }}
-                                {% endif %}
-                            </td>
-                        </tr>
-                    {% endif %}
-                    {% if iana_action_state or can_edit_iana_state %}
-                        <tr>
-                            <th scope="row">
-                                {% if not can_edit_iana_state and not iana_review_state %}IANA{% endif %}
-                            </th>
-                            <th scope="row">
-                                <a href="{% url "ietf.doc.views_help.state_help" type="draft-iana-action" %}">
-                                    IANA action state
-                                </a>
-                            </th>
-                            <td class="edit">
-                                {% if can_edit_iana_state and not snapshot %}
-                                    <a class="btn btn-primary btn-sm"
-                                       href="{% url 'ietf.doc.views_draft.change_iana_state' name=doc.name state_type="iana-action" %}">
-                                        Edit
-                                    </a>
-                                {% endif %}
-                            </td>
-                            <td>
-                                {% if not iana_action_state %}
-                                    <span class="text-body-secondary">
-                                        (None)
-                                    </span>
-                                {% else %}
-                                    {{ iana_action_state }}
-                                {% endif %}
-                            </td>
-                        </tr>
-                    {% endif %}
-                    {% if iana_experts_state or can_edit_iana_state %}
-                        <tr>
-                            <th scope="row">
-                                {% if not can_edit_iana_state and not iana_review_state and not iana_action_state %}IANA{% endif %}
-                            </th>
-                            <th scope="row">
-                                <a href="{% url "ietf.doc.views_help.state_help" type="draft-iana-experts" %}">
-                                    IANA expert review state
-                                </a>
-                            </th>
-                            <td class="edit">
-                                {% if can_edit_iana_state and not snapshot %}
-                                    <a class="btn btn-primary btn-sm"
-                                       href="{% url 'ietf.doc.views_draft.change_iana_state' name=doc.name state_type="iana-experts" %}">
-                                        Edit
-                                    </a>
-                                {% endif %}
-                            </td>
-                            <td class="{% if iana_experts_state|slugify|slice:"-2:" != "ok" %}text-danger{% else %}text-success{% endif %}">
-                                {% if not iana_experts_state %}
-                                    <span class="text-body-secondary">
-                                        (None)
-                                    </span>
-                                {% else %}
-                                    {{ iana_experts_state }}
-                                {% endif %}
-                            </td>
-                        </tr>
-                    {% endif %}
-                    {% if iana_experts_comment or can_edit_iana_state %}
-                        <tr>
-                            <th scope="row">
-                                {% if not can_edit_iana_state and not iana_review_state and not iana_action_state and not iana_experts_state %}
+            {% if doc.stream_id != 'editorial' %}
+                {% if can_edit_iana_state or iana_review_state or iana_experts_state or iana_experts_comment %}
+                    <tbody class="meta border-top">
+                        {% if iana_review_state or can_edit_iana_state %}
+                            <tr>
+                                <th scope="row">
                                     IANA
-                                {% endif %}
-                            </th>
-                            <th scope="row">
-                                IANA expert review comments
-                            </th>
-                            <td class="edit">
-                                {% if can_edit_iana_state and not snapshot %}
-                                    <a class="btn btn-primary btn-sm"
-                                       href="{% url 'ietf.doc.views_draft.add_iana_experts_comment' name=doc.name %}">
-                                        Edit
+                                </th>
+                                <th scope="row">
+                                    <a href="{% url "ietf.doc.views_help.state_help" type="draft-iana-review" %}">
+                                        IANA review state
                                     </a>
-                                {% endif %}
-                            </td>
-                            <td>
-                                {% if not iana_experts_comment %}
-                                    <span class="text-body-secondary">
-                                        (None)
-                                    </span>
-                                {% else %}
-                                    {{ iana_experts_comment }}
-                                {% endif %}
-                            </td>
-                        </tr>
-                    {% endif %}
-                </tbody>
+                                </th>
+                                <td class="edit">
+                                    {% if can_edit_iana_state and not snapshot %}
+                                        <a class="btn btn-primary btn-sm"
+                                        href="{% url 'ietf.doc.views_draft.change_iana_state' name=doc.name state_type="iana-review" %}">
+                                            Edit
+                                        </a>
+                                    {% endif %}
+                                </td>
+                                <td class="{% if iana_review_state|slugify|slice:7 != "iana-ok" %}text-danger{% else %}text-success{% endif %}">
+                                    {% if not iana_review_state %}
+                                        <span class="text-body-secondary">
+                                            (None)
+                                        </span>
+                                    {% else %}
+                                        {{ iana_review_state }}
+                                    {% endif %}
+                                </td>
+                            </tr>
+                        {% endif %}
+                        {% if iana_action_state or can_edit_iana_state %}
+                            <tr>
+                                <th scope="row">
+                                    {% if not can_edit_iana_state and not iana_review_state %}IANA{% endif %}
+                                </th>
+                                <th scope="row">
+                                    <a href="{% url "ietf.doc.views_help.state_help" type="draft-iana-action" %}">
+                                        IANA action state
+                                    </a>
+                                </th>
+                                <td class="edit">
+                                    {% if can_edit_iana_state and not snapshot %}
+                                        <a class="btn btn-primary btn-sm"
+                                        href="{% url 'ietf.doc.views_draft.change_iana_state' name=doc.name state_type="iana-action" %}">
+                                            Edit
+                                        </a>
+                                    {% endif %}
+                                </td>
+                                <td>
+                                    {% if not iana_action_state %}
+                                        <span class="text-body-secondary">
+                                            (None)
+                                        </span>
+                                    {% else %}
+                                        {{ iana_action_state }}
+                                    {% endif %}
+                                </td>
+                            </tr>
+                        {% endif %}
+                        {% if iana_experts_state or can_edit_iana_state %}
+                            <tr>
+                                <th scope="row">
+                                    {% if not can_edit_iana_state and not iana_review_state and not iana_action_state %}IANA{% endif %}
+                                </th>
+                                <th scope="row">
+                                    <a href="{% url "ietf.doc.views_help.state_help" type="draft-iana-experts" %}">
+                                        IANA expert review state
+                                    </a>
+                                </th>
+                                <td class="edit">
+                                    {% if can_edit_iana_state and not snapshot %}
+                                        <a class="btn btn-primary btn-sm"
+                                        href="{% url 'ietf.doc.views_draft.change_iana_state' name=doc.name state_type="iana-experts" %}">
+                                            Edit
+                                        </a>
+                                    {% endif %}
+                                </td>
+                                <td class="{% if iana_experts_state|slugify|slice:"-2:" != "ok" %}text-danger{% else %}text-success{% endif %}">
+                                    {% if not iana_experts_state %}
+                                        <span class="text-body-secondary">
+                                            (None)
+                                        </span>
+                                    {% else %}
+                                        {{ iana_experts_state }}
+                                    {% endif %}
+                                </td>
+                            </tr>
+                        {% endif %}
+                        {% if iana_experts_comment or can_edit_iana_state %}
+                            <tr>
+                                <th scope="row">
+                                    {% if not can_edit_iana_state and not iana_review_state and not iana_action_state and not iana_experts_state %}
+                                        IANA
+                                    {% endif %}
+                                </th>
+                                <th scope="row">
+                                    IANA expert review comments
+                                </th>
+                                <td class="edit">
+                                    {% if can_edit_iana_state and not snapshot %}
+                                        <a class="btn btn-primary btn-sm"
+                                        href="{% url 'ietf.doc.views_draft.add_iana_experts_comment' name=doc.name %}">
+                                            Edit
+                                        </a>
+                                    {% endif %}
+                                </td>
+                                <td>
+                                    {% if not iana_experts_comment %}
+                                        <span class="text-body-secondary">
+                                            (None)
+                                        </span>
+                                    {% else %}
+                                        {{ iana_experts_comment }}
+                                    {% endif %}
+                                </td>
+                            </tr>
+                        {% endif %}
+                    </tbody>
+                {% endif %}
             {% endif %}
             {% if rfc_editor_state %}
                 <tbody class="meta border-top">