<!-- Page Title-->
<style>
.star-rating s:hover,
.star-rating s.active {
color: blue;
}
.star-rating s {
color: blue;
font-size: 50px;
cursor: default;
text-decoration: none;
line-height: 50px;
}
.star-rating {
padding: 2px;
}
.star-rating s:hover:before,
.star-rating s.rated:before,
.star-rating s.active:before {
content: "\2605";
}
.star-rating s:before {
content: "\2606";
}
</style>
{% set queryTerminId = app.request.query.get('terminId')|default(0) %}
{% set mehrereOrte = false %}
{% set mehrereOrteLat = '' %}
{% set mehrereOrteLen = '' %}
{% set seminarreiheStorniert = true %}
{% set tmpTerminId = 0 %}
{% set modalFenster = 0 %}
{% set hinzufuegenAnzeigen = false %}
{% set seminarreiheBereitsAngefangen = false %}
{% set schulungErlauben = true %}
{% if schulung.nurCelsisten == 1 and app.user.userProfil is not defined %}
{% set schulungErlauben = false %}
{% endif %}
{% if schulung.nurCelsisten == 2 and app.user.firmenProfil is not defined %}
{% set schulungErlauben = false %}
{% endif %}
{% if schulung.nurCelsisten == 3 %}
{% set schulungErlauben = false %}
{% if app.user.firmenProfil is defined and app.user.firmenProfil.celseoIntranetId != null %}
{% set schulungErlauben = true %}
{% endif %}
{% endif %}
{% include('/user/firma/_firmenfarben.html.twig') %}
<div class="page-title-overlap pt-4 hintergrundfarbe schriftfarbe">
<div class="container d-lg-flex justify-content-between py-2 py-lg-0">
<div class="pe-lg-10 text-center text-lg-start mx-2 pt-2 my-0">
<h1 class="schriftfarbe">{{ schulung.schulungName }}</h1>
<h5 class="schriftfarbe">{{ schulung.kurzbeschreibung }}</h5>
{#
<div class="row pt-4 align-items-center">
<div class="row">
<div class="col-12 col-md-3">
<div class="star-rating">
{% set maxAnzahlStern = 0 %}
{% for key, stern in sterne %}
{% if maxAnzahlStern < stern %}
{% set maxAnzahlStern = stern %}
{% endif %}
{% set sternAnzeige = '' %}
{% if durchschnitt >= key+0.5 %}
{% set sternAnzeige = '-half' %}
{% endif %}
{% if durchschnitt >= key+1 %}
{% set sternAnzeige = '-filled' %}
{% endif %}
<i class="star-rating-icon ci-star{{ sternAnzeige }} active"></i>
{% endfor %}
<span class="mx-2 text-white small">({{ durchschnitt|number_format(2, ',', '.') }})</span>
</div>
</div>
</div>
</div>
#}
</div>
</div>
</div>
<!-- Shadow box-->
<section class="container mb-3 pb-3">
<div class="bg-light shadow-lg rounded-3 overflow-hidden">
<div class="row flex-lg-row">
{% if schulung.freigabe == 0 %}
<div class="bg-danger text-center pt-3">
<h4 class="text-white">Schulung in Bearbeitung<br><small>Buchung zur Zeit nicht möglich</small></h4>
</div>
{% endif %}
<section class="col-lg-7 pt-lg-4 pb-4 mb-lg-3">
<div class="d-block d-lg-none">
<div class="bg-white h-100 p-4 ms-auto border-start">
{% if schulung.vorstellungslink|length > 0 %}
<div class="iframe-vorschau"></div>
<div class="ratio ratio-16x9">
<iframe class="video-iframe rounded-3" data-src="{{ schulung.vorstellungslink }}" alt="Please accept cookie policy first" data-cookiescript="accepted" data-cookiecategory="targeting" title="video" allowfullscreen></iframe>
</div>
{% if not is_granted('ROLE_MITGLIED') %}
{#<script>
jQuery(function ($) {
if (!Cookiebot.consent.marketing) {
$('.iframe-vorschau').html(`<a href="javascript:Cookiebot.renew()">Für Videos - Bitte Marketing-Cookies aktivieren!</a>`);
}
window.addEventListener('CookiebotOnAccept', function (e) {
if (Cookiebot.consent.marketing) {
$('.iframe-vorschau').remove();
}
}, false);
});
</script>#}
{% endif %}
{% else %}
<img class="rounded-3" src="{{ asset('uploads/schulungen/' ~ schulung.id ~ '/titelbild/' ~ schulung.titelbild ) }}" width="100%" alt="Bild"/>
{% endif %}
</div>
</div>
<!-- Nav tabs-->
<ul class="nav nav-tabs" role="tablist">
<li class="nav-item"><a class="nav-link p-3 p-sm-4 active" href="#details" data-bs-toggle="tab" role="tab">Details</a></li>
<li class="nav-item"><a class="nav-link p-3 p-sm-4" href="#bewertungen" data-bs-toggle="tab" role="tab">Bewertungen</a></li>
<li class="nav-item"><a class="nav-link p-3 p-sm-4" href="#kommentare" data-bs-toggle="tab" role="tab">Fragen</a></li>
</ul>
<div class="tab-content pt-0 p-4">
<!-- Produkt Details tab-->
<div class="tab-pane fade show active" id="details" role="tabpanel">
<div class="row pt-0 pb-0">
<div class="js-editor">
{{ schulung.beschreibung|replace({"<a href": "<a target=_blank href"})|raw }}
</div>
</div>
</div>
<!-- Bewertung tab-->
<div class="tab-pane fade" id="bewertungen" role="tabpanel">
<div id="bewertungen-anzeige-fenster">
{% include('/user/produkt_details/schulung_bewertungen.html.twig') %}
</div>
</div>
<!-- Kommentare tab-->
<div class="tab-pane fade" id="kommentare" role="tabpanel">
<div class="row">
<div class="col-lg-12">
<div id="kommentare-anzeige-fenster">
{% include('/user/produkt_details/schulung_kommentare.html.twig') %}
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Sidebar-->
<aside class="col-lg-5 ps-xl-5">
<hr class="d-lg-none">
<div class="bg-white h-100 p-4 ms-auto border-start">
<div class="accordion accordion-flush" id="licenses">
<div class="d-none d-lg-block">
<a href="javascript:CookieScript.instance.show()" class="video-cookie d-none">Cookie-Banner öffnen</a>
{% if schulung.vorstellungslink|length > 0 %}
<div class="iframe-vorschau"></div>
<div class="ratio ratio-16x9">
<iframe class="video-iframe rounded-3" data-src="{{ schulung.vorstellungslink }}" alt='Video gesperrt. Bitte Targeting-Cookies zulassen.' data-cookiescript="accepted" data-cookiecategory="targeting" title="video" allowfullscreen></iframe>
</div>
{% else %}
<img class="rounded-3" src="{{ asset('uploads/schulungen/' ~ schulung.id ~ '/titelbild/' ~ schulung.titelbild ) }}" width="100%" alt="Bild">
{% endif %}
</div>
<div class="row mt-3 mb-3">
{% if schulung.preis == 0 %}
<div class="col-12 text-center " style="line-height: 1.0;">
{% if schulung.schulungsart.id == 5 %}
<span class="fs-5 text-dark">Preis auf Anfrage</span><br>
{% else %}
<span class="fw-bolder fs-3 text-dark">KOSTENLOS</span><br>
{% endif %}
</div>
{% else %}
{% set mwst = schulung.preis / 100 * schulung.mwst %}
<div class="col-12 text-center" style="line-height: 1.0;">
<span class="fw-bolder fs-4">{{ schulung.preis|number_format(2, ',', '.') }} Euro</span><br>
<span class="small text-muted fw-medium">+ {{ mwst|number_format(2, ',', '.') }} Euro MwSt.</span>
</div>
{% endif %}
</div>
{% set istFavorit = false %}
{% if favoriten != null %}
{% set istFavorit = true %}
{% endif %}
<div class="px-lg-2 m-0 pt-0">
<div class="row">
<div id="warenkorb-hinzugefuegt" class="col-12 p-0 d-none">
<div class="m-0 p-2 rounded bg-success text-white">
<i class="ci-check-circle me-2"></i>
<span class="fw-medium me-auto">Warenkorb wurde aktualisiert</span>
</div>
</div>
<div class="col-4 p-0">
<div class="btn-group favoriten-buttons pt-5">
<span class="">
<a href="{{ path ('user_produkt_favoriten_speichern',{id:schulung.id}) }}"
class="d-block heart-favorite btn-wishlist {% if istFavorit %}d-none{% endif %}"
title="Zu Favoriten hinzufügen"
data-herz-button-art="plus"
data-schulung-id="{{ schulung.id }}"
type="button">
<i class="ci-heart fs-3"></i>
</a>
</span>
<span class="">
<a href="{{ path ('user_produkt_favoriten_loeschen',{id:schulung.id}) }}"
class="d-block heart-favorite btn-wishlist {% if istFavorit == false %}d-none{% endif %}"
title="aus Favoriten entfernen"
data-herz-button-art="minus"
data-schulung-id="{{ schulung.id }}"
type="button">
<i class="mdi mdi-heart text-primary fs-3"></i>
</a>
</span>
</div>
</div>
<div class="col-8 text-end p-0">
<div class="pt-2">
{% if schulung.schulungsart.id != 5 %}
{% set buchungsLink = '' %}
{% if schulung.schulungsTermine|length > 0 %}
{% for termin in schulung.schulungsTermine %}
{% if buchungsLink == '' %}
{% set buchungsLink = termin.seminarLink %}
{% endif %}
{% endfor %}
{% endif %}
{% if schulung.fremdanbieterStatus != 9 %}
{% if is_granted('ROLE_MITGLIED') %}
{% if not offeneBuchung %}
{% if schulung.freigabe == 1 and schulungErlauben %}
{% if is_granted('ROLE_FIRMA') %}
{% if schulung.schulungsart.id == 1 and schulung.preis == 0 %}
<a href="#" class="btn btn-primary btn-shadow d-block modal-warenkorb-hinzufuegen d-none" type="button"
data-termin-id="0"
data-bs-toggle="modal" data-bs-target="#modal-warenkorb">
<i class="ci-cart fs-5 me-2"></i>
Sofort Hinzufügen
</a>
{% else %}
<a href="#" class="btn btn-primary btn-shadow d-block modal-warenkorb-hinzufuegen d-none" type="button"
data-termin-id="0"
data-bs-toggle="modal" data-bs-target="#modal-warenkorb">
<i class="ci-cart fs-5 me-2"></i>
Hinzufügen
</a>
{% endif %}
{% else %}
<a href="#" class="btn btn-primary btn-shadow d-block" type="button"
data-termin-id="0"
data-bs-toggle="modal" data-bs-target="#modal-1">
<i class="ci-cart fs-5 me-2"></i>
Hinzufügen
</a>
{% endif %}
{% else %}
<div class="alert alert-primary d-flex" role="alert">
<div class="alert-icon">
<i class="ci-cart"></i>
</div>
<div>Gesperrt</div>
</div>
{% endif %}
<div class="modal-warenkorb-hinzufuegen-ersatz d-none">
<div class="alert alert-primary d-flex" role="alert">
<div class="alert-icon">
<i class="ci-time"></i>
</div>
<div>Termine abgelaufen</div>
</div>
</div>
<div class="modal-warenkorb-hinzufuegen-storniert d-none">
<div class="alert alert-primary d-flex" role="alert">
<div class="alert-icon">
<i class="ci-close"></i>
</div>
<div>Schulung storniert</div>
</div>
</div>
{% else %}
<a href="{{ path ('user_profil_mein_profil_info', {seite:'warenkorb'}) }}" class="btn btn-primary btn-shadow">
<div class="row text-start">
<div class="col-2">
<i class="ci-cart fs-5 me-2"></i>
</div>
<div class="col-10">
Offene Buchung
</div>
</div>
</a>
{% endif %}
{% else %}
<a href="{{ path ('app_login') }}" class="btn btn-primary btn-shadow d-block" type="button">
<i class="ci-user fs-md me-2"></i>
<small>Login erforderlich</small>
</a>
{% endif %}
{% else %}
{% if not is_granted('ROLE_FIRMA') %}
<a href="{{ buchungsLink }}" target="_blank"
data-counter-link="{{ path ('user_produkt_fremdschulung_counter', {id:schulung.id}) }}"
class="btn btn-primary btn-shadow d-block fremdanbieter-counter-link">
<div class="row text-start">
<div class="col-2 pt-2">
<i class="ci-link fs-5 me-2"></i>
</div>
<div class="col-10">
<small>Direkt buchen bei<br><b>{{ firmenprofil.firmenname }}</b></small>
</div>
</div>
</a>
{% else %}
{% if schulung.freigabe == 1 and schulungErlauben %}
<a href="#" class="btn btn-primary btn-shadow d-block modal-warenkorb-hinzufuegen d-none" type="button"
data-termin-id="0"
data-bs-toggle="modal" data-bs-target="#modal-warenkorb">
<i class="ci-cart fs-5 me-2"></i>
Hinzufügen
</a>
{% else %}
<div class="alert alert-primary d-flex" role="alert">
<div class="alert-icon">
<i class="ci-cart"></i>
</div>
<div>Gesperrt</div>
</div>
{% endif %}
<div class="modal-warenkorb-hinzufuegen-ersatz d-none">
<div class="alert alert-primary d-flex" role="alert">
<div class="alert-icon">
<i class="ci-time"></i>
</div>
<div>Termine abgelaufen</div>
</div>
</div>
{% endif %}
{% endif %}
{% if is_granted('ROLE_FIRMA_BUCHUNGEN') and schulung.freigabe == 1 and schulungErlauben and schulung.nurCelsisten != 4 %}
<div class="mt-3">
<a href="{{ path('produkt_details_empfehlen',{id:schulung.id}) }}"
class="btn btn-outline-primary btn-shadow d-block modal-empfehlung-hinzufuegen pt-2 pb-1"
type="button" data-bs-toggle="modal" data-bs-target="#modal-warenkorb">
<i class="mdi mdi mdi-wallet-giftcard fs-5 me-2"></i>
Weiterempfehlen
</a>
</div>
{% endif %}
{% if (schulung.schulungsart.id == 2 or schulung.schulungsart.id == 3) and schulungBeobachten == null and is_granted('ROLE_MITGLIED') %}
<div class="mt-3">
<a href="{{ path('produkt_details_schulung_beobachten', {id:schulung.id}) }}"
class="btn btn-outline-primary btn-shadow d-block link-schulung-beobachten pt-2 pb-1">
<i class="mdi mdi-robot-outline fs-5 me-2"></i>
Beobachten
</a>
</div>
{% endif %}
{% else %}
{% if is_granted('ROLE_FIRMA_BUCHUNGEN') and is_granted('ROLE_FIRMA_ADMIN') and is_granted('ROLE_FIRMA_ADMIN_SCHULUNG_ANFRAGEN') and schulung.freigabe == 1 and schulungErlauben %}
<a href="{{ path('firmenadmin_schulungsanfragen') }}" class="btn btn-primary btn-shadow d-block inhouse-schulung-hinzufuegen" type="button">
<i class="ci-cart fs-5 me-2"></i>
Hinzufügen
</a>
{% else %}
<div class="alert alert-primary d-flex" role="alert">
<div class="alert-icon">
<i class="ci-cart"></i>
</div>
<div>Gesperrt</div>
</div>
<small>Inhouse-Schulungen können nur von Campus-Admins gebucht werden die die Rechte für Buchungen besitzen.</small>
{% endif %}
{% endif %}
</div>
</div>
</div>
{% if schulungBeobachten != null %}
<div class="mt-3 align-items-center text-end d-block">
<i class="mdi mdi-robot-outline fs-5 me-2"></i>
Unter Beobachtung
<a href="{{ path('produkt_details_schulung_beobachten_loeschen', {id:schulung.id}) }}"
class="btn btn-outline-primary link-schulung-beobachten-loeschen p-0 ps-1 pe-1 ms-3">
<i class="mdi mdi-delete-outline"></i>
</a>
</div>
{% endif %}
{% if schulung.freigabe == 1 and schulungErlauben and empfehlung != null %}
<div class="mt-2 text-center small">
<b class="text-info">Diese Schulung wurde dir empfohlen von {{ empfehlung.vonUserName }}</b><br>
{% if empfehlung.terminIds != null and not is_granted('ROLE_FIRMA_BUCHUNGEN') %}
Die Empfehlung betrifft nur bestimmte Termine.
{% if schulung.schulungsTermine|length > 1 %}
Gehe auf <b>weitere Termine</b> und wähle dort einen passenden Termine aus.
{% endif %}
{% endif %}
</div>
{% endif %}
<!-- Abstand zum Button erhöhen -->
<div class="pt-4"></div>
<div class="row border-top">
<div class="col-3 p-0 pt-3 pb-3">
Seminarart:
</div>
<div class="col-9 text-end p-0 pt-3 pb-3">
{{ schulung.schulungsart.name }}
</div>
</div>
{% if schulung.schulungsTermine|length > 0 %}
{% set terminGefunden = 0 %}
{% set anzahlAktiveTermine = 0 %}
{% set videoGefunden = 0 %}
{% if schulung.schulungsart.id == 4 %}
{% if date(schulung.seminarreiheStartdatum) < date('+0seconds', 'Europe/Berlin') %}
{% set seminarreiheBereitsAngefangen = true %}
{% endif %}
<div class="row border-top pt-3 pb-3">
<div class="col-sm-5 p-0">
Start der Reihe:
</div>
<div class="col-sm-7 text-sm-end p-0">
{{ schulung.seminarreiheStartdatum|date("d.m.Y - H:i") }} Uhr<br>
</div>
{% if allgemeinerAnmeldeschluss != null %}
<div class="col-sm-3 mt-sm-0 mt-3 p-0 pt-1">
Anmeldeschluss:
</div>
<div class="col-sm-9 text-sm-end p-0 pt-1">
{{ allgemeinerAnmeldeschluss|date("d.m.Y") }}
</div>
{% endif %}
</div>
{% else %}
{% set seminarreiheStorniert = false %}
{% endif %}
{% if schulung.schulungsart.id == 1 or schulung.schulungsart.id == 4 %}
<div class="row border-top">
<div class="col-12 p-0 pt-3 fw-bolder">
In der Seminarreihe enthalten:
</div>
</div>
{% endif %}
{% set videosAusblenden = '' %}
{% set anzahlVideos = 0 %}
{% set anzahlVideosSekunden = 0 %}
{% set anzahlGesamtVideos = schulung.schulungsTermine|length %}
{% for termin in schulung.schulungsTermine|sort((a, b) => a.von <=> b.von) %}
{% set terminAnzeigen = 0 %}
{% if schulung.schulungsart.id == 1 or schulung.schulungsart.id == 4 %}
{% if schulung.schulungsart.id == 1 %}
{% set anzahlVideos = anzahlVideos + 1 %}
{% set hinzufuegenAnzeigen = true %}
{# OnDemand Videos #}
{% if terminGefunden == 0 %}
{% set tmpTerminId = termin.id %}
{% endif %}
{% set terminGefunden = terminGefunden + 1 %}
{% if anzahlVideos == 3 and anzahlGesamtVideos > 4 %}
{% set videosAusblenden = 'd-none' %}
<div class="row border-top pb-3 videos-einblenden-div">
<div class="col-12 p-0 pt-4 pb-3 text-center">
Weitere {{ anzahlGesamtVideos - 2 }} Videos<br>
<button class="btn btn-sm btn-outline-primary fw-bolder videos-einblenden-button" type="button">Alle {{ anzahlGesamtVideos }} Videotitel
einblenden
</button>
</div>
</div>
{% endif %}
<div class="row border-top pb-3 video-titel {{ videosAusblenden }}">
<div class="col-5 p-0 pt-2 fw-bolder">
Video {{ terminGefunden }}
</div>
<div class="col-7 p-0 pt-2 text-end">
<i class="mdi mdi-filmstrip me-1"></i>
{% set dauerSekunden = termin.dauer %}
{% set anzahlVideosSekunden = anzahlVideosSekunden + dauerSekunden %}
{% set dauerStunden = dauerSekunden/60/60 %}
{% set dauerStunden = dauerStunden|round(0, 'floor') %}
{% set restDauer = dauerSekunden-(dauerStunden*60*60) %}
{% set dauerMinuten = restDauer/60 %}
{% set dauerMinuten = dauerMinuten|round(0, 'floor') %}
{% set dauerSekunden = restDauer-(dauerMinuten*60) %}
{{ dauerStunden|strpad(2,'0') }}:{{ dauerMinuten|strpad(2,'0') }}:{{ dauerSekunden|strpad(2,'0') }}<br>
{% if date(termin.von) <= date('+0seconds', 'Europe/Berlin') %}
<small>sofort verfügbar</small>
{% else %}
start: {{ termin.von|date("d.m.Y") }}
{% endif %}
</div>
{% if termin.ort|length > 0 %}
<div class="col-12 p-0 pt-1 text-muted">
{{ termin.ort| nl2br }}
</div>
{% endif %}
</div>
{% endif %}
{% if schulung.schulungsart.id == 4 %}
{% set seminart = 0 %}
{% if terminGefunden == 0 %}
{% set tmpTerminId = termin.id %}
{% endif %}
{% set terminGefunden = 1 %}
{# Seminarreihe #}
<div class="row border-top pb-3 termine-div termin-id{{ termin.id }}">
<div class="col-12 p-0 pt-3 pb-0 text-muted fw-bold">
<div class="d-flex justify-content-between">
{% for schulungsart in schulungsarten %}
{% if schulungsart.id == termin.seminarreiheSchulungsart %}
{{ schulungsart.name }}
{% set seminart = termin.seminarreiheSchulungsart %}
{% endif %}
{% endfor %}
{% if termin.status == 1 %}
<span class="text-danger">Termin storniert</span>
{% else %}
{% set seminarreiheStorniert = false %}
{% endif %}
</div>
</div>
{% if seminart == 1 %}
{% set videoGefunden = videoGefunden + 1 %}
<div class="col-sm-4 p-0 pt-sm-3">
Video {{ videoGefunden }}
</div>
<div class="col-sm-8 p-0 pt-sm-3 text-sm-end">
{% if date(termin.von) <= date('+0seconds', 'Europe/Berlin') %}
sofort verfügbar
{% else %}
start: {{ termin.von|date("d.m.Y") }}
{% endif %}
</div>
<div class="col-sm-5 mt-3 mt-sm-0 p-0">
Länge:
</div>
<div class="col-sm-7 p-0 text-sm-end">
{% set dauerSekunden = termin.dauer %}
{% set dauerStunden = dauerSekunden/60/60 %}
{% set dauerStunden = dauerStunden|round(0, 'floor') %}
{% set restDauer = dauerSekunden-(dauerStunden*60*60) %}
{% set dauerMinuten = restDauer/60 %}
{% set dauerMinuten = dauerMinuten|round(0, 'floor') %}
{% set dauerSekunden = restDauer-(dauerMinuten*60) %}
{{ dauerStunden|strpad(2,'0') }}:{{ dauerMinuten|strpad(2,'0') }}:{{ dauerSekunden|strpad(2,'0') }}
</div>
{% if termin.ort|length > 0 %}
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Info:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.ort| nl2br }}
</div>
{% endif %}
{% else %}
<div class="col-sm-5 p-0 pt-1">
Start:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.von|date("d.m.Y - H:i") }} Uhr<br>
</div>
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Ende:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.bis|date("d.m.Y - H:i") }} Uhr<br>
</div>
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
verfügbare Plätze:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{% set terminWaehlen = true %}
{% if termin.maxPlaetze == 0 and termin.nochPlaetzeFrei == 0 %}
{% set hinzufuegenAnzeigen = true %}
kein Limit
{% else %}
{% for freierPlatz in freiePlaetze %}
{% if freierPlatz.terminId == termin.id %}
{% if freierPlatz.freiePlaetze == 0 %}
{% set hinzufuegenAnzeigen = true %}
kein Limit<br>
{% else %}
{% if freierPlatz.freiePlaetze == -1 %}
{% set terminWaehlen = false %}
0 {% if termin.maxPlaetze > 0 %} von {{ termin.maxPlaetze }}{% endif %}
{% else %}
{% set hinzufuegenAnzeigen = true %}
{{ freierPlatz.freiePlaetze }}{% if termin.maxPlaetze > 0 %} von {{ termin.maxPlaetze }}{% endif %}<br>
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
</div>
{% if termin.dozentUser != null or termin.dozent|length > 0 %}
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Dozent:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{% if termin.dozentUser != null %}
<a href="{{ path('user_dozent', {id:termin.dozentUser.id}) }}">{{ termin.dozent }}</a>
{% else %}
{{ termin.dozent }}
{% endif %}
</div>
{% endif %}
{% if termin.ort|length > 0 %}
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Ort:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.ort| nl2br }}
</div>
{% endif %}
{% if termin.webtool == 1 %}
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Plattform:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
Campus GoTo-Webinar
</div>
{% endif %}
{% if termin.webtool == 2 %}
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Plattform:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
Externer Link per E-Mail
</div>
{% endif %}
{% endif %}
</div>
{% endif %}
{% else %}
{% if termin.status == 0 %}
{% if queryTerminId == 0 %}
{% if termin.anmeldeschluss == null %}
{% if date(termin.bis) >= date('+0seconds', 'Europe/Berlin') %}
{% set terminAnzeigen = 1 %}
{% endif %}
{% else %}
{% if termin.anmeldeschluss >= date('-1days', 'Europe/Berlin') %}
{% set terminAnzeigen = 1 %}
{% endif %}
{% endif %}
{% if terminAnzeigen == 1 %}
{% if termin.maxPlaetze == 0 and termin.nochPlaetzeFrei == 0 %}
{% set terminAnzeigen = 1 %}
{% else %}
{% for freierPlatz in freiePlaetze %}
{% if freierPlatz.terminId == termin.id %}
{% if freierPlatz.freiePlaetze == 0 %}
{% set terminAnzeigen = 1 %}
{% else %}
{% if freierPlatz.freiePlaetze == -1 %}
{% set terminAnzeigen = 0 %}
{% else %}
{% set terminAnzeigen = 1 %}
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endif %}
{% else %}
{# queryTerminId wurde von einer anderen Seite hierher übergeben. Termin wird dann angezeigt #}
{% if termin.id == queryTerminId %}
{% set terminAnzeigen = 1 %}
{% endif %}
{% endif %}
{% endif %}
{% if terminAnzeigen == 1 %}
{% set hinzufuegenAnzeigen = true %}
{% set anzahlAktiveTermine = anzahlAktiveTermine + 1 %}
{% if terminGefunden == 0 %}
{% set tmpTerminId = termin.id %}
{% endif %}
<div class="row border-top pb-3 termine-div termin-id{{ termin.id }} {% if terminGefunden == 1 %}d-none{% endif %}">
<div class="col-sm-5 p-0 pt-3 fw-bold">
Termin-Info:
</div>
<div class="col-sm-7 text-sm-end p-0 pt-sm-3">
{% if schulung.schulungsTermine|length > 1 %}
<a class="lade-modal-fenster" title="alle Termine anzeigen"
href="{{ path ('produkt_details_termine',{id:schulung.id}) }}"
data-bs-toggle="modal" data-bs-target="#scrollable-modal">
<i class="mdi mdi-clock me-1"></i>weitere Termine
</a>
{% endif %}
</div>
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Start:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.von|date("d.m.Y - H:i") }} Uhr<br>
</div>
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Ende:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.bis|date("d.m.Y - H:i") }} Uhr<br>
</div>
{% if termin.anmeldeschluss != null %}
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Anmeldeschluss:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.anmeldeschluss|date("d.m.Y") }}
</div>
{% endif %}
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
verfügbare Plätze:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{% set terminWaehlen = true %}
{% if termin.maxPlaetze == 0 and termin.nochPlaetzeFrei == 0 %}
kein Limit
{% else %}
{% for freierPlatz in freiePlaetze %}
{% if freierPlatz.terminId == termin.id %}
{% if freierPlatz.freiePlaetze == 0 %}
kein Limit<br>
{% else %}
{% if freierPlatz.freiePlaetze == -1 %}
{% set terminWaehlen = false %}
<span class="text-danger">Ausgebucht</span>
{% else %}
{{ freierPlatz.freiePlaetze }}{% if termin.maxPlaetze > 0 %} von {{ termin.maxPlaetze }}{% endif %}<br>
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
</div>
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Dozent:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{% if termin.dozentUser != null %}
<a href="{{ path('user_dozent', {id:termin.dozentUser.id}) }}">{{ termin.dozent }}</a>
{% else %}
{{ termin.dozent }}
{% endif %}
</div>
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Ort:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ termin.ort| nl2br }}
{% for entfernung in entfernungen %}
{% if entfernung.terminId == termin.id %}
{% set lat = 0 %}
{% set len = 0 %}
{% if app.user.userProfil.googleLat != null %}
{% set lat = app.user.userProfil.googleLat %}
{% set len = app.user.userProfil.googleLen %}
{% else %}
{% if app.user.firmenProfil is defined and app.user.firmenProfil.googleLat != null %}
{% set lat = app.user.firmenProfil.googleLat %}
{% set len = app.user.firmenProfil.googleLen %}
{% endif %}
{% endif %}
{% if lat != 0 %}
{% if mehrereOrteLat != '' and mehrereOrteLat != lat and mehrereOrteLen != len %}
{% set mehrereOrte = true %}
xxx
{% endif %}
{% set mehrereOrteLat = termin.googleLat %}
{% set mehrereOrteLen = termin.googleLen %}
<br>
<span class="text-muted">({{ entfernung.km }} km)</span>
<a href="https://www.google.com/maps/dir/?api=1&origin={{ lat }},{{ len }}&destination={{ termin.googleLat }},{{ termin.googleLen }}&travelmode=car"
target="_blank" title="Google-Maps öffnen">
<i class="mdi mdi-google-maps fs-5"></i>
</a>
{% endif %}
{% endif %}
{% endfor %}
<div class="mt-2 weitereOrteButton d-none">
<a class="lade-modal-fenster" title="alle Termine anzeigen"
href="{{ path ('produkt_details_termine',{id:schulung.id}) }}"
data-bs-toggle="modal" data-bs-target="#scrollable-modal">
<i class="mdi mdi-clock me-1"></i>weitere Orte Vorhanden
</a>
</div>
</div>
</div>
{% set terminGefunden = 1 %}
{% endif %}
{% endif %}
{% endfor %}
{% if terminGefunden == 0 %}
<div class="row mb-3">
<div class="col-12 text-end p-0">
{% if schulung.schulungsTermine|length > 1 %}
<a class="lade-modal-fenster" title="alle Termine anzeigen"
href="{{ path ('produkt_details_termine',{id:schulung.id}) }}"
data-bs-toggle="modal" data-bs-target="#scrollable-modal">
<i class="mdi mdi-clock me-1"></i>Termine
</a>
{% endif %}
</div>
</div>
{% endif %}
{% if schulung.schulungsart.id == 1 %}
{% set dauerStunden = anzahlVideosSekunden/60/60 %}
{% set dauerStunden = dauerStunden|round(0, 'floor') %}
{% set restDauer = anzahlVideosSekunden-(dauerStunden*60*60) %}
{% set dauerMinuten = restDauer/60 %}
{% set dauerMinuten = dauerMinuten|round(0, 'floor') %}
{% set dauerSekunden = restDauer-(dauerMinuten*60) %}
<div class="row border-top pb-3 pt-3">
<div class="col-12 p-0">
Ges. Video-Länge:
<b>{{ dauerStunden|strpad(2,'0') }}:{{ dauerMinuten|strpad(2,'0') }}:{{ dauerSekunden|strpad(2,'0') }}</b>
</div>
</div>
{% endif %}
{% endif %}
{% if schulung.kursinhalt != null %}
<div class="row border-top pb-3">
<div class="col-sm-5 mt-3 mt-sm-0 p-0 pt-1">
Kursinhalt:
</div>
<div class="col-sm-7 p-0 pt-1 text-sm-end">
{{ schulung.kursinhalt }}
</div>
</div>
{% endif %}
<div class="row border-top pb-3">
<div class="col-sm-3 mt-3 mt-sm-0 p-0 pt-1">
Thema:
</div>
<div class="col-sm-9 p-0 pt-1 text-sm-end">
{% set counter = 0 %}
{% for meineThemengebiete in meine_themengebiete %}
{% for themengebiet in themengebiete %}
{% if meineThemengebiete == themengebiet.id %}
{% if counter != 0 %},{% endif %}
{{ themengebiet.thema }}
{% set counter = counter + 1 %}
{% endif %}
{% endfor %}
{% endfor %}
</div>
</div>
<div class="row border-top pb-3">
<div class="col-sm-3 mt-3 mt-sm-0 p-0 pt-1">
Zielgruppen:
</div>
<div class="col-sm-9 p-0 pt-1 text-sm-end">
{% set counter = 0 %}
{% for meineZielgruppen in meine_zielgruppen %}
{% for zielgruppe in zielgruppen %}
{% if meineZielgruppen == zielgruppe.id %}
{% if counter != 0 %}•{% endif %}
{{ zielgruppe.name }}
{% set counter = counter + 1 %}
{% endif %}
{% endfor %}
{% endfor %}
</div>
</div>
<div class="row border-top">
<div class="col-12 p-0 pt-3 text-center">
<h6 class="pt-2 mb-3">{{ firmenprofil.firmenname }}</h6>
{% if firmenprofil.logo|length > 0 %}
<img src="{{ asset('uploads/firmen/logo/' ~ firmenprofil.id ~ '/'~ firmenprofil.logo ) }}" class="shadow-sm" style="max-height: 100px">
{% endif %}
<div class="mt-4">
{% if firmenprofil.webseite != null %}
<a href="{{ firmenprofil.webseite }}" target="_blank" class="btn-social bs-pinterest bs-outline me-3 fs-4">
<i class="ci-globe"></i>
</a>
{% endif %}
{% if firmenprofil.instagram != null %}
<a href="{{ firmenprofil.instagram }}" target="_blank" class="btn-social bs-instagram bs-outline me-3 fs-4">
<i class="ci-instagram"></i>
</a>
{% endif %}
{% if firmenprofil.facebook != null %}
<a href="{{ firmenprofil.facebook }}" target="_blank" class="btn-social bs-facebook bs-outline me-3 fs-4">
<i class="ci-facebook"></i>
</a>
{% endif %}
{% if firmenprofil.youtube != null %}
<a href="{{ firmenprofil.youtube }}" target="_blank" class="btn-social bs-youtube bs-outline me-3 fs-4">
<i class="ci-youtube"></i>
</a>
{% endif %}
</div>
</div>
</div>
</div>
</div>
</div>
</aside>
</div>
<div class="card px-lg-2 border-0 mt-4 ms-2 me-2">
<div class="card-body px-1 pt-4 pb-4">
<h3 class="text-center pb-3">Weitere Schulungsvorschläge</h3>
{% set anzahlVorschlaege = 0 %}
{% if vorschlagRang|length > 0 %}
<div class="row pt-2 mx-n2">
{% for rang in vorschlagRang %}
{% for schulung in vorschlaege %}
{% if rang.schulungsId == schulung.id %}
{% set anzahlVorschlaege = anzahlVorschlaege + 1 %}
<div class="col-lg-4 col-md-6 px-2 mb-grid-gutter weitere-Vorschlaege {% if anzahlVorschlaege > 6 %}d-none{% endif %}">
<div class="card product-card-alt">
<div class="product-thumb">
<a class="product-thumb-overlay"
href="{{ path ('produkt_details',{id:schulung.id}) }}{% if schulung.nurCelsisten == 4 %}?guid={{ schulung.importFehler }}{% endif %}"></a>
{% if schulung.importId == 0 %}
<img src="{{ asset('uploads/schulungen/' ~ schulung.id ~ '/titelbild/' ~ schulung.titelbild ) }}" loading="lazy">
{% else %}
<div class="ratio ratio-16x9">
<div style="background-image: url('{{ asset('uploads/schulungen/' ~ schulung.id ~ '/titelbild/' ~ schulung.titelbild) }}'); width: 100%; background-size: cover; background-repeat: no-repeat;"></div>
</div>
{% endif %}
<i class="mdi mdi-heart fs-1 text-primary heart-favorite {% if istFavorit == false %}d-none{% endif %}"></i>
</div>
<div class="card-body">
<div class="d-flex flex-wrap justify-content-between align-items-start pb-2">
<div class="text-muted fs-xs me-1">
{% for vorschlaegeFirmenprofil in vorschlaegeFirmen %}
{% if schulung.erstellerFirmenId == vorschlaegeFirmenprofil.id %}
<a class="product-meta fw-medium"
href="#">{{ vorschlaegeFirmenprofil.firmenname }}</a>
{% endif %}
{% endfor %}
</div>
{% set anzahlSterneVergabe = 0 %}
{% set SterneGesamt = 0 %}
{% set SterneErgebnis = 0 %}
{% for bewertung in schulung.bewertungen %}
{% set anzahlSterneVergabe = anzahlSterneVergabe + 1 %}
{% set SterneGesamt = SterneGesamt + bewertung.sterne %}
{% endfor %}
{% if anzahlSterneVergabe != 0 %}
{% set SterneErgebnis = SterneGesamt / anzahlSterneVergabe %}
{% endif %}
<div class="star-rating">
<i class="star-rating-icon ci-star{% if SterneErgebnis >= 1 %}-filled active{% endif %}"></i>
{% for i in 1..4 %}
{% set stern = '' %}
{% if SterneErgebnis >= i + 0.5 %}
{% set stern = '-half active' %}
{% endif %}
{% if SterneErgebnis >= i + 1 %}
{% set stern = '-filled active' %}
{% endif %}
<i class="star-rating-icon ci-star{{ stern }}"></i>
{% endfor %}
</div>
</div>
<h3 class="product-title fs-sm mb-2 fw-bold">
<a href="{{ path ('produkt_details',{id:schulung.id}) }}{% if schulung.nurCelsisten == 4 %}?guid={{ schulung.importFehler }}{% endif %}">{{ schulung.schulungName }}</a>
</h3>
<div class="fs-sm me-2">{{ schulung.kurzbeschreibung|u.truncate(130, '...',false) }}</div>
<div class="d-flex flex-wrap justify-content-between align-items-center mt-3">
<div class="fs-sm me-2 text-muted">{{ schulung.schulungsart.name }}</div>
{% if schulung.schulungsTermine|length > 0 %}
{% set terminGefunden = 0 %}
{% for termin in schulung.schulungsTermine|sort((a, b) => a.von <=> b.von) %}
{% if terminGefunden == 0 %}
{% set terminAnzeigen = 0 %}
{% if termin.anmeldeschluss == null %}
{% if date(termin.von) >= date('+0seconds', 'Europe/Berlin') %}
{% set terminAnzeigen = 1 %}
{% endif %}
{% else %}
{% if termin.anmeldeschluss >= date('-1days', 'Europe/Berlin') %}
{% set terminAnzeigen = 1 %}
{% endif %}
{% endif %}
{% if terminAnzeigen == 1 %}
<div class="text-muted rounded-1 py-1 px-2 small"><i
class="mdi mdi-clock-outline me-1"></i>{{ termin.von|date("d.m.Y") }}</div>
{% set terminGefunden = 1 %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
</div>
</div>
</div>
<div class="d-md-none border-top"></div>
</div>
{% if anzahlVorschlaege == 6 and vorschlagRang|length > 6 %}
<div class="text-center">
<div class="btn btn-outline-primary weitere-vorschlaege-anzeigen" style="cursor: pointer">
mehr Vorschläge anzeigen
<i class="ci-arrow-right fs-ms ms-1"></i>
</div>
</div>
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
</div>
{% endif %}
</div>
</div>
</div>
</section>
<!-- Product description + Reviews + Comments-->
<script>
jQuery(function ($) {
let tmpTerminId = {{ tmpTerminId }};
$('.modal-warenkorb-hinzufuegen').attr('data-termin-id', tmpTerminId);
{% if hinzufuegenAnzeigen and not seminarreiheBereitsAngefangen and not seminarreiheStorniert %}
$('.modal-warenkorb-hinzufuegen').removeClass('d-none');
{% else %}
{% if seminarreiheStorniert %}
$('.modal-warenkorb-hinzufuegen-storniert').removeClass('d-none');
{% else %}
$('.modal-warenkorb-hinzufuegen-ersatz').removeClass('d-none');
{% endif %}
$('.modal-empfehlung-hinzufuegen').addClass('d-none');
{% endif %}
{% if mehrereOrte %}
$('.weitereOrteButton').removeClass('d-none');
{% endif %}
$('.videos-einblenden-button').on('click', function (event) {
event.preventDefault();
$('.videos-einblenden-div').addClass('d-none');
$('.video-titel').removeClass('d-none');
});
$('.weitere-vorschlaege-anzeigen').on('click', function (event) {
$('.weitere-vorschlaege-anzeigen').addClass('d-none');
$('.weitere-Vorschlaege').removeClass('d-none');
});
if(!CookieScript.instance.currentState().categories.includes('targeting')) {
$('.video-cookie').removeClass('d-none');
}
});
</script>