{% extends "@StartPlatzStyleBundle/Bootstrap4/base.homepage.with-sections.html.twig" %}
{% import "@StartPlatzEventBundle/Admin/_macros.bs4.html.twig" as layout %}
{% set currentPath = app.request.get('_route') %}
{% block metaData %}
{# Optimize meta description for archived events #}
{% if event.status == 'archive' %}
{% set archivePrefix = 'Vergangene Veranstaltung vom ' ~ event.startDate|date('d.m.Y') ~ ': ' %}
<meta name="description" content="{{ archivePrefix }}{{ event.seoDescription|slice(0, 140) }}">
{% else %}
<meta name="description" content="{{ event.seoDescription }}">
{% endif %}
<meta name="keywords" content="{{ event.seoKeyword }}">
<meta name="author" content="{{ event.trainer }}">
{% if app.environment == 'prod' %}
<meta name="robots" content="index,follow">
{% if event.seriesTag is not empty %}
<link rel="canonical" href="{{ path('event_series', {'seriesTag': event.seriesTag}) }}" />
{% else %}
<link rel="canonical" href="https://www.startplatz.de/event/{{ event.slug | url_encode }}" />
{% endif %}
{% else %}
<meta name="robots" content="noindex,nofollow">
{% endif %}
<!-- Open Graph -->
<meta property="og:title" content="{{ event.seoTitle }}">
<meta property="og:description" content="{{ event.seoDescription }}">
<meta property="og:image" content="{{ event.imageLink }}">
<!-- Twitter Card -->
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="{{ event.seoTitle }}">
<meta name="twitter:description" content="{{ event.seoDescription }}">
<meta name="twitter:image" content="{{ event.imageLink }}">
{% endblock %}
{% block additionalHead %}
{% include "@StartPlatzStyle/CSS/_homepage.sinlge-event.version-2023-fall.html.twig" %}
{% if event.additionalCss is not empty %}
<!-- addition css styles only for this event -->
<style>
{{ event.additionalCss }}
</style>
{% endif %}
{% endblock %}
{% block navigation %}
{% include "@StartPlatzStyleBundle/Navigation/_nav.homepage.bootstrap4.html.twig" %}
{% endblock %}
{% block title %}{{ event.seoTitle }}{% endblock %}
{% block content %}
{% set lang = lang|default('DE') %}
{% set showTeaser = showTeaser|default(false) %}
<!-- homepage single event starts -->
{% if showTeaser is defined and showTeaser %}
{% include "@StartPlatzEvent/Default/_event.section.header.html.twig" %}
{% endif %}
<section class="bg-sp-grey">
<div class="container">
<!-- Custom content-wrapper class to limit content width and improve readability -->
<div class="content-wrapper">
<div class="row pt-3 bg-white">
<div class="col-12" >
<!-- start part for article image and teaser -->
{% if showTeaser is defined and showTeaser %}
{% include "@StartPlatzEvent/Default/_event.part.articleImage-and-teaser.html.twig" %}
{% else %}
{% include "@StartPlatzEvent/Default/_event.part.articleImage-and-title.html.twig" %}
{% endif %}
<!-- end part for article image and teaser -->
<!-- Archive Banner (SEO-optimized: no redirect) -->
{% include '@StartPlatzEvent/Default/_event.part.archive-banner.html.twig' with {
'event': event
} %}
<!-- end archive banner -->
<!-- start part flashbag notices -->
{% if app.session.flashbag.has('notice') %}
<div class="row">
<div class="col-12 px-md-5">
{% for flashMessage in app.session.flashbag.get('notice') %}
<div class="text-center alert {% if 'SUCCESS' in flashMessage %}alert-success{% elseif 'ERROR' in flashMessage %}alert-danger{% else %}alert-default{% endif %}" role="alert">{{ flashMessage|replace({'SUCCESS': ''})|raw }}</div>
{% endfor %}
{{ editFeedback|raw }}
</div>
</div>
{% endif %}
<!-- end part flashbag notices -->
{% if settings.batchType is not defined or settings.batchType != "memberDocumentation" %}
<!-- start part feedback application process -->
<div class="row">
<div class="col-12 px-md-5">
{% include "@StartPlatzEvent/Default/_event.part.feedback-application-process.html.twig" %}
</div>
</div>
<!-- end part feedback application process -->
{% endif %}
<!-- start part content -->
{% if batch and batch.pitchDescription and batch.pitchDescription|trim != '' %}
{% set displayContent = batch.pitchDescription %}
{% else %}
{% set displayContent = event.content %}
{% endif %}
{% if showTeaser %}
<div class="row">
<div class="col-12 px-md-5">
{{ displayContent|raw }}
</div>
</div>
{% else %}
<div class="row">
<div class="col-12 px-md-5">
<hr>
{{ displayContent|raw }}
</div>
</div>
{% endif %}
<!-- end part content -->
{% if settings.batchType is defined and settings.batchType == "memberDocumentation" %}
<!-- start documentation section -->
<div class="row">
<div class="col-12 px-md-5">
{% include "@StartPlatzEvent/Default/_documentation.batch.html.twig"%}
</div>
</div>
<!-- end documentation section -->
{% else %}
<!-- start part ticketing and registering -->
{% if event.ticketing %}
<h2 id="Anmeldung" class="text-center">Anmeldung</h2>
<p>
{{ event.ticketing|raw }}
</p>
{% elseif event.applicationUrl and 'startplatz.de' not in event.applicationUrl %}
{# External URL always takes precedence, even with batch #}
<h2 id="Anmeldung" class="text-center">Anmeldung</h2>
{% include "@StartPlatzEvent/Default/_registration.appicationUrl.html.twig"%}
{% elseif event.applicationUrl and not batch%}
{# Internal startplatz.de URL only when no batch exists #}
<h2 id="Anmeldung" class="text-center">Anmeldung</h2>
{% include "@StartPlatzEvent/Default/_registration.appicationUrl.html.twig"%}
{% elseif event.ctaContent or (settings.doNotshowApplicationSection is defined and settings.doNotshowApplicationSection) %}
<!-- Application Section will not be shown -->
{% elseif batch and batchIsOpen %}
{% if batch.priceInEuroCent > 0 %}
{% include "@StartPlatzEvent/Default/_registration.batch.html.twig"%}
{% else %}
{% if settings.isPreRegistration is defined and settings.isPreRegistration %}
{% include "@StartPlatzEvent/Default/_registration.pre-registration-batch.html.twig"%}
{% else %}
{% include "@StartPlatzEvent/Default/_registration.batch.html.twig"%}
{% endif%}
{% endif %}
{% else %}
<h2 id="Anmeldung" class="text-center">Anmeldung nicht möglich</h2>
{% endif %}
<!-- end part ticketing and registering -->
{% endif %}
<!-- start cta content -->
{% if event.ctaContent %}
<div class="row">
<div class="col-12 px-md-5">
{{ include(template_from_string(event.ctaContent)) }}
</div>
</div>
{% endif %}
<!-- end cta content -->
<!-- start post cta content -->
{% if event.postCtaContent %}
<div class="row">
<div class="col-12 px-md-5">
{{ event.postCtaContent|raw }}
</div>
</div>
{% endif %}
<!-- end post cta content -->
<!-- start tags -->
<div class="row">
<div class="col-12 px-md-5 text-center">
{{ layout.hashTagList( event.tags|split('#'), 'events_list', templateVars, 'tmp' ) }}
</div>
</div>
<!-- end tags -->
<!-- start part speakers and partners -->
{% if speakers %}
<div class="row">
<div class="col-12 px-md-5">
{% include "@StartPlatzEvent/Default/_event.part.speakers-and-partners.html.twig" %}
</div>
</div>
{% endif %}
<!-- end part speakers and partners -->
<!-- start part past batches -->
{% include "@StartPlatzEvent/Default/_section.past-batches.html.twig" with {
'event': event,
'isMultiBatchEvent': isMultiBatchEvent,
'pastBatches': pastBatches,
'isEnglish': isEnglish
} %}
<!-- end part past batches -->
<!-- start part event series -->
{% if event.seriesTag %}
<div class="row">
<div class="col-12 px-md-5">
{% include "@StartPlatzEvent/Default/_event.part.event-series.html.twig" %}
</div>
</div>
{% endif %}
<!-- end part event series -->
{% if preview is defined and preview == 'byGuestEditor' %}
<div class="row">
<a href="{{ path('guest_events_add', {'id': event.id}) }}" class="btn btn-success pull-right" role="button">Zurück zur Event-Seite</a>
</div>
{% endif %}
</div>
</div>
</div> <!-- End of content-wrapper -->
</div>
</section>
{% if app.user and batch %}
<section class="bg-sp-grey pt-1">
<div class="container">
<div class="content-wrapper">
<div class="row pt-3 bg-white">
<div class="col-12">
<div class="row">
<div class="col-12 px-md-5 text-center">
<h2>Promote This Event</h2>
<p>Teile diesen Event-Link und hilf uns, mehr Aufmerksamkeit für dieses Event zu generieren.</p>
<div class="input-group mb-3">
<input type="text" class="form-control" id="promotionUrl" readonly value="{{ promotionUrl }}">
<div class="input-group-append">
<button class="btn btn-outline-secondary" type="button" onclick="copyToClipboard('#promotionUrl')">Kopieren</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<script>
function copyToClipboard(elementId) {
var copyText = document.querySelector(elementId);
copyText.select();
document.execCommand("copy");
}
</script>
{% endif %}
{% if app.user is defined and application is defined and application is not null and application.canReadList %}
<section class="bg-sp-grey pt-3">
<div class="container">
<div class="content-wrapper">
<div class="row pt-3 pb-3 bg-white">
<div class="col-12">
Hier kannst Du die Teilnehmerliste einsehen
<a class="btn btn-outline-dark btn-sm" href="{{ path('admin_event_participants', {id: event.id} ) }}" role="button">participants</a>
</div>
</div>
</div>
</div>
</section>
{% endif %}
{% if app.user and app.user.email == event.createdBy %}
<section class="bg-sp-grey pt-3">
<div class="container">
<div class="content-wrapper">
<div class="row pt-3 pb-3 bg-white">
<div class="col-12">
Hier kannst du den Event bearbeiten
<a class="btn btn-outline-dark btn-sm" href="{{ path('guest_events_edit', {id: event.id} ) }}" role="button">update</a>
Hier kannst Du die Teilnehmerliste einsehen
<a class="btn btn-outline-dark btn-sm" href="{{ path('admin_event_participants', {id: event.id} ) }}" role="button">participants</a>
</div>
</div>
</div>
</div>
</section>
{% endif %}
{% if app.user is defined %}
{% if app.user.admin is defined and app.user.admin %}
<section class="bg-sp-grey pt-3">
<div class="container">
<div class="content-wrapper">
<div class="row pt-3 bg-white">
<div class="col-12">
<div class="row">
<div class="col-12 px-md-5 pb-3 text-center">
<a class="btn btn-outline-dark btn-sm" href="{{ path('admin_event_edit', {id: event.id} ) }}" role="button">update</a>
<a class="btn btn-outline-dark btn-sm" href="{{ path('admin_event_participants', {id: event.id} ) }}" role="button">participants</a>
</div>
<div class="col-12 pb-3 text-center">
{{ layout.tagList( event.tags|split('#'), 'events_list', 'btn-success', templateVars, 'tmp' ) }}
</div>
</div>
</div>
</div>
</div>
</div>
</section>
{% endif %}
{% endif %}
<!-- homepage single event ends -->
{% endblock %}
{% block footer %}
{% include '@StartPlatzWebsiteBundle/Default/footerBootstrap40.html.twig' %}
{% endblock %}
{% block infiniteLoop %}{% endblock %}
{% block javascriptInfiniteLoop %}{% endblock %}