193 lines
7.6 KiB
Plaintext
193 lines
7.6 KiB
Plaintext
<%- include('partials/header') %>
|
|
<h1>
|
|
<div>
|
|
<% if (previousTraining) { %>
|
|
<a href="/training?date=<%= moment(previousTraining.datum).format('DD.MM.YYYY') %>"> < </a>
|
|
<% } %>
|
|
Training <%= training.datum %>
|
|
<% if (nextTraining) { %>
|
|
<a href="/training?date=<%= moment(nextTraining.datum).format('DD.MM.YYYY') %>"> > </a>
|
|
<% } %>
|
|
</h1>
|
|
</div>
|
|
|
|
<!-- Nav tabs -->
|
|
<ul class="nav nav-tabs" id="myTab" role="tablist">
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link <%= activeTab === 'geraete' ? 'active' : '' %>" id="tab-geraete" data-bs-toggle="tab" data-bs-target="#geraete" type="button" role="tab" aria-controls="geraete" aria-selected="true">Geräteplan</button>
|
|
</li>
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link <%= activeTab === 'spiel' ? 'active' : '' %>" id="tab-spiel" data-bs-toggle="tab" data-bs-target="#spiel" type="button" role="tab" aria-controls="spiel" aria-selected="false">Aufwärmen / Spiel</button>
|
|
</li><li class="nav-item" role="presentation">
|
|
<button class="nav-link <%= activeTab === 'anwesend' ? 'active' : '' %>" id="tab-anwesend" data-bs-toggle="tab" data-bs-target="#anwesend" type="button" role="tab" aria-controls="anwesend" aria-selected="false">Anwesenheit</button>
|
|
</li>
|
|
</ul>
|
|
|
|
<% if (training) { %>
|
|
<div class="tab-content" id="myTabContent">
|
|
<div class="tab-pane fade <%= activeTab === 'geraete' ? 'show active' : '' %>" id="geraete" role="tabpanel" aria-labelledby="tab-geraete">
|
|
<h2> Geräte </h2>
|
|
<ul>
|
|
<li>Riege 1: <%= training.geraet_riege_1_name %></li>
|
|
<li>Riege 2: <%= training.geraet_riege_2_name %></li>
|
|
<li>Riege 3: <%= training.geraet_riege_3_name %></li>
|
|
<li>Riege 4: <%= training.geraet_riege_4_name %></li>
|
|
<li>Riege 5: <%= training.geraet_riege_5_name %></li>
|
|
</ul>
|
|
</div>
|
|
<div class="tab-pane fade <%= activeTab === 'spiel' ? 'show active' : '' %>" id="spiel" role="tabpanel" aria-labelledby="tab-spiel">
|
|
<div id="aufwaermen">
|
|
<h3>Aufwärmen:</h3>
|
|
|
|
<% if (training.aufwaermleiter_name) { %>
|
|
<p><strong>Leitung:</strong>
|
|
<%= training.aufwaermleiter_name %></p>
|
|
<% } else { %>
|
|
<form method="POST" action="/update-leader">
|
|
<p><strong>Leitung:</strong>
|
|
<input type="hidden" name="trainingId" value="<%= training.id %>">
|
|
<input type="hidden" name="type" value="aufwaermleiter">
|
|
<select name="leaderId">
|
|
<% aufwaermleiterCandidates.forEach(candidate => { %>
|
|
<option value="<%= candidate.id %>"><%= candidate.name %> (<%= Math.floor(candidate.weeks_since_last) %> Wochen)</option>
|
|
<% }) %>
|
|
</select>
|
|
<button type="submit">Speichern</button>
|
|
</form></p>
|
|
<% } %>
|
|
|
|
<% if (training.aufwaermen_name) { %>
|
|
<p><strong>Spiel:</strong>
|
|
<%= training.aufwaermen_name %></p>
|
|
<% } else { %>
|
|
<form method="POST" action="/update-training">
|
|
<p><strong>Spiel:</strong>
|
|
<input type="hidden" name="trainingId" value="<%= training.id %>">
|
|
<input type="hidden" name="type" value="aufwaermen">
|
|
<datalist id="spiele">
|
|
<% aufwaermenCandidates.forEach(candidate => { %>
|
|
<option value="<%= candidate.name %>"><%= candidate.name %></option>
|
|
<% }) %>
|
|
</datalist>
|
|
<input list="spiele" id="spielName" name="spielName">
|
|
<button type="submit">Speichern</button>
|
|
</form></p>
|
|
<% } %>
|
|
</div>
|
|
<div id="spiel">
|
|
<h3>Spiel: </h3>
|
|
|
|
<% if (training.spielleiter_name) { %>
|
|
<p><strong>Leitung:</strong>
|
|
<%= training.spielleiter_name %></p>
|
|
<% } else { %>
|
|
<form method="POST" action="/update-leader">
|
|
<p><strong>Leitung:</strong>
|
|
<input type="hidden" name="trainingId" value="<%= training.id %>">
|
|
<input type="hidden" name="type" value="spielleiter">
|
|
<select name="leaderId">
|
|
<% spielleiterCandidates.forEach(candidate => { %>
|
|
<option value="<%= candidate.id %>"><%= candidate.name %> (<%= Math.floor(candidate.weeks_since_last) %> Wochen)</option>
|
|
<% }) %>
|
|
</select>
|
|
<button type="submit">Speichern</button>
|
|
</form></p>
|
|
<% } %>
|
|
|
|
|
|
<% if (training.spiel_name) { %>
|
|
<p><strong>Spiel:</strong>
|
|
<%= training.spiel_name %>
|
|
<% } else { %>
|
|
|
|
<form method="POST" action="/update-training">
|
|
<p><strong>Spiel:</strong>
|
|
<input type="hidden" name="trainingId" value="<%= training.id %>">
|
|
<input type="hidden" name="type" value="spiel">
|
|
<datalist id="spiele">
|
|
<% aufwaermenCandidates.forEach(candidate => { %>
|
|
<option value="<%= candidate.name %>"><%= candidate.name %></option>
|
|
<% }) %>
|
|
</datalist>
|
|
<input list="spiele" id="spielName" name="spielName">
|
|
<button type="submit">Speichern</button>
|
|
</form>
|
|
|
|
<% } %>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div class="tab-pane fade <%= activeTab === 'anwesend' ? 'show active' : '' %>" id="anwesend" role="tabpanel" aria-labelledby="tab-anwesend">
|
|
<h3>Anwesenheit</h3>
|
|
|
|
<!-- Nav tabs -->
|
|
<ul class="nav nav-tabs" id="RiegenTab" role="tablist">
|
|
<% Object.keys(riegen).forEach((riegennummer, index) => { %>
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link <%= activeRiege == riegennummer ? 'active' : '' %>" id="tab-<%= riegennummer %>" data-bs-toggle="tab" data-bs-target="#riege-<%= riegennummer %>" type="button" role="tab" aria-controls="riege-<%= riegennummer %>" aria-selected="<%= index === 0 ? 'true' : 'false' %>">Riege <%= riegennummer %></button>
|
|
</li>
|
|
<% }) %>
|
|
</ul>
|
|
|
|
<!-- Tab panes -->
|
|
<div class="tab-content" id="myTabContent">
|
|
<% Object.keys(riegen).forEach((riegennummer, index) => { %>
|
|
<div class="tab-pane fade <%= activeRiege == riegennummer ? 'show active' : '' %>" id="riege-<%= riegennummer %>" role="tabpanel" aria-labelledby="tab-<%= riegennummer %>">
|
|
<form method="post" action="/anwesend">
|
|
<table>
|
|
|
|
<% riegen[riegennummer].forEach(teilnehmer => { if(teilnehmer.helfer) { %>
|
|
<tr>
|
|
<td>
|
|
<%= teilnehmer.vorname %> <%= teilnehmer.nachname %>
|
|
</td>
|
|
<td>
|
|
<input type="checkbox" name="anw" <%= teilnehmer.anwesend ? 'checked' : '' %> value="<%= teilnehmer.id %>">
|
|
<% }}) %>
|
|
</td>
|
|
</tr>
|
|
|
|
<% riegen[riegennummer].forEach(teilnehmer => { if(!teilnehmer.helfer) { %>
|
|
<tr>
|
|
<td><%= teilnehmer.vorname %> <%= teilnehmer.nachname %> </td><td> <input type="checkbox" name="anw" <%= teilnehmer.anwesend ? 'checked' : '' %> value="<%= teilnehmer.id %>"></td>
|
|
</tr>
|
|
<% }}) %>
|
|
|
|
</table>
|
|
<input type="hidden" name="trainingId" value="<%= training.id %>">
|
|
<input type="hidden" name="riege" value="<%= riegennummer %>">
|
|
<button type="submit">Speichern</button>
|
|
</form>
|
|
</div>
|
|
<% }) %>
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
<% } else { %>
|
|
<p>Kein Training gefunden für das ausgewählte Datum.</p>
|
|
<% } %>
|
|
|
|
<div>
|
|
<form method="GET" action="/training">
|
|
<label for="training-date">Datum wählen:</label>
|
|
<select id="training-date" name="date" onchange="this.form.submit()">
|
|
<% trainingsDates.forEach(date => { %>
|
|
<option value="<%= date.datum %>" <%= selectedDate === date.datum ? 'selected' : '' %>>
|
|
<%= date.datum %>
|
|
</option>
|
|
<% }) %>
|
|
</select>
|
|
</form>
|
|
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|
|
|
|
<%- include('partials/footer') %>
|