fix yes-no-abstain-poll in assigmnet-projector
This commit is contained in:
parent
ebc81d9236
commit
a21a96026b
@ -113,9 +113,13 @@ class Assignment(models.Model, SlideMixin):
|
||||
publish_winner_results_only = config["assignment_publish_winner_results_only"]
|
||||
# list of votes
|
||||
votes = []
|
||||
for candidate in self.candidates:
|
||||
options = []
|
||||
polls = self.poll_set.all()
|
||||
for poll in polls:
|
||||
options += poll.get_options()
|
||||
for candidate in set([option.candidate for option in options]):
|
||||
tmplist = [[candidate, self.is_elected(candidate)], []]
|
||||
for poll in self.poll_set.all():
|
||||
for poll in polls:
|
||||
if poll.published:
|
||||
if poll.get_options().filter(candidate=candidate).exists():
|
||||
# check config option 'publish_winner_results_only'
|
||||
@ -123,7 +127,7 @@ class Assignment(models.Model, SlideMixin):
|
||||
or publish_winner_results_only and self.is_elected(candidate):
|
||||
option = AssignmentOption.objects.filter(poll=poll).get(candidate=candidate)
|
||||
try:
|
||||
tmplist[1].append(option.get_votes()[0])
|
||||
tmplist[1].append(option.get_votes())
|
||||
except IndexError:
|
||||
tmplist[1].append('–')
|
||||
else:
|
||||
|
@ -46,7 +46,7 @@
|
||||
<p><br></p>
|
||||
{% endif %}
|
||||
|
||||
{% if polls.count > 0 %}
|
||||
{% if polls.exists %}
|
||||
<h3>{% trans "Election results" %}</h3>
|
||||
<table>
|
||||
<tr>
|
||||
@ -60,25 +60,30 @@
|
||||
{% for vote in votes %}
|
||||
<tr class="{% cycle 'odd' '' %}">
|
||||
{% with vote|first as candidate %}
|
||||
<td class="candidate {% if candidate.1 %}elected{% endif %}">
|
||||
{% if candidate.1 %}
|
||||
<a class="elected"><img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Candidate is elected' %}"></a>
|
||||
{% endif %}
|
||||
{{ candidate.0 }}
|
||||
</td>
|
||||
{% for v in vote|last %}
|
||||
<td style="white-space:nowrap;" {% if candidate.1 %}class="elected"{% endif %}>{% if v %}
|
||||
{% if v|length == 3 %}
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}"> {% if v.0 %}{{ v.0 }}{% else %}∅{% endif %}<br>
|
||||
<img src="{% static 'images/icons/voting-no.png' %}" title="{% trans 'No' %}"> {% if v.1 %}{{ v.1 }}{% else %}∅{% endif %}<br>
|
||||
<img src="{% static 'images/icons/voting-abstention.png' %}" title="{% trans 'Abstention' %}"> {% if v.2 %}{{ v.2 }}{% else %}∅{% endif %}<br>
|
||||
{% else %}
|
||||
{% if v != "-" %}<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}">{% endif %}
|
||||
{{ v }}
|
||||
<td class="candidate{% if candidate.1 %} elected{% endif %}">
|
||||
{% if candidate.1 %}
|
||||
<a class="elected">
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Candidate is elected' %}">
|
||||
</a>
|
||||
{% endif %}
|
||||
{{ candidate.0 }}
|
||||
</td>
|
||||
{% for v in vote|last %}
|
||||
<td style="white-space:nowrap;" {% if candidate.1 %}class="elected"{% endif %}>
|
||||
{% if v %}
|
||||
{% if v|length == 3 %}
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}"> {% if v.0 %}{{ v.0 }}{% else %}∅{% endif %}<br>
|
||||
<img src="{% static 'images/icons/voting-no.png' %}" title="{% trans 'No' %}"> {% if v.1 %}{{ v.1 }}{% else %}∅{% endif %}<br>
|
||||
<img src="{% static 'images/icons/voting-abstention.png' %}" title="{% trans 'Abstention' %}"> {% if v.2 %}{{ v.2 }}{% else %}∅{% endif %}<br>
|
||||
{% else %}
|
||||
{% if v != "-" %}
|
||||
<img src="{% static 'images/icons/voting-yes.png' %}" title="{% trans 'Yes' %}">
|
||||
{% endif %}
|
||||
{{ v.0 }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endfor %}
|
||||
</td>
|
||||
{% endfor %}
|
||||
{% endwith %}
|
||||
</tr>
|
||||
{% empty %}
|
||||
|
Loading…
Reference in New Issue
Block a user