started transitioning lineup and players to tables
This commit is contained in:
@@ -8,7 +8,7 @@
|
|||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<h6>Lineup</h6>
|
<h5>Lineup</h5>
|
||||||
{# <ul class="list-group">#}
|
{# <ul class="list-group">#}
|
||||||
<form action="{% url 'edit lineup' event_id=event.id%}" method="post">
|
<form action="{% url 'edit lineup' event_id=event.id%}" method="post">
|
||||||
|
|
||||||
@@ -23,12 +23,20 @@
|
|||||||
<th scope="col">Position</th>
|
<th scope="col">Position</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
{% for form in positionings_formset %}
|
{% for player in positionings_players_initial|dictsort:"positioning.order" %}
|
||||||
<tr>
|
{% if player.positioning %}
|
||||||
<th scope="row">{{ form.order }}</th>
|
<tr data-player-id="{{ player.id }}",
|
||||||
<td>{{ form.player }}</td>
|
data-positioning-position="{{ player.positioning.position }}"
|
||||||
<td>{{ form.position }}</td>
|
>
|
||||||
|
{# <th scope="row">{{ form.order }}</th>#}
|
||||||
|
{# <td>{{ form.player }}</td>#}
|
||||||
|
{# <td>{{ form.position }}</td>#}
|
||||||
|
<th scope="row">{% if player.positioning.order %}{{ player.positioning.order }}{% endif %}</th>
|
||||||
|
<th>{{ player.first_name }} {{ player.last_name }}</th>
|
||||||
|
<td>{{ player.positioning.position }}</td>
|
||||||
|
|
||||||
</tr>
|
</tr>
|
||||||
|
{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</table>
|
</table>
|
||||||
{# {% endfor %}#}
|
{# {% endfor %}#}
|
||||||
@@ -37,11 +45,23 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<h6>Players</h6>
|
<h5>Players</h5>
|
||||||
<ul class="list-group">
|
<div class="col-md-6">
|
||||||
|
<table class="table">
|
||||||
|
<tr>
|
||||||
|
<th scope="col"></th>
|
||||||
|
<th scope="col">Name</th>
|
||||||
|
<th scope="col">#</th>
|
||||||
|
<th scope="col">Avg</th>
|
||||||
|
<th scope="col">Slug</th>
|
||||||
|
<th scope="col">OBP</th>
|
||||||
|
</tr>
|
||||||
|
|
||||||
{% for player in players %}
|
{% for player in players %}
|
||||||
<li class="list-group-item">
|
{% if not player.positioning %}
|
||||||
{% if player.availability.available == 2 %}
|
<tr>
|
||||||
|
<td>
|
||||||
|
{% if player.availability.available == 2 %}
|
||||||
<img class="bg-success p-2 rounded-circle" width="5" height="5"><span class="visually-hidden">Yes</span></img>
|
<img class="bg-success p-2 rounded-circle" width="5" height="5"><span class="visually-hidden">Yes</span></img>
|
||||||
{% elif player.availability.available == 1%}
|
{% elif player.availability.available == 1%}
|
||||||
<img class="bg-info p-2 rounded-circle" width="5" height="5"><span class="visually-hidden">Maybe</span></span>
|
<img class="bg-info p-2 rounded-circle" width="5" height="5"><span class="visually-hidden">Maybe</span></span>
|
||||||
@@ -50,11 +70,16 @@
|
|||||||
{% elif player.availability.available == -1%}
|
{% elif player.availability.available == -1%}
|
||||||
<img class="bg-secondary p-2 rounded-circle" width="5" height="5"><span class="visually-hidden">Unknown</span></span>
|
<img class="bg-secondary p-2 rounded-circle" width="5" height="5"><span class="visually-hidden">Unknown</span></span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{{ player.first_name }} {{ player.last_name }}
|
</td>
|
||||||
<code><small>{{ player.statline }}</small></code>
|
<th><span class="d-none d-md-block">{{ player.first_name }}</span> {{ player.last_name }}</th>
|
||||||
</li>
|
<td>{{ player.jersey_number }}</td>
|
||||||
|
<td><code>{{ player.statline.batting_avg|stringformat:".3f"|slice:"1:" }}</code></td>
|
||||||
|
<td><code>{{ player.statline.slugging_pct|stringformat:".3f"|slice:"1:" }}</code></td>
|
||||||
|
<td><code>{{ player.statline.onbase_pct|stringformat:".3f"|slice:"1:" }}</code></td>
|
||||||
|
</tr>
|
||||||
|
{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</table >
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -29,18 +29,19 @@ def edit(request, event_id):
|
|||||||
return render(request, 'success.html', {'call_back':'edit lineup','id':event_id}, status=200)
|
return render(request, 'success.html', {'call_back':'edit lineup','id':event_id}, status=200)
|
||||||
# return render(request, 'success.html', {'call_back':'schedule'})
|
# return render(request, 'success.html', {'call_back':'schedule'})
|
||||||
event = Event.objects.get(id=event_id)
|
event = Event.objects.get(id=event_id)
|
||||||
players = Player.objects.all().prefetch_related('availability_set', 'statline_set')
|
players = Player.objects.all().prefetch_related('availability_set', 'statline_set', 'positioning_set')
|
||||||
players = [
|
players = [
|
||||||
{
|
{
|
||||||
**model_to_dict(player),
|
**model_to_dict(player),
|
||||||
'availability':player.availability_set.get(event_id=event_id),
|
'availability':player.availability_set.get(event_id=event_id),
|
||||||
# 'available_value': player.availability_set.get(event_id=event_id).available,
|
# 'available_value': player.availability_set.get(event_id=event_id).available,
|
||||||
'statline': player.statline_set.get(player_id=player.id)
|
'statline': player.statline_set.get(player_id=player.id),
|
||||||
|
'positioning': player.positioning_set.filter(event_id=event_id).first()
|
||||||
}
|
}
|
||||||
for player in players
|
for player in players
|
||||||
]
|
]
|
||||||
players.sort(key=lambda d: d['availability'].available, reverse = True)
|
players.sort(key=lambda d: (-d['availability'].available, d['last_name']))
|
||||||
qset = Positioning.objects.filter(event_id=event_id, order__isnull = False)
|
qset = Positioning.objects.filter(event_id=event_id)
|
||||||
formset = PositioningFormSet(queryset=qset)
|
formset = PositioningFormSet(queryset=qset)
|
||||||
for form in formset:
|
for form in formset:
|
||||||
for field in form.fields:
|
for field in form.fields:
|
||||||
@@ -48,4 +49,5 @@ def edit(request, event_id):
|
|||||||
return render(request, 'lineups/lineup.html', {'title': 'Lineup',
|
return render(request, 'lineups/lineup.html', {'title': 'Lineup',
|
||||||
'event': event,
|
'event': event,
|
||||||
'players': players,
|
'players': players,
|
||||||
|
'positionings_players_initial':[player for player in players if player['positioning']],
|
||||||
'positionings_formset':formset})
|
'positionings_formset':formset})
|
||||||
Reference in New Issue
Block a user