fix next_event and previous_event if there isn't one

This commit is contained in:
2021-12-11 10:27:50 -06:00
parent 5bd6bad1a7
commit ecb25abd71
2 changed files with 74 additions and 69 deletions

View File

@@ -1,92 +1,96 @@
{% extends 'base.html' %}{% block title %} {{ title }} {% endblock %}{% load crispy_forms_tags %}{% load static %}
{% with events_active="active" %}
{% block precontent %}
<div class="d-flex justify-content-center justify-content-md-center border-bottom bg-white">
<a class="btn btn-outline-secondary btn-sm d-md-flex my-auto align-items-md-center my-3 mx-3" href="{% url 'edit lineup' event_id=previous_event.id %}" role="button">
<i class="bi bi-chevron-left"></i>{{ previous_event.start|date:"D" }}&nbsp;{{ previous_event.start|date:"n/j" }}
</a>
<div>
<h5 class="text-center m-1">{{ event.away_team.name }} vs. {{ event.home_team.name }}</h5>
<p class="text-center text-muted m-1">{{ event.start|date:"l, F j, Y g:i A" }}<br>{{ event.venue.name }}</p>
<h6 class="text-muted m-1"></h6>
{% block precontent %}
<div class="d-flex justify-content-center justify-content-md-center border-bottom bg-white">
{% if previous_event %}
<a class="btn btn-outline-secondary btn-sm d-md-flex my-auto align-items-md-center my-3 mx-3" href="{% url 'edit lineup' event_id=previous_event.id %}" role="button">
<i class="bi bi-chevron-left"></i>{{ previous_event.start|date:"D" }}&nbsp;{{ previous_event.start|date:"n/j" }}
</a>
{% endif %}
<div>
<h5 class="text-center m-1">{{ event.away_team.name }} vs. {{ event.home_team.name }}</h5>
<p class="text-center text-muted m-1">{{ event.start|date:"l, F j, Y g:i A" }}<br>{{ event.venue.name }}</p>
<h6 class="text-muted m-1"></h6>
</div>
{% if next_event %}
<a class="btn btn-outline-secondary btn-sm align-items-center my-auto my-3 mx-3" href="{% url 'edit lineup' event_id=next_event.id %}" role="button">
{{ next_event.start|date:"D" }}&nbsp;{{ next_event.start|date:"n/j" }}<i class="bi bi-chevron-right"></i>
</a>
{% endif %}
</div>
<a class="btn btn-outline-secondary btn-sm align-items-center my-auto my-3 mx-3" href="{% url 'edit lineup' event_id=next_event.id %}" role="button">
{{ next_event.start|date:"D" }}&nbsp;{{ next_event.start|date:"n/j" }}<i class="bi bi-chevron-right"></i>
</a>
</div>
<ul class="nav nav-pills nav-fill bg-white" role="tablist">
<li class="nav-item m-1" role="presentation"><a id="event-details-tab" class="nav-link active px-2 py-0" data-bs-toggle="pill" data-bs-target="#event-details" role="tab" aria-controls="event-details" aria-selected="true">Details</a></li>
<li class="nav-item m-1" role="presentation"><a id="event-lineup-tab" class="nav-link px-2 py-0" data-bs-toggle="pill" data-bs-target="#event-lineup" role="tab" aria-controls="event-lineup" aria-selected="false">Lineup</a></li>
</ul>
<ul class="nav nav-pills nav-fill bg-white" role="tablist">
<li class="nav-item m-1" role="presentation"><a id="event-details-tab" class="nav-link active px-2 py-0" data-bs-toggle="pill" data-bs-target="#event-details" role="tab" aria-controls="event-details" aria-selected="true">Details</a></li>
<li class="nav-item m-1" role="presentation"><a id="event-lineup-tab" class="nav-link px-2 py-0" data-bs-toggle="pill" data-bs-target="#event-lineup" role="tab" aria-controls="event-lineup" aria-selected="false">Lineup</a></li>
</ul>
{% endblock %}{% endwith %}
{% endblock %}{% endwith %}
{% block content %}
<div id="pills-tabContent" class="container-fluid tab-content my-1" data-toggle="tab">
<div id="event-details" class="tab-pane show active" role="tabpanel" aria-labelledby="event-details-tab">
<div>
<div class="card my-1">
<div class="card-header d-inline-flex">
<div class="d-inline-flex flex-grow-1"><h5>Event</h5></div>
<div class="d-inline-flex">
<button class="btn btn-sm btn-outline-secondary d-xl-flex align-items-xl-center mx-1" type="button">
<div id="event-details" class="tab-pane show active" role="tabpanel" aria-labelledby="event-details-tab">
<div>
<div class="card my-1">
<div class="card-header d-inline-flex">
<div class="d-inline-flex flex-grow-1"><h5>Event</h5></div>
<div class="d-inline-flex">
<button class="btn btn-sm btn-outline-secondary d-xl-flex align-items-xl-center mx-1" type="button">
<i class="bi bi-arrow-clockwise"></i>TeamSnap
</button>
<button type="button" value="Submit" class="btn btn-sm btn-outline-primary d-xl-flex align-items-xl-center mx-1">
<i class="bi bi-pencil-square mx-1"></i>Edit
</button>
</div>
</button>
<button type="button" value="Submit" class="btn btn-sm btn-outline-primary d-xl-flex align-items-xl-center mx-1">
<i class="bi bi-pencil-square mx-1"></i>Edit
</button>
</div>
<div class="card-body p-0">
{% include 'lineups/info-table.html' with d=details %}
</div>
<div class="card-body p-0">
{% include 'lineups/info-table.html' with d=details %}
</div>
</div>
</div>
</div>
</div>
<div id="event-lineup" class="tab-pane" role="tabpanel" aria-labelledby="event-lineup-tab">
<form action="{% url 'edit lineup' event_id=event.id%}" method="post">
{% csrf_token %}
{{ formset.management_form }}
<div class="row">
<div class="col-md-6">
<div class="card my-1">
<div class="card-header d-inline-flex">
<div class="d-inline-flex flex-grow-1"><h5>Lineup</h5></div>
<div>
<input type="submit" value="Submit" class="btn btn-sm btn-success d-xl-flex align-items-xl-center">
<div id="event-lineup" class="tab-pane" role="tabpanel" aria-labelledby="event-lineup-tab">
<form action="{% url 'edit lineup' event_id=event.id%}" method="post">
{% csrf_token %}
{{ formset.management_form }}
<div class="row">
<div class="col-md-6">
<div class="card my-1">
<div class="card-header d-inline-flex">
<div class="d-inline-flex flex-grow-1"><h5>Lineup</h5></div>
<div>
<input type="submit" value="Submit" class="btn btn-sm btn-success d-xl-flex align-items-xl-center">
</div>
</div>
</div>
<div class="card-body p-0">
{% include 'lineups/player-table.html' with table_id="dhd" formset=formset_dhd available_class="d-none" %}
<div class="card-body p-0">
{% include 'lineups/player-table.html' with table_id="dhd" formset=formset_dhd available_class="d-none" %}
<hr class="m-0">
{% include 'lineups/player-table.html' with table_id="lineup" formset=formset_lineup available_class="d-none"%}
<hr class="m-0">
{% include 'lineups/player-table.html' with table_id="lineup" formset=formset_lineup available_class="d-none"%}
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="card my-1">
<div class="card-header d-inline-flex">
<div class="d-inline-flex flex-grow-1">
<h5>Bench</h5>
<div class="col-md-6">
<div class="card my-1">
<div class="card-header d-inline-flex">
<div class="d-inline-flex flex-grow-1">
<h5>Bench</h5>
</div>
<div>
<button class="btn btn-sm btn-outline-secondary d-xl-flex align-items-xl-center" type="button">
<i class="bi bi-arrow-clockwise"></i>TeamSnap
</button>
</div>
</div>
<div>
<button class="btn btn-sm btn-outline-secondary d-xl-flex align-items-xl-center" type="button">
<i class="bi bi-arrow-clockwise"></i>TeamSnap
</button>
</div>
</div>
<div class="card-body p-0">
{% include 'lineups/player-table.html' with table_id="bench" formset=formset_bench order_class="d-none" %}
<div class="card-body p-0">
{% include 'lineups/player-table.html' with table_id="bench" formset=formset_bench order_class="d-none" %}
</div>
</div>
</div>
</div>
</div>
</form>
</div>
</div>
</form>
</div>
</div>
<script src="{% static 'js/Sortable.js' %}"></script>
<script id="sortable">

View File

@@ -35,7 +35,7 @@ def edit(request, event_id):
else:
pass
return render(request, 'success.html', {'call_back':'edit lineup','id':event_id, 'errors':[error for error in formset.errors if error]}, status=200)
previous_event = Event.objects.get(id=event_id-1)
previous_event = Event.objects.filter(id=event_id-1).first()
event = Event.objects.get(id=event_id)
next_event = Event.objects.get(id=event_id+1)
@@ -86,7 +86,8 @@ def edit(request, event_id):
}
return render(request, 'lineups/lineup.html', {'title': 'Lineup',
'event': event, 'details':details,
'event': event,
'details':details,
'previous_event': previous_event,
'next_event': next_event,
'formset': formset,