forked from ietf-tools/datatracker
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcustomize_workflow.html
More file actions
153 lines (153 loc) · 7.61 KB
/
customize_workflow.html
File metadata and controls
153 lines (153 loc) · 7.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
{% extends "base.html" %}
{# Copyright The IETF Trust 2015, All Rights Reserved #}
{% load origin %}
{% load django_bootstrap5 static %}
{% block title %}Customize Workflow for {{ group.acronym }} {{ group.type.name }}{% endblock %}
{% block pagehead %}
<link rel="stylesheet" href="{% static "ietf/css/list.css" %}">
{% endblock %}
{% block content %}
{% origin %}
{% load ietf_filters %}
<h1>
Customize Workflow
<br>
<small class="text-muted">{{ group.acronym }} {{ group.type.name }}</small>
</h1>
<p class="my-3">
Below you can customize the draft states and tags used in the
<a href="{{ group.about_url }}">{{ group.acronym }} {{ group.type.name }}</a>.
Note that some states are
mandatory for group operation and cannot be deactivated.
</p>
{% if group.type_id == "wg" %}
<p>
You can see the default Working Group I-D State Diagram
in
<a href="{% url 'ietf.doc.views_doc.document_html' name='rfc6174' %}">Section 4.1 of RFC6174</a>.
</p>
{% endif %}
<h2 class="mt-5">States</h2>
{% with states|first as state %}
<a href="{% url 'ietf.doc.views_help.state_help' type=state.type_id %}"
class="btn btn-info my-3">Help on states</a>
{% endwith %}
<table class="table table-sm table-striped tablesorter">
<thead>
<tr>
<th scope="col" data-sort="state">State</th>
<th scope="col" data-sort="next">Next states</th>
<th scope="col"></th>
</tr>
</thead>
<tbody>
{% for state in states %}
<tr class="{% if not state.used %}inactive{% endif %}">
<td class="name">
<span {% if not state.used %}class="text-decoration-line-through"{% endif %}
title="{{ state.desc|striptags|truncatewords:40 }}">
{{ state.name }}
</span>
{% if not state.used %}<span class="text-muted">(not used in {{ group.acronym }})</span>{% endif %}
{% if state.mandatory %}<span class="badge rounded-pill bg-success">Mandatory</span>{% endif %}
</td>
<td class="next-states">
{% if state.used_next_states %}
{% for n in state.used_next_states %}
<span title="{{ n.desc|striptags|truncatewords:40 }}">{{ n.name }}</span>
{% if not forloop.last %}<br>{% endif %}
{% endfor %}
{% else %}
None
{% endif %}
<br>
<button class="btn btn-primary btn-sm {% if not state.used %}disabled{% endif %}"
type="button"
data-bs-toggle="collapse"
data-bs-target="#nexts{{ state.pk }}"
aria-expanded="false"
aria-controls="nexts{{ state.pk }}">
Customize <i class="bi bi-caret-down"></i>
</button>
<form id="nexts{{ state.pk }}"
class="mt-2 set-next-states collapse out"
method="post">
{% csrf_token %}
<label>Select the next states:</label>
{% for checked, default, s in state.next_states_checkboxes %}
<div class="form-check {% if not s.used %}inactive{% endif %}">
<input class="form-check-input" type="checkbox" name="next_states" value="{{ s.pk }}" id="id-{{ s.pk }}-{{ state.pk }}" {% if checked %} checked{% endif %}>
<label class="form-check-label" for="id-{{ s.pk }}-{{ state.pk }}">
{{ s.name }}
{% if default %}<span class="badge rounded-pill bg-secondary">Default</span>{% endif %}
</label>
</div>
{% endfor %}
<input type="hidden" name="state" value="{{ state.pk }}">
<input type="hidden" name="action" value="setnextstates">
<button class="mt-2 btn btn-primary btn-sm" type="submit">Save</button>
</form>
</td>
<td>
{% if not state.mandatory %}
<form class="set-state text-end" method="post">
{% csrf_token %}
<input type="hidden" name="state" value="{{ state.pk }}">
<input type="hidden" name="action" value="setstateactive">
<input type="hidden" name="active" value="{{ state.used|yesno:"0,1" }}">
<button class="btn btn-{% if state.used %}danger{% else %}success{% endif %} btn-sm"
type="submit"
title="Click to {% if state.used %}de{% endif %}activate this state">
{% if state.used %}
Deactivate
{% else %}
Activate
{% endif %}
</button>
</form>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
<h2 class="mt-5">Tags</h2>
<table class="table table-sm table-striped tablesorter">
<thead>
<tr>
<th scope="col" data-sort="tag">Tag</th>
<th scope="col"></th>
</tr>
</thead>
<tbody>
{% for tag in tags %}
<tr>
<td class="name">
<span {% if not tag.used %}class="text-decoration-line-through"{% endif %}>{{ tag.name }}</span>
{% if not tag.used %}<span class="text-muted">(not used in {{ group.acronym }})</span>{% endif %}
</td>
<td>
<form class="set-tag text-end" method="post">
{% csrf_token %}
<input type="hidden" name="tag" value="{{ tag.pk }}">
<input type="hidden" name="action" value="settagactive">
<input type="hidden" name="active" value="{{ tag.used|yesno:"0,1" }}">
<button class="btn btn-{% if tag.used %}danger{% else %}success{% endif %} btn-sm"
type="submit"
title="Click to {% if tag.used %}de{% endif %}activate this tag">
{% if tag.used %}
Deactivate
{% else %}
Activate
{% endif %}
</button>
</form>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endblock %}
{% block js %}
<script src="{% static "ietf/js/list.js" %}"></script>
{% endblock %}