<?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/roadtrip-destination.html.twig */
class __TwigTemplate_be59080f9e9970ebd759d83e5317dc87 extends Template
{
private $source;
private $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'title' => [$this, 'block_title'],
'seo' => [$this, 'block_seo'],
'body' => [$this, 'block_body'],
];
}
protected function doGetParent(array $context)
{
// line 2
return "base.html.twig";
}
protected function doDisplay(array $context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "default/roadtrip-destination.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "default/roadtrip-destination.html.twig"));
$this->parent = $this->loadTemplate("base.html.twig", "default/roadtrip-destination.html.twig", 2);
yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 3
public function block_title($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
yield "O’Roadtrip - ";
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.', 3, $this->source); })()), "title", [], "any", false, false, false, 3), "html", null, true);
yield " | O Tropik – Agence de voyage en Guadeloupe ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
return; yield '';
}
// line 4
public function block_seo($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "seo"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "seo"));
// line 5
yield " <meta name=\"description\" content=\"";
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.', 5, $this->source); })()), "description", [], "any", false, false, false, 5), "html", null, true);
yield "\" >
\t<meta property=\"og:title\" content=\"";
// line 7
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.', 7, $this->source); })()), "metaTitle", [], "any", false, false, false, 7), "html", null, true);
yield "\" />
\t<meta property=\"og:type\" content=\"Website\" />
\t<meta property=\"og:description\" content=\"";
// line 9
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.', 9, $this->source); })()), "metaDescription", [], "any", false, false, false, 9), "html", null, true);
yield "\" />
\t<meta property=\"og:url\" content=\"";
// line 10
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\HttpFoundationExtension']->generateAbsoluteUrl(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 10, $this->source); })()), "request", [], "any", false, false, false, 10), "uri", [], "any", false, false, false, 10)), "html", null, true);
yield "\" />
\t<meta property=\"og:image\" content=\"";
// line 11
yield "\" />
\t<meta name =\"twitter:card\" content=\"summary_large_image\" />
\t<meta name=\"twitter:title\" content=\"";
// line 14
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.', 14, $this->source); })()), "metaTitle", [], "any", false, false, false, 14), "html", null, true);
yield "\">
\t<meta name=\"twitter:description\" content=\"";
// line 15
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.', 15, $this->source); })()), "metaDescription", [], "any", false, false, false, 15), "html", null, true);
yield "\">
\t<meta name=\"twitter:image\" content=\"";
// line 16
yield "\">
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
return; yield '';
}
// line 18
public function block_body($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
// line 20
yield "<section class=\"hero hero--road is-animated position-relative text-white\">
<div class=\"hero__media ratio ratio-21x9\">
<img src=\"";
// line 22
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(((("img/offer/road/" . 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.', 22, $this->source); })()), "slug", [], "any", false, false, false, 22)) . "/") . (((CoreExtension::getAttribute($this->env, $this->source, ($context["offer"] ?? null), "img", [], "any", true, true, false, 22) && !(null === CoreExtension::getAttribute($this->env, $this->source, ($context["offer"] ?? null), "img", [], "any", false, false, false, 22)))) ? (CoreExtension::getAttribute($this->env, $this->source, ($context["offer"] ?? null), "img", [], "any", false, false, false, 22)) : ("hero.jpg")))), "html", null, true);
yield "\"
class=\"hero__img w-100 h-100 object-fit-cover\"
alt=\"";
// line 24
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.', 24, $this->source); })()), "title", [], "any", false, false, false, 24), "html", null, true);
yield "\">
</div>
<div class=\"hero__overlay\">
<div class=\"hero__card\">
<h1 class=\"hero__title txt-ot-brown display-5 fw-bold mb-2\">";
// line 29
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.', 29, $this->source); })()), "title", [], "any", false, false, false, 29), "html", null, true);
yield "</h1>
";
// 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); })()), "subtitle", [], "any", false, false, false, 31)) {
// line 32
yield " <p class=\"hero__subtitle lead mb-0\">";
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.', 32, $this->source); })()), "subtitle", [], "any", false, false, false, 32), "html", null, true);
yield "</p>
";
}
// line 34
yield "
";
// line 35
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.', 35, $this->source); })()), "brochure", [], "any", false, false, false, 35)) {
// line 36
yield " <div class=\"hero__actions\">
<a href=\"";
// line 37
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(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.', 37, $this->source); })()), "brochure", [], "any", false, false, false, 37)), "html", null, true);
yield "\" target=\"_blank\" class=\"btn btn-outline-primary\">
📄 Télécharger la brochure
</a>
</div>
";
}
// line 42
yield " </div>
</div>
</section>
<section class=\"container py-5\">
<div class=\"row g-3 g-lg-4 mb-4\">
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Durée & dates</h6>
<p class=\"mb-0 text-muted\">";
// line 52
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.', 52, $this->source); })()), "summaryDuration", [], "any", false, false, false, 52), "html", null, true);
yield "</p>
<p class=\"mb-0 text-muted\">";
// line 53
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.', 53, $this->source); })()), "dateText", [], "any", false, false, false, 53), "html", null, true);
yield "</p>
</div></div>
</div>
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Vols</h6>
<ul class=\"list-unstyled mb-0\">
";
// line 60
$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.', 60, $this->source); })()), "summaryFlights", [], "any", false, false, false, 60), "
"));
foreach ($context['_seq'] as $context["_key"] => $context["line"]) {
// line 61
yield " ";
if ((Twig\Extension\CoreExtension::trim($context["line"]) != "")) {
// line 62
yield " <li class=\"mb-1\">";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["line"], "html", null, true);
yield "</li>
";
}
// line 64
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 65
yield " </ul>
</div></div>
</div>
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Rythme & repas</h6>
<ul class=\"list-unstyled mb-0\">
";
// line 72
$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.', 72, $this->source); })()), "summaryPaceMeals", [], "any", false, false, false, 72), "
"));
foreach ($context['_seq'] as $context["_key"] => $context["line"]) {
// line 73
yield " ";
if ((Twig\Extension\CoreExtension::trim($context["line"]) != "")) {
// line 74
yield " <li>";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["line"], "html", null, true);
yield "</li>
";
}
// line 76
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 77
yield " </ul>
</div></div>
</div>
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Tarif dès</h6>
<p class=\"small text-muted mb-0\">";
// line 83
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.', 83, $this->source); })()), "priceFrom", [], "any", false, false, false, 83), "html", null, true);
yield "€</p>
</div></div>
</div>
</div>
";
// line 89
yield " ";
if ((isset($context["highlight"]) || array_key_exists("highlight", $context) ? $context["highlight"] : (function () { throw new RuntimeError('Variable "highlight" does not exist.', 89, $this->source); })())) {
// line 90
yield " <div class=\"row mb-4\">
<div class=\"col-12 col-lg-6\">
<p class=\"text-uppercase small fw-bold text-ot-brown mb-2\">Nos coups de cœur</p>
<h2 class=\"h4 fw-bold mb-3 txt-ot-brown\">Les incontournables de votre roadtrip</h2>
<p class=\"text-muted\">Déserts, dunes, faune sauvage et sites rupestres : une immersion totale dans les grands espaces namibiens. </p>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"d-flex flex-column gap-3\">
";
// line 98
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["highlight"]) || array_key_exists("highlight", $context) ? $context["highlight"] : (function () { throw new RuntimeError('Variable "highlight" does not exist.', 98, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["h"]) {
// line 99
yield " <div class=\"card border-0 shadow-sm rounded-4 w-100\">
<div class=\"card-body d-flex align-items-start gap-2\">
<i class=\"bi bi-check-circle-fill text-ot-green mt-1\"></i>
<h3 class=\"h6 fw-semibold mb-0\">";
// line 102
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["h"], "title", [], "any", false, false, false, 102), "html", null, true);
yield "</h3>
</div>
</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 106
yield " </div>
</div>
</div>
";
}
// line 110
yield "
";
// line 112
yield " <div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h2 class=\"h5 txt-ot-brown fw-bold mb-3\">Itinéraire — jour par jour</h2>
<div class=\"list-group list-group-flush\">
";
// line 118
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["itinerary"]) || array_key_exists("itinerary", $context) ? $context["itinerary"] : (function () { throw new RuntimeError('Variable "itinerary" does not exist.', 118, $this->source); })()));
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["it"]) {
// line 119
yield " <div class=\"list-group-item px-0\">
<button class=\"btn w-100 d-flex justify-content-between align-items-center text-start\" data-bs-toggle=\"collapse\" data-bs-target=\"#day";
// line 120
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "index", [], "any", false, false, false, 120), "html", null, true);
yield "\" aria-expanded=\"false\">
<span class=\"fw-bold \">Jour ";
// line 121
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "index", [], "any", false, false, false, 121), "html", null, true);
yield " - ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["it"], "title", [], "any", false, false, false, 121), "html", null, true);
if (CoreExtension::getAttribute($this->env, $this->source, $context["it"], "kmLabel", [], "any", false, false, false, 121)) {
yield " <span class=\"text-muted fw-normal\"> (";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["it"], "kmLabel", [], "any", false, false, false, 121), "html", null, true);
yield ") km</span>";
}
yield "</span>
<i class=\"bi bi-chevron-down\"></i>
</button>
<div id=\"day";
// line 124
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "index", [], "any", false, false, false, 124), "html", null, true);
yield "\" class=\"collapse mt-2\">
<p class=\"small text-muted mb-0\">";
// line 125
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["it"], "details", [], "any", false, false, false, 125), "html", null, true);
yield "</p>
</div>
</div>
";
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['it'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 129
yield " </div>
<p class=\"small text-muted mt-3 mb-0\">Données synthétisées de la brochure.</p>
</div>
</div>
</div>
";
// line 136
yield " <div class=\"col-12 col-lg-6 d-flex\">
<div class=\"w-100 d-flex align-items-center\">
<div id=\"circuitCarousel\"
class=\"carousel slide rounded-4 overflow-hidden shadow-sm w-100\"
data-bs-ride=\"carousel\"
data-bs-interval=\"5000\"
data-bs-pause=\"hover\"
data-bs-touch=\"true\"
aria-label=\"Galerie circuit\">
<div class=\"carousel-inner\">
";
// line 147
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["photoItinerary"]) || array_key_exists("photoItinerary", $context) ? $context["photoItinerary"] : (function () { throw new RuntimeError('Variable "photoItinerary" does not exist.', 147, $this->source); })()));
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["p"]) {
// line 148
yield " <div class=\"carousel-item ";
if (CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "first", [], "any", false, false, false, 148)) {
yield "active";
}
yield "\">
<div class=\"ratio ratio-4x3\">
<img src=\"";
// line 150
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(((((("img/" . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, $context["p"], "offer", [], "any", false, false, false, 150), "file", [], "any", false, false, false, 150)) . "/") . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, $context["p"], "offer", [], "any", false, false, false, 150), "slug", [], "any", false, false, false, 150)) . "/itinerary/") . CoreExtension::getAttribute($this->env, $this->source, $context["p"], "img", [], "any", false, false, false, 150))), "html", null, true);
yield "\" class=\"d-block w-100 h-100 object-fit-cover\" alt=\"Photo circuit ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "index", [], "any", false, false, false, 150), "html", null, true);
yield "\">
</div>
</div>
";
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['p'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 154
yield " </div>
<button class=\"carousel-control-prev\" type=\"button\" data-bs-target=\"#circuitCarousel\" data-bs-slide=\"prev\">
<span class=\"carousel-control-prev-icon\" aria-hidden=\"true\"></span>
<span class=\"visually-hidden\">Précédent</span>
</button>
<button class=\"carousel-control-next\" type=\"button\" data-bs-target=\"#circuitCarousel\" data-bs-slide=\"next\">
<span class=\"carousel-control-next-icon\" aria-hidden=\"true\"></span>
<span class=\"visually-hidden\">Suivant</span>
</button>
<div class=\"carousel-indicators\">
";
// line 166
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["photoItinerary"]) || array_key_exists("photoItinerary", $context) ? $context["photoItinerary"] : (function () { throw new RuntimeError('Variable "photoItinerary" does not exist.', 166, $this->source); })()));
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["p"]) {
// line 167
yield " <button type=\"button\"
data-bs-target=\"#circuitCarousel\"
data-bs-slide-to=\"";
// line 169
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "index0", [], "any", false, false, false, 169), "html", null, true);
yield "\"
class=\"";
// line 170
if (CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "first", [], "any", false, false, false, 170)) {
yield "active";
}
yield "\"
aria-current=\"";
// line 171
yield ((CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "first", [], "any", false, false, false, 171)) ? ("true") : ("false"));
yield "\"
aria-label=\"Slide ";
// line 172
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "index", [], "any", false, false, false, 172), "html", null, true);
yield "\"></button>
";
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['p'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 174
yield " </div>
</div>
</div>
</div>
</div>
</section>
";
// line 180
if ((isset($context["hebergementOffer"]) || array_key_exists("hebergementOffer", $context) ? $context["hebergementOffer"] : (function () { throw new RuntimeError('Variable "hebergementOffer" does not exist.', 180, $this->source); })())) {
// line 184
yield "<section class=\"py-5 bg-body-tertiary\" id=\"hotels\">
<div class=\"container\">
<h2 class=\"h3 txt-ot-brown fw-bold mb-3\">Hébergements prévus (ou similaires)</h2>
<ul class=\"list-group\">
";
// line 188
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["hebergementOffer"]) || array_key_exists("hebergementOffer", $context) ? $context["hebergementOffer"] : (function () { throw new RuntimeError('Variable "hebergementOffer" does not exist.', 188, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["h"]) {
yield "<li class=\"list-group-item\">";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["h"], "name", [], "any", false, false, false, 188), "html", null, true);
yield "</li>";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['h'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 189
yield " </ul>
</div>
</section>
";
}
// line 193
yield "
";
// line 194
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.', 194, $this->source); })()), "widget", [], "any", false, false, false, 194)) {
// line 195
yield "<div class=\"container\">
<h2 class=\"h3 txt-ot-brown fw-bold mb-3\">Activités</h2>
<div class=\"widget\">
";
// line 198
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.', 198, $this->source); })()), "widget", [], "any", false, false, false, 198);
yield "
</div>
</div>
";
}
// line 202
yield "
";
// line 203
if ((isset($context["included"]) || array_key_exists("included", $context) ? $context["included"] : (function () { throw new RuntimeError('Variable "included" does not exist.', 203, $this->source); })())) {
// line 207
yield "<section class=\"py-5 bg-white\" id=\"inclus\">
<div class=\"container\">
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Inclus</h2>
<ul class=\"small mb-0 list-unstyled\">
";
// line 216
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable(Twig\Extension\CoreExtension::filter($this->env, (isset($context["included"]) || array_key_exists("included", $context) ? $context["included"] : (function () { throw new RuntimeError('Variable "included" does not exist.', 216, $this->source); })()), function ($__i__) use ($context, $macros) { $context["i"] = $__i__; return (CoreExtension::getAttribute($this->env, $this->source, $context["i"], "type", [], "any", false, false, false, 216) == "in"); }));
foreach ($context['_seq'] as $context["_key"] => $context["i"]) {
// line 217
yield " <li>✔️ ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["i"], "label", [], "any", false, false, false, 217), "html", null, true);
yield "</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['i'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 219
yield " </ul>
</div>
</div>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Non inclus</h2>
<ul class=\"small mb-0 list-unstyled\">
";
// line 228
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable(Twig\Extension\CoreExtension::filter($this->env, (isset($context["included"]) || array_key_exists("included", $context) ? $context["included"] : (function () { throw new RuntimeError('Variable "included" does not exist.', 228, $this->source); })()), function ($__e__) use ($context, $macros) { $context["e"] = $__e__; return (CoreExtension::getAttribute($this->env, $this->source, $context["e"], "type", [], "any", false, false, false, 228) == "out"); }));
foreach ($context['_seq'] as $context["_key"] => $context["e"]) {
// line 229
yield " <li>— ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["e"], "label", [], "any", false, false, false, 229), "html", null, true);
yield "</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['e'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 231
yield " </ul>
</div>
</div>
</div>
</div>
</div>
</section>
";
}
// line 262
yield "
";
// line 263
if ((isset($context["flight"]) || array_key_exists("flight", $context) ? $context["flight"] : (function () { throw new RuntimeError('Variable "flight" does not exist.', 263, $this->source); })())) {
// line 267
yield "<section class=\"py-5 bg-body-tertiary\" id=\"vols\">
<div class=\"container\">
<h2 class=\"h3 txt-ot-brown fw-bold mb-3\">Vols & horaires (indicatifs)</h2>
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h3 class=\"h6 fw-bold mb-2\">Aller</h3>
<ul class=\"small mb-0\">
";
// line 276
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["flight"]) || array_key_exists("flight", $context) ? $context["flight"] : (function () { throw new RuntimeError('Variable "flight" does not exist.', 276, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["f"]) {
// line 277
yield " ";
if ((CoreExtension::getAttribute($this->env, $this->source, $context["f"], "type", [], "any", false, false, false, 277) == "1")) {
// line 278
yield " <li>";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "departureCity", [], "any", false, false, false, 278), "html", null, true);
yield " → ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "departureCity", [], "any", false, false, false, 278), "html", null, true);
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "departureTime", [], "any", false, false, false, 278), "html", null, true);
yield " / ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "arrivalTime", [], "any", false, false, false, 278), "html", null, true);
yield " </li>
";
}
// line 280
yield " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['f'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 281
yield " </ul>
</div>
</div>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h3 class=\"h6 fw-bold mb-2\">Retour</h3>
<ul class=\"small mb-0\">
";
// line 290
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["flight"]) || array_key_exists("flight", $context) ? $context["flight"] : (function () { throw new RuntimeError('Variable "flight" does not exist.', 290, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["f"]) {
// line 291
yield " ";
if ((CoreExtension::getAttribute($this->env, $this->source, $context["f"], "type", [], "any", false, false, false, 291) == "2")) {
// line 292
yield " <li>";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "departureCity", [], "any", false, false, false, 292), "html", null, true);
yield " → ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "departureCity", [], "any", false, false, false, 292), "html", null, true);
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "departureTime", [], "any", false, false, false, 292), "html", null, true);
yield " / ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["f"], "arrivalTime", [], "any", false, false, false, 292), "html", null, true);
yield " </li>
";
}
// line 294
yield " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['f'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 295
yield " </ul>
</div>
</div>
</div>
</div>
<p class=\"small text-muted mt-3 mb-0\">Horaires et compagnies susceptibles d’évolution. À confirmer à l’émission des billets.</p>
</div>
</section>
";
}
// line 304
yield "
";
// line 305
if ((isset($context["infos"]) || array_key_exists("infos", $context) ? $context["infos"] : (function () { throw new RuntimeError('Variable "infos" does not exist.', 305, $this->source); })())) {
// line 309
yield "<section class=\"py-5 bg-body-tertiary\" id=\"paiement\">
<div class=\"container\">
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Facilités de paiement</h2>
<ul class=\"small mb-0\">
";
// line 318
$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.', 318, $this->source); })()), "paymentMethod", [], "any", false, false, false, 318), "
"));
foreach ($context['_seq'] as $context["_key"] => $context["line"]) {
// line 319
yield " <li class=\"mb-1\">✔️ ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["line"], "html", null, true);
yield "</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['line'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 321
yield " </ul>
</div>
</div>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Formalités</h2>
<ul class=\"small mb-0\">
";
// line 331
$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.', 331, $this->source); })()), "formalities", [], "any", false, false, false, 331), "
"));
foreach ($context['_seq'] as $context["_key"] => $context["line"]) {
// line 332
yield " <li class=\"mb-1\">✔️ ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["line"], "html", null, true);
yield "</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['line'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 334
yield " </ul>
</div>
</div>
</div>
</div>
</div>
</section>
";
}
// line 342
yield "
";
// line 346
yield "<section class=\"py-5 bg-ot-green text-white text-center\">
<div class=\"container\">
<h2 class=\"h4 fw-bold mb-2\">Envie de rejoindre le ";
// line 348
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.', 348, $this->source); })()), "title", [], "any", false, false, false, 348), "html", null, true);
yield " ?</h2>
<p class=\"mb-4\">Parlez à un conseiller Otropik : on s’occupe de tout.</p>
<div class=\"d-flex gap-2 justify-content-center flex-wrap\">
<a href=\"";
// line 351
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("o.devis");
yield "\" class=\"btn btn-light rounded-pill\">Demander un devis</a>
<a href=\"tel:0590505134\" class=\"btn btn-outline-light rounded-pill\">Appeler</a>
</div>
</div>
</section>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
return; yield '';
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName()
{
return "default/roadtrip-destination.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable()
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo()
{
return array ( 803 => 351, 797 => 348, 793 => 346, 790 => 342, 780 => 334, 771 => 332, 766 => 331, 754 => 321, 745 => 319, 740 => 318, 729 => 309, 727 => 305, 724 => 304, 713 => 295, 707 => 294, 695 => 292, 692 => 291, 688 => 290, 677 => 281, 671 => 280, 659 => 278, 656 => 277, 652 => 276, 641 => 267, 639 => 263, 636 => 262, 626 => 231, 617 => 229, 613 => 228, 602 => 219, 593 => 217, 589 => 216, 578 => 207, 576 => 203, 573 => 202, 566 => 198, 561 => 195, 559 => 194, 556 => 193, 550 => 189, 539 => 188, 533 => 184, 531 => 180, 523 => 174, 507 => 172, 503 => 171, 497 => 170, 493 => 169, 489 => 167, 472 => 166, 458 => 154, 438 => 150, 430 => 148, 413 => 147, 400 => 136, 392 => 129, 374 => 125, 370 => 124, 357 => 121, 353 => 120, 350 => 119, 333 => 118, 325 => 112, 322 => 110, 316 => 106, 306 => 102, 301 => 99, 297 => 98, 287 => 90, 284 => 89, 276 => 83, 268 => 77, 262 => 76, 256 => 74, 253 => 73, 248 => 72, 239 => 65, 233 => 64, 227 => 62, 224 => 61, 219 => 60, 209 => 53, 205 => 52, 193 => 42, 185 => 37, 182 => 36, 180 => 35, 177 => 34, 171 => 32, 169 => 31, 164 => 29, 156 => 24, 151 => 22, 147 => 20, 137 => 18, 125 => 16, 121 => 15, 117 => 14, 112 => 11, 108 => 10, 104 => 9, 99 => 7, 93 => 5, 83 => 4, 61 => 3, 38 => 2,);
}
public function getSourceContext()
{
return new Source("{# templates/offer/roadtrip_show.html.twig #}
{% extends 'base.html.twig' %}
{% block title %}O’Roadtrip - {{ offer.title }} | O Tropik – Agence de voyage en Guadeloupe {% endblock %}
{% block seo %}
<meta name=\"description\" content=\"{{offer.description}}\" >
\t<meta property=\"og:title\" content=\"{{offer.metaTitle}}\" />
\t<meta property=\"og:type\" content=\"Website\" />
\t<meta property=\"og:description\" content=\"{{offer.metaDescription}}\" />
\t<meta property=\"og:url\" content=\"{{absolute_url( app.request.uri)}}\" />
\t<meta property=\"og:image\" content=\"{#{asset('img/asset/cardimg-fb.jpg')}#}\" />
\t<meta name =\"twitter:card\" content=\"summary_large_image\" />
\t<meta name=\"twitter:title\" content=\"{{offer.metaTitle}}\">
\t<meta name=\"twitter:description\" content=\"{{offer.metaDescription}}\">
\t<meta name=\"twitter:image\" content=\"{#{asset('img/asset/cardimg-fb.jpg')}#}\">
{% endblock %}
{% block body %}
{# HERO #}
<section class=\"hero hero--road is-animated position-relative text-white\">
<div class=\"hero__media ratio ratio-21x9\">
<img src=\"{{ asset('img/offer/road/' ~ offer.slug ~ '/' ~ (offer.img ?? 'hero.jpg')) }}\"
class=\"hero__img w-100 h-100 object-fit-cover\"
alt=\"{{ offer.title }}\">
</div>
<div class=\"hero__overlay\">
<div class=\"hero__card\">
<h1 class=\"hero__title txt-ot-brown display-5 fw-bold mb-2\">{{ offer.title }}</h1>
{% if offer.subtitle %}
<p class=\"hero__subtitle lead mb-0\">{{ offer.subtitle }}</p>
{% endif %}
{% if offer.brochure %}
<div class=\"hero__actions\">
<a href=\"{{ asset(offer.brochure) }}\" target=\"_blank\" class=\"btn btn-outline-primary\">
📄 Télécharger la brochure
</a>
</div>
{% endif %}
</div>
</div>
</section>
<section class=\"container py-5\">
<div class=\"row g-3 g-lg-4 mb-4\">
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Durée & dates</h6>
<p class=\"mb-0 text-muted\">{{ offer.summaryDuration }}</p>
<p class=\"mb-0 text-muted\">{{ offer.dateText }}</p>
</div></div>
</div>
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Vols</h6>
<ul class=\"list-unstyled mb-0\">
{% for line in offer.summaryFlights|split(\"\\n\") %}
{% if line|trim != '' %}
<li class=\"mb-1\">{{ line }}</li>
{% endif %}
{% endfor %}
</ul>
</div></div>
</div>
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Rythme & repas</h6>
<ul class=\"list-unstyled mb-0\">
{% for line in offer.summaryPaceMeals|split(\"\\n\") %}
{% if line|trim != '' %}
<li>{{ line }}</li>
{% endif %}
{% endfor %}
</ul>
</div></div>
</div>
<div class=\"col-12 col-md-6 col-lg-3\">
<div class=\"card rounded-4 shadow-sm h-100\"><div class=\"card-body\">
<h6 class=\"fw-bold txt-ot-brown mb-1\">Tarif dès</h6>
<p class=\"small text-muted mb-0\">{{ offer.priceFrom }}€</p>
</div></div>
</div>
</div>
{# ————— Points forts ————— #}
{% if highlight %}
<div class=\"row mb-4\">
<div class=\"col-12 col-lg-6\">
<p class=\"text-uppercase small fw-bold text-ot-brown mb-2\">Nos coups de cœur</p>
<h2 class=\"h4 fw-bold mb-3 txt-ot-brown\">Les incontournables de votre roadtrip</h2>
<p class=\"text-muted\">Déserts, dunes, faune sauvage et sites rupestres : une immersion totale dans les grands espaces namibiens. </p>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"d-flex flex-column gap-3\">
{% for h in highlight %}
<div class=\"card border-0 shadow-sm rounded-4 w-100\">
<div class=\"card-body d-flex align-items-start gap-2\">
<i class=\"bi bi-check-circle-fill text-ot-green mt-1\"></i>
<h3 class=\"h6 fw-semibold mb-0\">{{ h.title }}</h3>
</div>
</div>
{% endfor %}
</div>
</div>
</div>
{% endif %}
{# ————— Itinéraire jour par jour ————— #}
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h2 class=\"h5 txt-ot-brown fw-bold mb-3\">Itinéraire — jour par jour</h2>
<div class=\"list-group list-group-flush\">
{% for it in itinerary %}
<div class=\"list-group-item px-0\">
<button class=\"btn w-100 d-flex justify-content-between align-items-center text-start\" data-bs-toggle=\"collapse\" data-bs-target=\"#day{{ loop.index }}\" aria-expanded=\"false\">
<span class=\"fw-bold \">Jour {{loop.index}} - {{it.title }}{% if it.kmLabel %} <span class=\"text-muted fw-normal\"> ({{ it.kmLabel }}) km</span>{% endif %}</span>
<i class=\"bi bi-chevron-down\"></i>
</button>
<div id=\"day{{ loop.index }}\" class=\"collapse mt-2\">
<p class=\"small text-muted mb-0\">{{ it.details }}</p>
</div>
</div>
{% endfor %}
</div>
<p class=\"small text-muted mt-3 mb-0\">Données synthétisées de la brochure.</p>
</div>
</div>
</div>
{# — CAROUSEL #}
<div class=\"col-12 col-lg-6 d-flex\">
<div class=\"w-100 d-flex align-items-center\">
<div id=\"circuitCarousel\"
class=\"carousel slide rounded-4 overflow-hidden shadow-sm w-100\"
data-bs-ride=\"carousel\"
data-bs-interval=\"5000\"
data-bs-pause=\"hover\"
data-bs-touch=\"true\"
aria-label=\"Galerie circuit\">
<div class=\"carousel-inner\">
{% for p in photoItinerary %}
<div class=\"carousel-item {% if loop.first %}active{% endif %}\">
<div class=\"ratio ratio-4x3\">
<img src=\"{{asset('img/' ~ p.offer.file ~ '/' ~ p.offer.slug ~ '/itinerary/' ~ p.img)}}\" class=\"d-block w-100 h-100 object-fit-cover\" alt=\"Photo circuit {{ loop.index }}\">
</div>
</div>
{% endfor %}
</div>
<button class=\"carousel-control-prev\" type=\"button\" data-bs-target=\"#circuitCarousel\" data-bs-slide=\"prev\">
<span class=\"carousel-control-prev-icon\" aria-hidden=\"true\"></span>
<span class=\"visually-hidden\">Précédent</span>
</button>
<button class=\"carousel-control-next\" type=\"button\" data-bs-target=\"#circuitCarousel\" data-bs-slide=\"next\">
<span class=\"carousel-control-next-icon\" aria-hidden=\"true\"></span>
<span class=\"visually-hidden\">Suivant</span>
</button>
<div class=\"carousel-indicators\">
{% for p in photoItinerary %}
<button type=\"button\"
data-bs-target=\"#circuitCarousel\"
data-bs-slide-to=\"{{ loop.index0 }}\"
class=\"{% if loop.first %}active{% endif %}\"
aria-current=\"{{ loop.first ? 'true' : 'false' }}\"
aria-label=\"Slide {{ loop.index }}\"></button>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
</section>
{% if hebergementOffer %}
{# =====================================================
5) HÔTELS — liste ou tableau simple
===================================================== #}
<section class=\"py-5 bg-body-tertiary\" id=\"hotels\">
<div class=\"container\">
<h2 class=\"h3 txt-ot-brown fw-bold mb-3\">Hébergements prévus (ou similaires)</h2>
<ul class=\"list-group\">
{% for h in hebergementOffer %}<li class=\"list-group-item\">{{ h.name }}</li>{% endfor %}
</ul>
</div>
</section>
{% endif %}
{% if offer.widget %}
<div class=\"container\">
<h2 class=\"h3 txt-ot-brown fw-bold mb-3\">Activités</h2>
<div class=\"widget\">
{{offer.widget|raw}}
</div>
</div>
{% endif %}
{% if included %}
{# =====================================================
6) INCLUS / NON INCLUS — deux colonnes
===================================================== #}
<section class=\"py-5 bg-white\" id=\"inclus\">
<div class=\"container\">
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Inclus</h2>
<ul class=\"small mb-0 list-unstyled\">
{% for i in included|filter(i => i.type == 'in') %}
<li>✔️ {{ i.label }}</li>
{% endfor %}
</ul>
</div>
</div>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Non inclus</h2>
<ul class=\"small mb-0 list-unstyled\">
{% for e in included|filter(e => e.type == 'out') %}
<li>— {{ e.label }}</li>
{% endfor %}
</ul>
</div>
</div>
</div>
</div>
</div>
</section>
{% endif %}
{#
<div class=\"card border-0 shadow-sm rounded-4\">
<div class=\"card-body\">
<h3 class=\"h6 fw-bold mb-2\">Tarifs</h3>
{% set roomPrices = offer.roomPrices|default([
{label:'Double', price:4730},
{label:'Triple', price:4410},
{label:'Quadruple', price:4140},
{label:'Single', price:null}
]) %}
<div class=\"row row-cols-2 g-2\">
{% for r in roomPrices %}
<div class=\"col\">
<div class=\"border rounded-3 p-2 small h-100 d-flex justify-content-between\">
<span class=\"text-muted\">{{ r.label }}</span>
<strong>{% if r.price %}{{ r.price }}€{% else %}—{% endif %}</strong>
</div>
</div>
{% endfor %}
</div>
<p class=\"small text-muted mb-0 mt-2\">Tarifs/personne, sous réserve de dispo & modifs. :contentReference[oaicite:3]{index=3}</p>
</div>
</div> #}
{% if flight %}
{# =====================================================
7) VOLS & HORAIRES — bloc détaillé
===================================================== #}
<section class=\"py-5 bg-body-tertiary\" id=\"vols\">
<div class=\"container\">
<h2 class=\"h3 txt-ot-brown fw-bold mb-3\">Vols & horaires (indicatifs)</h2>
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h3 class=\"h6 fw-bold mb-2\">Aller</h3>
<ul class=\"small mb-0\">
{% for f in flight %}
{% if f.type == '1' %}
<li>{{ f.departureCity }} → {{ f.departureCity }} {{f.departureTime}} / {{f.arrivalTime}} </li>
{% endif %}
{% endfor %}
</ul>
</div>
</div>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4 h-100\">
<div class=\"card-body\">
<h3 class=\"h6 fw-bold mb-2\">Retour</h3>
<ul class=\"small mb-0\">
{% for f in flight %}
{% if f.type == '2' %}
<li>{{ f.departureCity }} → {{ f.departureCity }} {{f.departureTime}} / {{f.arrivalTime}} </li>
{% endif %}
{% endfor %}
</ul>
</div>
</div>
</div>
</div>
<p class=\"small text-muted mt-3 mb-0\">Horaires et compagnies susceptibles d’évolution. À confirmer à l’émission des billets.</p>
</div>
</section>
{% endif %}
{% if infos %}
{# =====================================================
9) FACILITÉS DE PAIEMENT — encart
===================================================== #}
<section class=\"py-5 bg-body-tertiary\" id=\"paiement\">
<div class=\"container\">
<div class=\"row g-4\">
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Facilités de paiement</h2>
<ul class=\"small mb-0\">
{% for line in offer.paymentMethod|split(\"\\n\") %}
<li class=\"mb-1\">✔️ {{ line }}</li>
{% endfor %}
</ul>
</div>
</div>
</div>
<div class=\"col-12 col-lg-6\">
<div class=\"card border-0 shadow-sm rounded-4\">
<div class=\"card-body\">
<h2 class=\"h5 fw-bold txt-ot-brown\">Formalités</h2>
<ul class=\"small mb-0\">
{% for line in offer.formalities|split(\"\\n\") %}
<li class=\"mb-1\">✔️ {{ line }}</li>
{% endfor %}
</ul>
</div>
</div>
</div>
</div>
</div>
</section>
{% endif %}
{# =====================================================
11) CTA FINAL — devis & contact
===================================================== #}
<section class=\"py-5 bg-ot-green text-white text-center\">
<div class=\"container\">
<h2 class=\"h4 fw-bold mb-2\">Envie de rejoindre le {{offer.title}} ?</h2>
<p class=\"mb-4\">Parlez à un conseiller Otropik : on s’occupe de tout.</p>
<div class=\"d-flex gap-2 justify-content-center flex-wrap\">
<a href=\"{{ path('o.devis') }}\" class=\"btn btn-light rounded-pill\">Demander un devis</a>
<a href=\"tel:0590505134\" class=\"btn btn-outline-light rounded-pill\">Appeler</a>
</div>
</div>
</section>
{% endblock %}
", "default/roadtrip-destination.html.twig", "/home/ladomitiyc/otropik/templates/default/roadtrip-destination.html.twig");
}
}