Jottyfan
2022-10-22 19:19:17 +02:00
parent 796624eebd
commit 2126f4de62
7 changed files with 188 additions and 60 deletions

View File

@ -185,23 +185,33 @@ body {
padding: 8px;
margin-right: 12px;
border-radius: 6px;
min-width: 32px;
min-width: 30px;
min-height: 30px;
text-align: center;
}
.framed-green {
background: linear-gradient(to bottom right, lime, darkgreen);
color: white;
border: 1px solid green;
}
.framed-red {
background: linear-gradient(to bottom right, red, darkred);
color: white;
border: 1px solid red;
}
.framed-orange {
background: linear-gradient(to bottom right, orange, #bf6c06);
color: white;
border: 1px solid orange;
}
.framed-white {
background: white;
color: black;
border: 1px solid black;
}
.nomaxwidth {

View File

@ -113,12 +113,12 @@
<label for="inputAccept" class="col-sm-2 col-form-label">Status</label>
<div class="col-sm-10">
<div class="form-group">
<input type="radio" class="btn-check" id="accept1" name="accept1" value="" th:field="*{accept}" />
<label class="btn btn-outline-primary" for="accept1"><i class="fas fa-question"></i>&nbsp;offen</label>
<input type="radio" class="btn-check" id="accept2" name="accept2" value="true" th:field="*{accept}" />
<label class="btn btn-outline-success" for="accept2"><i class="fas fa-check"></i>&nbsp;bestätigt</label>
<input type="radio" class="btn-check" id="accept3" name="accept3" value="false" th:field="*{accept}" />
<label class="btn btn-outline-danger" for="accept3"><i class="fas fa-ban"></i>&nbsp;abgelehnt</label>
<input type="radio" class="btn-check" id="accept1" name="accept1" value="" th:field="*{accept}" />
<label class="btn btn-outline-primary" for="accept1"><i class="fas fa-question"></i>&nbsp;offen</label>
<input type="radio" class="btn-check" id="accept2" name="accept2" value="true" th:field="*{accept}" />
<label class="btn btn-outline-success" for="accept2"><i class="fas fa-check"></i>&nbsp;bestätigt</label>
<input type="radio" class="btn-check" id="accept3" name="accept3" value="false" th:field="*{accept}" />
<label class="btn btn-outline-danger" for="accept3"><i class="fas fa-ban"></i>&nbsp;abgelehnt</label>
</div>
</div>
</div>

View File

@ -14,70 +14,113 @@
</header>
<content>
<div class="mainpage">
<script type="text/javascript">
function mark(e) {
$(e).css("background", "orange");
}
</script>
<div class="accordion" id="acc">
<div class="accordion-item" th:each="b : ${mybookings}">
<h2 class="accordion-header" th:id="'acc-head-' + ${b.pk}">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" th:data-bs-target="'#acc-body-' + ${b.pk}" aria-expanded="true"
th:aria-controls="'#acc-body-' + ${b.pk}">
<i class="fas fa-check framed framed-green" th:if="${b.accept}"></i>
<i class="fas fa-ban framed framed-red" th:if="${b.accept} == false"></i>
<i class="fas fa-question framed framed-orange" th:if="${b.accept} == null"></i>
<span th:text="${b.forename + ' ' + b.surname + ' an ' + b.campName + ' ' + #numbers.formatInteger(b.year, 4)}" style="font-weight: bolder"></span>&nbsp;in&nbsp;<span
<i class="fas fa-check framed framed-green" th:if="${b.accept}"></i> <i class="fas fa-ban framed framed-red" th:if="${b.accept} == false"></i> <i
class="fas fa-question framed framed-orange" th:if="${b.accept} == null"></i> <span
th:text="${b.forename + ' ' + b.surname + ' an ' + b.campName + ' ' + #numbers.formatInteger(b.year, 4)}" style="font-weight: bolder"></span>&nbsp;in&nbsp;<span
th:text="${b.locationName}"></span>
</button>
</h2>
<div th:id="'acc-body-' + ${b.pk}" class="accordion-collapse collapse" th:aria-labelledby="'acc-head-' + ${b.pk}">
<div class="accordion-body">
<div class="container">
<div class="row">
<div class="col-sm-12">
<h3>Freizeitdaten</h3>
<div class="card">
<div class="card-header">Freizeitdaten</div>
<div class="card-body">
<div class="container">
<div class="row">
<div class="col-sm-2">Ort:</div>
<div class="col-sm-10">
<a th:href="${b.url}" target="_blank" th:text="${b.locationName}"></a>
</div>
<div class="col-sm-2">Zeit:</div>
<div class="col-sm-10">
<span th:text="${#temporals.format(b.arrive, 'dd.MM.') + ' - ' + #temporals.format(b.depart, 'dd.MM.yyyy')}" th:if="${b.arrive != null and b.depart != null}"></span>
</div>
<div class="col-sm-2">Preis:</div>
<div class="col-sm-10" th:text="${b.price}"></div>
<div class="col-sm-2">Ferien:</div>
<div class="col-sm-10" th:text="${b.countries}"></div>
</div>
</div>
<div class="col-sm-4">Ort:</div>
<div class="col-sm-8">
<a th:href="${b.url}" target="_blank" th:text="${b.locationName}"></a>
</div>
<div class="col-sm-4">Zeit:</div>
<div class="col-sm-8">
<span th:text="${#temporals.format(b.arrive, 'dd.MM.') + ' - ' + #temporals.format(b.depart, 'dd.MM.yyyy')}" th:if="${b.arrive != null and b.depart != null}"></span>
</div>
<div class="col-sm-4">Preis:</div>
<div class="col-sm-8" th:text="${b.price} + ' €'"></div>
<div class="col-sm-4">Ferien:</div>
<div class="col-sm-8" th:text="${b.countries}"></div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-sm-12">
<h3>Teilnehmerdaten</h3>
</div>
<div class="col-sm-4">Rolle:</div>
<span class="col-sm-8" th:text="${b.camprole}"></span>
<div class="col-sm-4">ID:</div>
<span class="col-sm-8" th:text="${b.pk}"></span>
<div class="col-sm-4">Vorname:</div>
<span class="col-sm-8" th:text="${b.forename}"></span>
<div class="col-sm-4">Nachname:</div>
<span class="col-sm-8" th:text="${b.surname}"></span>
<div class="col-sm-4">Straße:</div>
<span class="col-sm-8" th:text="${b.street}"></span>
<div class="col-sm-4">PLZ:</div>
<span class="col-sm-8" th:text="${b.zip}"></span>
<div class="col-sm-4">Ort:</div>
<span class="col-sm-8" th:text="${b.city}"></span>
<div class="col-sm-4">Telefon:</div>
<span class="col-sm-8" th:text="${b.phone}"></span>
<div class="col-sm-4">Geburtstag:</div>
<span class="col-sm-8" th:text="${#temporals.format(b.birthdate, 'dd.MM.yyyy')}"></span>
<div class="col-sm-4">E-Mail:</div>
<span class="col-sm-8" th:text="${b.email}"></span>
<div class="col-sm-4">Geschlecht:</div>
<span class="col-sm-8" th:text="${b.sex}"></span>
<div class="col-sm-4">Foto-Einverständnis:</div>
<span class="col-sm-8" th:text="${b.consentCatalogPhoto}"></span>
<div class="col-sm-4">Kommentar:</div>
<span class="col-sm-8" th:text="${b.comment}"></span>
<div class="card">
<div class="card-header">Teilnehmerdaten</div>
<div class="card-body">
<form th:action="@{/dashboard/update/}" th:object="${b}" method="post">
<input type="hidden" th:value="*{pk}" name="pk" />
<div class="container">
<div class="row mb-2">
<div class="col-sm-2">Rolle:</div>
<span class="col-sm-10"> <span th:if="${b.isTeacher()}">Mitarbeiter</span> <span th:if="${b.isStudent()}">Teilnehmer</span> <span th:if="${b.isDirector()}">Leiter</span> <span
th:if="${b.isFeeder()}">Küchenteam</span>
</span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Geschlecht:</div>
<span class="col-sm-10">
<span th:if="${b.isMale()}">männlich</span>
<span th:if="${b.isFemale()}">weiblich</span>
<i class="fas fa-info framed framed-white" title="Änderungen am Geschlecht wirken sich auch auf den Anmeldestatus aus. Wenn Du Dein Geschlecht ändern möchtest, lösche bitte diese Anmeldung und leg eine neue an. Dann wird neu entschieden, ob noch ein Platz frei ist."></i>
</span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Vorname:</div>
<span class="col-sm-10"><input type="text" class="form-control" th:value="*{forename}" name="forename" onchange="mark(this)" /></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Nachname:</div>
<span class="col-sm-10"><input type="text" class="form-control" th:value="*{surname}" name="surname" onchange="mark(this)" /></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Straße:</div>
<span class="col-sm-10"><input type="text" class="form-control" th:value="*{street}" name="street" onchange="mark(this)" /></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">PLZ:</div>
<span class="col-sm-10"><input type="text" class="form-control" th:value="*{zip}" name="zip" onchange="mark(this)" /></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Ort:</div>
<span class="col-sm-10"><input type="text" class="form-control" th:value="*{city}" name="city" onchange="mark(this)" /></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Telefon:</div>
<span class="col-sm-10"><input type="text" class="form-control" th:value="*{phone}" name="phone" onchange="mark(this)" /></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Geburtstag:</div>
<span class="col-sm-10" th:text="${#temporals.format(b.birthdate, 'dd.MM.yyyy')}"></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">E-Mail:</div>
<span class="col-sm-10"><input type="text" class="form-control" th:value="*{email}" name="email" onchange="mark(this)" /></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Foto-Einverständnis:</div>
<span class="col-sm-10" th:text="${b.consentCatalogPhoto ? 'ja' : 'nein'}"></span>
</div>
<div class="row mb-2">
<div class="col-sm-2">Kommentar:</div>
<span class="col-sm-10"><textarea class="form-control" th:text="*{comment}" name="comment" onchange="mark(this)"></textarea></span>
</div>
<div class="row mb-2">
<div class="col-sm-2"></div>
<div class="col-sm-10">
<input type="submit" class="btn btn-primary" value="Änderungen übernehmen" />
</div>
</div>
</div>
</form>
</div>
</div>
<div class="alert alert-primary" th:if="${b.created != null}">