hopefully better events view
This commit is contained in:
parent
0becec7382
commit
860453a8d0
@ -15,18 +15,20 @@ match details:</p>
|
||||
|
||||
<div class="accordion" id="accordion">
|
||||
|
||||
{% regroup points by match.event as event_list %}
|
||||
{% for event in event_list %}
|
||||
{% for event in events.values %}
|
||||
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle event-title" data-toggle="collapse"
|
||||
data-parent="#accordion" href="#event-{{event.grouper.id}}">
|
||||
{{event.grouper.name}} - {{event.grouper.date}}
|
||||
data-parent="#accordion" href="#event-{{event.id}}">
|
||||
{{event.name}} - {{event.date}}
|
||||
</a>
|
||||
{% for team,score in event.scores.iteritems %}
|
||||
{{team}}: {{score}}
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div id="event-{{event.grouper.id}}" class="accordion-body collapse in">
|
||||
<div id="event-{{event.id}}" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
<table class="table">
|
||||
<thead>
|
||||
@ -36,13 +38,12 @@ match details:</p>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% regroup event.list by match as match_list %}
|
||||
{% for match in match_list %}
|
||||
{% for match, tp_list in event.match_list.items %}
|
||||
<tr>
|
||||
<td>{{match.grouper}}</td>
|
||||
<td>{{match}}</td>
|
||||
<td>
|
||||
<ul>
|
||||
{% for tp in match.list %}
|
||||
{% for tp in tp_list %}
|
||||
{% if tp.points %}
|
||||
<li> {{tp.team}} received {{tp.points}}
|
||||
point{{tp.points|pluralize}} for {{tp.star}}
|
||||
|
@ -1,12 +1,24 @@
|
||||
from collections import defaultdict
|
||||
from django.shortcuts import render
|
||||
from fowl.game.models import TeamPoints
|
||||
|
||||
|
||||
def events(request):
|
||||
events = {}
|
||||
points = TeamPoints.objects.filter().order_by('match',
|
||||
'team').select_related()
|
||||
totals = TeamPoints.objects.values('match__event',
|
||||
'team__name').annotate(points=Sum('points'))
|
||||
return render(request, "events.html", {'points': points})
|
||||
for tp in points:
|
||||
event_id = tp.match.event_id
|
||||
if event_id not in events:
|
||||
events[event_id] = tp.match.event
|
||||
events[event_id].scores = {}
|
||||
events[event_id].match_list = {}
|
||||
events[event_id].match_list.setdefault(tp.match, []
|
||||
).append(tp)
|
||||
events[event_id].scores.setdefault(tp.team.name, 0)
|
||||
events[event_id].scores[tp.team.name] += tp.points
|
||||
return render(request, "events.html", {'events': events})
|
||||
|
||||
|
||||
def stables(request):
|
||||
return render(request, "stables.html")
|
||||
|
Loading…
Reference in New Issue
Block a user