Skip to content

Commit c124006

Browse files
committed
Redesign the feedback pending template. See ietf-tools#975
- Legacy-Id: 5774
1 parent 8e2a8f2 commit c124006

5 files changed

Lines changed: 73 additions & 15 deletions

File tree

ietf/nomcom/forms.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -718,7 +718,7 @@ def clean_key(self):
718718

719719
class PendingFeedbackForm(BaseNomcomForm, forms.ModelForm):
720720

721-
type = forms.ModelChoiceField(queryset=FeedbackType.objects.all(), widget=forms.RadioSelect, empty_label='Unclassified', required=False)
721+
type = forms.ModelChoiceField(queryset=FeedbackType.objects.all().order_by('pk'), widget=forms.RadioSelect, empty_label='Unclassified', required=False)
722722

723723
class Meta:
724724
model = Feedback

ietf/nomcom/views.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,7 @@ def view_feedback_pending(request, year):
511511
'message': message,
512512
'extra_step': extra_step,
513513
'default_type': default_type,
514+
'types': FeedbackType.objects.all().order_by('pk'),
514515
'nomcom': nomcom}, RequestContext(request))
515516

516517

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<tr>
2+
{% if not extra_step %}<th></th>{% endif %}
3+
<th>Date</th>
4+
{% if extra_step %}
5+
<th>Type</th>
6+
{% else %}
7+
<th>Unclassified</th>{% for t in types %}<th>{{ t }}</th>{% endfor %}
8+
{% endif %}
9+
<th>Author</th>
10+
<th>Subject</th>
11+
</tr>

ietf/templates/nomcom/view_feedback_pending.html

Lines changed: 49 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,24 @@
55

66
{% block subtitle %} - Feeback pending{% endblock %}
77

8+
{% block scripts %}
9+
{{ block.super }}
10+
(function($) {
11+
$(document).ready(function() {
12+
$('.toggle .trigger').click(function() {
13+
if ($(this).hasClass('closed')) {
14+
$(this).removeClass('closed').addClass('open');
15+
$(this).parent().parent().next().show();
16+
} else {
17+
$(this).removeClass('open').addClass('closed');
18+
$(this).parent().parent().next().hide();
19+
}
20+
return false;
21+
});
22+
});
23+
})(jQuery);
24+
{% endblock %}
25+
826
{% block nomcom_content %}
927

1028
<p>Back to <a href="{% url nomcom_view_feedback year %}">feedback index</a></p>
@@ -32,11 +50,27 @@ <h2>Feedback pending from email list</h2>
3250
{% endif %}
3351
</div>
3452
{{ formset.management_form }}
53+
<table class="ietf-table">
54+
{% include "nomcom/inc.feedback_pending_header.html" %}
3555
{% for form in formset.forms %}
36-
{% if form.errors %}<div class="info-message-error">Please correct the following errors</div>{% endif %}
37-
<div class="baseform">
38-
<div class="fieldset">
39-
<h2>{{ form.instance.time|date:"Y-m-d" }} id:{{ form.instance.id }}</h2>
56+
{% if forloop.counter|divisibleby:"20" %}{% include "nomcom/inc.feedback_pending_header.html" %}{% endif %}
57+
{% if form.errors %}<tr><td colspan="5" class="info-message-error">Please correct the following errors</td></tr>{% endif %}
58+
<tr class="{% cycle "evenrow" "oddrow" %}">
59+
{% if not extra_step %}<td class="toggle"><a href="#" class="trigger closed"></a></td>{% endif %}
60+
<td>{{ form.instance.time|date:"Y-m-d" }} id:{{ form.instance.id }}</td>
61+
{% if extra_step %}
62+
<td>{{ form.feedback_type }}</td>
63+
{% else %}
64+
{{ form.id }}
65+
{% for choice in form.type.field.choices %}
66+
<td class="{% cycle "evenradio" "oddradio" %}"><input type="radio" name="{{ form.type.html_name }}" value="{{ choice.0 }}" {% if not choice.0 %}checked="checked"{% endif %} title="{{ choice.1 }}" /></td>
67+
{% endfor %}
68+
{% endif %}
69+
<td>{{ form.instance.author }}</th>
70+
<td>{{ form.instance.subject }}</td>
71+
</tr>
72+
{% if extra_step %}
73+
<tr class="body bodyform"><td colspan="2" class="baseform">
4074
{% for field in form %}
4175
<div id="baseform-fieldname-{{ field.html_name }}"
4276
{% if field.field.widget.is_hidden %}style="display: none;"{% endif %}
@@ -54,19 +88,20 @@ <h2>{{ form.instance.time|date:"Y-m-d" }} id:{{ form.instance.id }}</h2>
5488
{{ field.errors }}
5589
</div>
5690
<div class="endfield"></div>
57-
</div>
91+
</div>
5892
{% endfor %}
59-
<h3>Type</h3>
60-
<pre>{{ form.feedback_type }}</pre>
61-
<h3>Author</h3>
62-
<pre>{{ form.instance.author }}</pre>
63-
<h3>Subject</h3>
64-
<pre>{{ form.instance.subject }}</pre>
65-
<h3>Feedback body</h3>
93+
</td>
94+
<td colspan="3">
6695
<pre>{% decrypt form.instance.comments request year 1 %}</pre>
67-
</div>
68-
</div>
96+
</td></tr>
97+
{% else %}
98+
<tr class="body" style="display: none;"><td colspan="{{ types.count|add:"5" }}">
99+
<pre>{% decrypt form.instance.comments request year 1 %}</pre>
100+
</td></tr>
101+
{% endif %}
102+
</tr>
69103
{% endfor %}
104+
</table>
70105
<div class="sumit-row">
71106
{% if extra_step %}
72107
<input type="submit" value="Save feedback" name="end" />

static/css/base2.css

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -280,6 +280,17 @@ div.info-message-error { border: 1px solid red; background-color: #ffeebb; paddi
280280
margin: 12px;
281281
}
282282

283+
#feedbackformset table {width: 100%;}
284+
#feedbackformset .oddradio { background-color: white; text-align: center;}
285+
#feedbackformset .evenradio { background-color: #EDF5FF; text-align: center;}
286+
#feedbackformset .toggle { padding: 0px; }
287+
#feedbackformset .toggle a.trigger { display: block; width: 22px; height: 22px;}
288+
#feedbackformset .toggle a.closed { background: url(../images/plus.png) no-repeat center center;}
289+
#feedbackformset .toggle a.open { background: url(../images/minus.png) no-repeat center center;}
290+
#feedbackformset tr.body td { border-bottom: 1px solid #cbcbcb;}
291+
#feedbackformset tr.bodyform td { border-top: 1px solid #cbcbcb;}
292+
293+
283294
.baseform select,
284295
.baseform textarea,
285296
.baseform input {

0 commit comments

Comments
 (0)