<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Extension\CoreExtension;
use Twig\Extension\SandboxExtension;
use Twig\Markup;
use Twig\Sandbox\SecurityError;
use Twig\Sandbox\SecurityNotAllowedTagError;
use Twig\Sandbox\SecurityNotAllowedFilterError;
use Twig\Sandbox\SecurityNotAllowedFunctionError;
use Twig\Source;
use Twig\Template;
/* default/escapade-destination.html.twig */
class __TwigTemplate_b3f168965c8e495227899445f61d453aef9f13013c580b071aeae3aba018054f extends Template
{
private $source;
private $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'title' => [$this, 'block_title'],
'header_classes' => [$this, 'block_header_classes'],
'navbar_theme' => [$this, 'block_navbar_theme'],
'body' => [$this, 'block_body'],
'extra_head' => [$this, 'block_extra_head'],
];
}
protected function doGetParent(array $context)
{
// line 2
return "base.html.twig";
}
protected function doDisplay(array $context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "default/escapade-destination.html.twig"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "default/escapade-destination.html.twig"));
$this->parent = $this->loadTemplate("base.html.twig", "default/escapade-destination.html.twig", 2);
yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
}
// line 4
public function block_title($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
yield "O'Escapade — ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 4, $this->source); })()), "title", [], "any", false, false, false, 4), "html", null, true);
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
return; yield '';
}
// line 7
public function block_header_classes($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "header_classes"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "header_classes"));
yield "header-overlay";
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
return; yield '';
}
// line 8
public function block_navbar_theme($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "navbar_theme"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "navbar_theme"));
yield "navbar-dark";
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
return; yield '';
}
// line 10
public function block_body($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
// line 11
yield "
";
// line 15
yield "<section class=\"position-relative text-white\">
<div class=\"ratio ratio-21x9\">
";
// line 17
if (CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 17, $this->source); })()), "img", [], "any", false, false, false, 17)) {
// line 18
yield " <img src=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(("img/offer/" . CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 18, $this->source); })()), "img", [], "any", false, false, false, 18))), "html", null, true);
yield "\" alt=\"Carnaval St Lucie\" class=\"object-fit-cover w-100 h-100\">
";
} else {
// line 20
yield " <img src=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(((("img/destination/" . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 20, $this->source); })()), "destination", [], "any", false, false, false, 20), "slug", [], "any", false, false, false, 20)) . "/") . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 20, $this->source); })()), "destination", [], "any", false, false, false, 20), "img", [], "any", false, false, false, 20))), "html", null, true);
yield "\" alt=\"Carnaval St Lucie\" class=\"object-fit-cover w-100 h-100\">
";
}
// line 22
yield " </div>
<div class=\"position-absolute top-0 start-0 w-100 h-100 d-flex align-items-center\">
<div class=\"container\">
<div class=\"bg-white text-dark p-4 p-md-5 rounded-4 shadow-sm\" style=\"max-width: 600px;\">
<h1 class=\"display-5 fw-bold txt-ot-green mb-3\">";
// line 27
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 27, $this->source); })()), "title", [], "any", false, false, false, 27), "html", null, true);
yield "</h1>
<p class=\"mb-3\">";
// line 28
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 28, $this->source); })()), "subtitle", [], "any", false, false, false, 28), "html", null, true);
yield "</p>
<div>
";
// line 31
if (CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 31, $this->source); })()), "includedText", [], "any", false, false, false, 31)) {
// line 32
yield " <h6 class=\"fw-bold txt-ot-green mb-2\">Inclus :</h6>
<ul class=\"list-unstyled mb-0\">
";
// line 34
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable(Twig\Extension\CoreExtension::split($this->env->getCharset(), CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 34, $this->source); })()), "includedText", [], "any", false, false, false, 34), "
"));
foreach ($context['_seq'] as $context["_key"] => $context["line"]) {
// line 35
yield " ";
if ((0 !== CoreExtension::compare(Twig\Extension\CoreExtension::trim($context["line"]), ""))) {
// line 36
yield " <li class=\"mb-1\">✔️ ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["line"], "html", null, true);
yield "</li>
";
}
// line 38
yield " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['line'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 39
yield " </ul>
";
}
// line 41
yield " </div>
</div>
</div>
</div>
</section>
";
// line 48
yield "<nav class=\"container my-4\" aria-label=\"breadcrumb\">
<ol class=\"breadcrumb small\">
<li class=\"breadcrumb-item\"><a href=\"";
// line 50
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app");
yield "\">Accueil</a></li>
<li class=\"breadcrumb-item\"><a href=\"";
// line 51
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("o.escapade");
yield "\">O'escapade</a></li>
<li class=\"breadcrumb-item active\" aria-current=\"page\">";
// line 52
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 52, $this->source); })()), "destination", [], "any", false, false, false, 52), "name", [], "any", false, false, false, 52), "html", null, true);
yield "</li>
</ol>
</nav>
";
// line 56
if ((isset($context["formules"]) || array_key_exists("formules", $context) ? $context["formules"] : (function () { throw new RuntimeError('Variable "formules" does not exist.', 56, $this->source); })())) {
// line 60
yield "<section class=\"container py-5\">
<h2 class=\"display-6 lh-1 fw-bold txt-ot-green mb-4\">Nos formules O’Escapade</h2>
<div class=\"row row-cols-1 row-cols-md-2 g-4\">
";
// line 65
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["formules"]) || array_key_exists("formules", $context) ? $context["formules"] : (function () { throw new RuntimeError('Variable "formules" does not exist.', 65, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["f"]) {
// line 66
yield " ";
// line 67
yield " <div class=\"col\">
<div class=\"card h-100 border-0 shadow-sm rounded-4 overflow-hidden\">
<div class=\"card-body p-4\">
<span class=\"badge bg-ot-green text-white mb-3\">";
// line 70
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "durationLabel", [], "any", false, false, false, 70), "html", null, true);
yield "</span>
<h3 class=\"h5 fw-bold mb-3\">";
// line 71
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "title", [], "any", false, false, false, 71), "html", null, true);
yield "</h3>
<p class=\"small text-muted mb-2\"><i class=\"bi bi-calendar-week\"></i> Départs :</p>
<ul class=\"small mb-3\">
";
// line 75
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable(Twig\Extension\CoreExtension::split($this->env->getCharset(), CoreExtension::getAttribute($this->env, $this->source, $context["f"], "departuresText", [], "any", false, false, false, 75), "
"));
foreach ($context['_seq'] as $context["_key"] => $context["line"]) {
// line 76
yield " ";
if ((0 !== CoreExtension::compare(Twig\Extension\CoreExtension::trim($context["line"]), ""))) {
// line 77
yield " <li class=\"mb-1\">";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["line"], "html", null, true);
yield "</li>
";
}
// line 79
yield " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['line'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 80
yield " </ul>
<p class=\"small text-muted mb-2\"><i class=\"bi bi-airplane\"></i> Transports :</p>
<ul class=\"small mb-3\">
";
// line 84
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable(Twig\Extension\CoreExtension::split($this->env->getCharset(), CoreExtension::getAttribute($this->env, $this->source, $context["f"], "transportText", [], "any", false, false, false, 84), "
"));
foreach ($context['_seq'] as $context["_key"] => $context["line"]) {
// line 85
yield " ";
if ((0 !== CoreExtension::compare(Twig\Extension\CoreExtension::trim($context["line"]), ""))) {
// line 86
yield " <li class=\"mb-1\">";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["line"], "html", null, true);
yield "</li>
";
}
// line 88
yield " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['line'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 89
yield " </ul>
<p class=\"text-muted small mb-4\">";
// line 91
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "description", [], "any", false, false, false, 91), "html", null, true);
yield "</p>
<a href=\"";
// line 92
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("o.devis");
yield "\" class=\"btn btn-outline-ot-green rounded-pill\">Demander un devis</a>
</div>
</div>
</div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['f'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 97
yield "</section>
";
}
// line 99
yield "
";
// line 103
yield "<section class=\"container py-4 py-md-5\">
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<p class=\"text-muted small mb-1\">";
// line 106
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 106, $this->source); })()), "title", [], "any", false, false, false, 106), "html", null, true);
yield "</p>
<h2 class=\"display-6 lh-1 fw-bold txt-ot-green mb-3\">Hébergement</h2>
<p class=\"text-muted\">
Notre sélection d’hôtels partenaires pour une escapade sans fausse note : confort, localisation idéale et accueil au top.
</p>
</div>
</div>
<div class=\"row g-3 g-md-4 mt-2\">
";
// line 115
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["offerHebergement"]) || array_key_exists("offerHebergement", $context) ? $context["offerHebergement"] : (function () { throw new RuntimeError('Variable "offerHebergement" does not exist.', 115, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["h"]) {
// line 116
yield " <div class=\"col-12 col-sm-6 col-lg-4\">
<article class=\"card hotel-card border-0 shadow-sm h-100 rounded-4 overflow-hidden\">
<a href=\"";
// line 118
yield "\" class=\"stretched-link text-decoration-none\">
<div class=\"ratio ratio-4x3\">
<img src=\"";
// line 120
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(((((("img/hotels/" . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, $context["h"], "hebergement", [], "any", false, false, false, 120), "country", [], "any", false, false, false, 120), "slug", [], "any", false, false, false, 120)) . "/") . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, $context["h"], "hebergement", [], "any", false, false, false, 120), "slug", [], "any", false, false, false, 120)) . "/") . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, $context["h"], "hebergement", [], "any", false, false, false, 120), "img", [], "any", false, false, false, 120))), "html", null, true);
yield "\" alt=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, $context["h"], "hebergement", [], "any", false, false, false, 120), "name", [], "any", false, false, false, 120), "html", null, true);
yield " — photo de l’hôtel\" class=\"object-fit-cover w-100 h-100\">
</div>
<div class=\"card-body\">
<h3 class=\"h6 mb-1 d-flex justify-content-between align-items-baseline\">
<span class=\"hotel-name\">";
// line 124
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, $context["h"], "hebergement", [], "any", false, false, false, 124), "name", [], "any", false, false, false, 124), "html", null, true);
yield "</span>
<span class=\"hotel-price\">à partir de ";
// line 125
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["h"], "priceFrom", [], "any", false, false, false, 125), "html", null, true);
yield "€</span>
</h3>
<p class=\"small text-muted mb-0\">";
// line 127
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["h"], "blurb", [], "any", false, false, false, 127), "html", null, true);
yield "</p>
</div>
</a>
</article>
</div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['h'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 133
yield " </div>
</section>
";
// line 136
if (CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 136, $this->source); })()), "widget", [], "any", false, false, false, 136)) {
// line 137
yield "<div class=\"container\">
<h2 class=\"h3 txt-ot-green fw-bold mb-3\">Activités</h2>
<div class=\"widget\">
";
// line 140
yield CoreExtension::getAttribute($this->env, $this->source, (isset($context["offer"]) || array_key_exists("offer", $context) ? $context["offer"] : (function () { throw new RuntimeError('Variable "offer" does not exist.', 140, $this->source); })()), "widget", [], "any", false, false, false, 140);
yield "
</div>
</div>
";
}
// line 144
yield "
";
// line 162
yield "
";
// line 180
yield "
";
// line 184
yield "<section class=\"py-5 bg-white\">
<div class=\"container\">
<header class=\"mb-3\">
<h2 class=\"h3 txt-ot-green mb-1 fw-bold\">Nos O'offres du moment</h2>
<p class=\"text-muted mb-0\">Découvrez nos dernières expériences en immersion !</p>
</header>
<div class=\"row g-3 g-md-4\">
";
// line 192
$context["offres"] = [["title" => "Carnaval St Lucie", "img" => "carnaval.jpg", "url" => "#"], ["title" => "Croisière Caraïbes", "img" => "caraibes.jpg", "url" => "#"], ["title" => "Spring Break Cancun", "img" => "cancun.jpg", "url" => "#"], ["title" => "Road trip Route 66", "img" => "road-66.jpg", "url" => "#"]];
// line 198
yield " ";
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["offres"]) || array_key_exists("offres", $context) ? $context["offres"] : (function () { throw new RuntimeError('Variable "offres" does not exist.', 198, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["o"]) {
// line 199
yield " <div class=\"col-12 col-sm-6 col-lg-3\">
<article class=\"card card-offer border-0 shadow-sm h-100 overflow-hidden rounded-4\">
<a href=\"";
// line 201
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["o"], "url", [], "any", false, false, false, 201), "html", null, true);
yield "\" class=\"stretched-link text-decoration-none text-white\">
<div class=\"ratio ratio-4x5\">
<img src=\"";
// line 203
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(("img/offre/" . CoreExtension::getAttribute($this->env, $this->source, $context["o"], "img", [], "any", false, false, false, 203))), "html", null, true);
yield "\" alt=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["o"], "title", [], "any", false, false, false, 203), "html", null, true);
yield "\" class=\"object-fit-cover w-100 h-100\">
</div>
<div class=\"card-img-overlay d-flex flex-column justify-content-end p-3 p-md-4\">
<h3 class=\"h5 fw-bold text-white text-shadow-sm mb-3\">";
// line 206
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["o"], "title", [], "any", false, false, false, 206), "html", null, true);
yield "</h3>
<div>
<span class=\"btn btn-outline-light btn-sm\">Découvrir</span>
</div>
</div>
</a>
</article>
</div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['o'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 215
yield " </div>
<div class=\"section-divider mx-auto my-5\"></div>
</div>
</section>
";
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
return; yield '';
}
// line 223
public function block_extra_head($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "extra_head"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "extra_head"));
// line 224
yield " ";
yield from $this->yieldParentBlock("extra_head", $context, $blocks);
yield "
<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css\">
<style>
.text-shadow-sm{ text-shadow:0 2px 4px rgba(0,0,0,.35); }
.text-ot-green{ color: var(--ot-primary, #2ea37a); }
</style>
";
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
return; yield '';
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName()
{
return "default/escapade-destination.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable()
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo()
{
return array ( 495 => 224, 485 => 223, 468 => 215, 453 => 206, 445 => 203, 440 => 201, 436 => 199, 431 => 198, 429 => 192, 419 => 184, 416 => 180, 413 => 162, 410 => 144, 403 => 140, 398 => 137, 396 => 136, 391 => 133, 379 => 127, 374 => 125, 370 => 124, 361 => 120, 357 => 118, 353 => 116, 349 => 115, 337 => 106, 332 => 103, 329 => 99, 325 => 97, 314 => 92, 310 => 91, 306 => 89, 300 => 88, 294 => 86, 291 => 85, 286 => 84, 280 => 80, 274 => 79, 268 => 77, 265 => 76, 260 => 75, 253 => 71, 249 => 70, 244 => 67, 242 => 66, 238 => 65, 231 => 60, 229 => 56, 222 => 52, 218 => 51, 214 => 50, 210 => 48, 202 => 41, 198 => 39, 192 => 38, 186 => 36, 183 => 35, 178 => 34, 174 => 32, 172 => 31, 166 => 28, 162 => 27, 155 => 22, 149 => 20, 143 => 18, 141 => 17, 137 => 15, 134 => 11, 124 => 10, 104 => 8, 84 => 7, 63 => 4, 40 => 2,);
}
public function getSourceContext()
{
return new Source("{# templates/escapade/show.html.twig #}
{% extends 'base.html.twig' %}
{% block title %}O'Escapade — {{ offer.title }}{% endblock %}
{# Header standard ou overlay si besoin sur le hero #}
{% block header_classes %}header-overlay{% endblock %}
{% block navbar_theme %}navbar-dark{% endblock %}
{% block body %}
{# -----------------------------
HERO Escapade (avec inclus)
------------------------------ #}
<section class=\"position-relative text-white\">
<div class=\"ratio ratio-21x9\">
{% if offer.img %}
<img src=\"{{asset('img/offer/' ~ offer.img)}}\" alt=\"Carnaval St Lucie\" class=\"object-fit-cover w-100 h-100\">
{% else %}
<img src=\"{{asset('img/destination/' ~ offer.destination.slug ~ '/' ~ offer.destination.img)}}\" alt=\"Carnaval St Lucie\" class=\"object-fit-cover w-100 h-100\">
{% endif %}
</div>
<div class=\"position-absolute top-0 start-0 w-100 h-100 d-flex align-items-center\">
<div class=\"container\">
<div class=\"bg-white text-dark p-4 p-md-5 rounded-4 shadow-sm\" style=\"max-width: 600px;\">
<h1 class=\"display-5 fw-bold txt-ot-green mb-3\">{{offer.title}}</h1>
<p class=\"mb-3\">{{offer.subtitle}}</p>
<div>
{% if offer.includedText %}
<h6 class=\"fw-bold txt-ot-green mb-2\">Inclus :</h6>
<ul class=\"list-unstyled mb-0\">
{% for line in offer.includedText|split(\"\\n\") %}
{% if line|trim != '' %}
<li class=\"mb-1\">✔️ {{ line }}</li>
{% endif %}
{% endfor %}
</ul>
{% endif %}
</div>
</div>
</div>
</div>
</section>
{# Fil d'Ariane #}
<nav class=\"container my-4\" aria-label=\"breadcrumb\">
<ol class=\"breadcrumb small\">
<li class=\"breadcrumb-item\"><a href=\"{{ path('app') }}\">Accueil</a></li>
<li class=\"breadcrumb-item\"><a href=\"{{ path('o.escapade') }}\">O'escapade</a></li>
<li class=\"breadcrumb-item active\" aria-current=\"page\">{{offer.destination.name}}</li>
</ol>
</nav>
{% if formules %}
{# -----------------------------
Formules
------------------------------ #}
<section class=\"container py-5\">
<h2 class=\"display-6 lh-1 fw-bold txt-ot-green mb-4\">Nos formules O’Escapade</h2>
<div class=\"row row-cols-1 row-cols-md-2 g-4\">
{% for f in formules %}
{# Formule 1 #}
<div class=\"col\">
<div class=\"card h-100 border-0 shadow-sm rounded-4 overflow-hidden\">
<div class=\"card-body p-4\">
<span class=\"badge bg-ot-green text-white mb-3\">{{f.durationLabel}}</span>
<h3 class=\"h5 fw-bold mb-3\">{{f.title}}</h3>
<p class=\"small text-muted mb-2\"><i class=\"bi bi-calendar-week\"></i> Départs :</p>
<ul class=\"small mb-3\">
{% for line in f.departuresText|split(\"\\n\") %}
{% if line|trim != '' %}
<li class=\"mb-1\">{{ line }}</li>
{% endif %}
{% endfor %}
</ul>
<p class=\"small text-muted mb-2\"><i class=\"bi bi-airplane\"></i> Transports :</p>
<ul class=\"small mb-3\">
{% for line in f.transportText|split(\"\\n\") %}
{% if line|trim != '' %}
<li class=\"mb-1\">{{ line }}</li>
{% endif %}
{% endfor %}
</ul>
<p class=\"text-muted small mb-4\">{{f.description}}</p>
<a href=\"{{ path('o.devis') }}\" class=\"btn btn-outline-ot-green rounded-pill\">Demander un devis</a>
</div>
</div>
</div>
{% endfor %}
</section>
{% endif %}
{# -----------------------------
SECTION 1 — Hébergement (SÉLECTION D'HÔTELS)
------------------------------ #}
<section class=\"container py-4 py-md-5\">
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<p class=\"text-muted small mb-1\">{{offer.title}}</p>
<h2 class=\"display-6 lh-1 fw-bold txt-ot-green mb-3\">Hébergement</h2>
<p class=\"text-muted\">
Notre sélection d’hôtels partenaires pour une escapade sans fausse note : confort, localisation idéale et accueil au top.
</p>
</div>
</div>
<div class=\"row g-3 g-md-4 mt-2\">
{% for h in offerHebergement %}
<div class=\"col-12 col-sm-6 col-lg-4\">
<article class=\"card hotel-card border-0 shadow-sm h-100 rounded-4 overflow-hidden\">
<a href=\"{#{ h.url }#}\" class=\"stretched-link text-decoration-none\">
<div class=\"ratio ratio-4x3\">
<img src=\"{{asset('img/hotels/' ~ h.hebergement.country.slug ~ '/' ~ h.hebergement.slug ~ '/' ~ h.hebergement.img)}}\" alt=\"{{ h.hebergement.name }} — photo de l’hôtel\" class=\"object-fit-cover w-100 h-100\">
</div>
<div class=\"card-body\">
<h3 class=\"h6 mb-1 d-flex justify-content-between align-items-baseline\">
<span class=\"hotel-name\">{{ h.hebergement.name }}</span>
<span class=\"hotel-price\">à partir de {{ h.priceFrom }}€</span>
</h3>
<p class=\"small text-muted mb-0\">{{ h.blurb }}</p>
</div>
</a>
</article>
</div>
{% endfor %}
</div>
</section>
{% if offer.widget %}
<div class=\"container\">
<h2 class=\"h3 txt-ot-green fw-bold mb-3\">Activités</h2>
<div class=\"widget\">
{{offer.widget|raw}}
</div>
</div>
{% endif %}
{# -----------------------------
SECTION 2 — Parade (texte gauche, image droite)
------------------------------
<section class=\"container py-4 py-md-5\">
<div class=\"row g-4 align-items-center\">
<div class=\"col-12 col-lg-6 order-1 order-lg-0\">
<p class=\"text-muted small mb-1\">{{ escapade.kicker|default('Carnaval St Lucie') }}</p>
<h2 class=\"display-6 lh-1 fw-bold text-ot-green mb-3\">Parade</h2>
<p class=\"text-muted\">Lorem Ipsum is simply dummy text of the printing and typesetting industry…</p>
</div>
<div class=\"col-12 col-lg-6 order-0 order-lg-1\">
<div class=\"ratio ratio-4x3 rounded-4 overflow-hidden shadow-sm\">
<img src=\"{{ asset(escapade.parade_img|default('img/escapade/parade.jpg')) }}\" alt=\"Parade\" class=\"object-fit-cover w-100 h-100\">
</div>
</div>
</div>
</section>#}
{# -----------------------------
SECTION 3 — Activités (image gauche, texte droite)
------------------------------
<section class=\"container py-4 py-md-5\">
<div class=\"row g-4 align-items-center\">
<div class=\"col-12 col-lg-6\">
<div class=\"ratio ratio-4x3 rounded-4 overflow-hidden shadow-sm\">
<img src=\"{{ asset(escapade.activites_img|default('img/escapade/activity.jpg')) }}\" alt=\"Activités\" class=\"object-fit-cover w-100 h-100\">
</div>
</div>
<div class=\"col-12 col-lg-6\">
<p class=\"text-muted small mb-1\">{{ escapade.kicker|default('Carnaval St Lucie') }}</p>
<h2 class=\"display-6 lh-1 fw-bold text-ot-green mb-3\">Activités</h2>
<p class=\"text-muted\">Lorem Ipsum is simply dummy text of the printing and typesetting industry…</p>
</div>
</div>
</section> #}
{# -----------------------------
OFFRES DU MOMENT — réutilisation grille cartes maquette
------------------------------ #}
<section class=\"py-5 bg-white\">
<div class=\"container\">
<header class=\"mb-3\">
<h2 class=\"h3 txt-ot-green mb-1 fw-bold\">Nos O'offres du moment</h2>
<p class=\"text-muted mb-0\">Découvrez nos dernières expériences en immersion !</p>
</header>
<div class=\"row g-3 g-md-4\">
{% set offres = [
{ title: 'Carnaval St Lucie', img: 'carnaval.jpg', url: '#' },
{ title: 'Croisière Caraïbes', img: 'caraibes.jpg', url: '#' },
{ title: 'Spring Break Cancun', img: 'cancun.jpg', url: '#' },
{ title: 'Road trip Route 66', img: 'road-66.jpg', url: '#' }
] %}
{% for o in offres %}
<div class=\"col-12 col-sm-6 col-lg-3\">
<article class=\"card card-offer border-0 shadow-sm h-100 overflow-hidden rounded-4\">
<a href=\"{{ o.url }}\" class=\"stretched-link text-decoration-none text-white\">
<div class=\"ratio ratio-4x5\">
<img src=\"{{ asset('img/offre/' ~ o.img) }}\" alt=\"{{ o.title }}\" class=\"object-fit-cover w-100 h-100\">
</div>
<div class=\"card-img-overlay d-flex flex-column justify-content-end p-3 p-md-4\">
<h3 class=\"h5 fw-bold text-white text-shadow-sm mb-3\">{{ o.title }}</h3>
<div>
<span class=\"btn btn-outline-light btn-sm\">Découvrir</span>
</div>
</div>
</a>
</article>
</div>
{% endfor %}
</div>
<div class=\"section-divider mx-auto my-5\"></div>
</div>
</section>
{% endblock %}
{% block extra_head %}
{{ parent() }}
<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css\">
<style>
.text-shadow-sm{ text-shadow:0 2px 4px rgba(0,0,0,.35); }
.text-ot-green{ color: var(--ot-primary, #2ea37a); }
</style>
{% endblock %}
", "default/escapade-destination.html.twig", "/home/ladomitiyc/otropik/templates/default/escapade-destination.html.twig");
}
}