* feat: Add TelechatAgendaContent model and related support * feat: Add UI for managing TelechatAgendaContents * refactor: Rename _view view to _manage * feat: Add a view to dump the TelechatAgendaContent as text/plain * refactor: Point agenda_data() helpers at content in the DB * refactor: Replace references to settings URLs/paths with new plumbing * chore: Remove now-obsolete settings from settings.py * feat: Link to telechat_agenda_content_manage view from iesg agenda * fix: Use correct view name * feat: Link from agenda content management page to IESG agenda view * chore: Create resources * chore: Add new names to names.json * chore: Renumber migration after rebase * chore: Remove unused import * fix: Clean up partially removed code * chore: Add admin model for TelechatAgendaContent * chore: Simplify __str__ method for TelechatAgendaContent * test: Add TelechatAgendaContentFactory * test: Test the fill_in_agenda_administrivia() function * test: Test that agenda contains action_items content * test: Test that sensitive agenda links are restricted by role * test: Test the telechat_agenda_content_view view * test: Add test of telechat_agenda_content_edit view * fix: Add type attribute to button to satisfy html validator * test: Filter TelechatAgendaSectionName to used=True for tests * test: More thoroughly test for likely(ish) permission errors * fix: Fix typo in "tablist" role * test: Test telechat_agenda_content_manage view * style: Put back newlines at EOF * chore: Add admin for TelechatAgendaSectionName * chore: Renumber migrations * fix: Depend on the correct migration Forgot to update the number, but was also depending on the wrong migration.
50 lines
1.6 KiB
HTML
50 lines
1.6 KiB
HTML
{% extends "base.html" %}
|
|
{# Copyright The IETF Trust 2023, All Rights Reserved #}
|
|
{% load origin %}
|
|
{% load django_bootstrap5 %}
|
|
{% block title %}Telechat agenda contents{% endblock %}
|
|
{% block content %}
|
|
{% origin %}
|
|
<h1>Telechat Agenda Contents</h1>
|
|
<p>
|
|
<a href="{% url 'ietf.iesg.views.agenda' %}">Go to IESG agenda...</a>
|
|
</p>
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<ul class="nav nav-tabs card-header-tabs" role="tablist">
|
|
{% for item in contents %}
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link {% if forloop.first %}active{% endif %}"
|
|
id="{{ item.section.slug }}-tab"
|
|
type="button"
|
|
data-bs-toggle="tab"
|
|
data-bs-target="#{{ item.section.slug}}"
|
|
role="tab" aria-controls="{{ item.section.slug }}"
|
|
aria-selected="true">
|
|
{{ item.section }}
|
|
</button>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
<div class="tab-content card-body">
|
|
{% for item in contents %}
|
|
<div class="tab-pane {% if forloop.first %}show active{% endif %}"
|
|
id="{{ item.section.slug }}"
|
|
role="tabpanel"
|
|
aria-labelledby="{{ item.section.slug }}-tab">
|
|
<a class="btn btn-sm btn-outline-primary float-end"
|
|
href="{% url 'ietf.iesg.views.telechat_agenda_content_edit' section=item.section.slug %}">
|
|
Edit
|
|
</a>
|
|
{% if item.text %}
|
|
<pre>{{ item.text }}</pre>
|
|
{% else %}
|
|
<div class="text-center text-danger">No {{ item.section }}</div>
|
|
{% endif %}
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|