<?phpuse 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;use Twig\TemplateWrapper;/* application/whileresume/website/components/footer.html.twig */class __TwigTemplate_5ff04064cf35ccc3c1eb2a55968b72e6 extends Template{ private Source $source; /** * @var array<string, Template> */ private array $macros = []; public function __construct(Environment $env) { parent::__construct($env); $this->source = $this->getSourceContext(); $this->parent = false; $this->blocks = [ ]; } protected function doDisplay(array $context, array $blocks = []): iterable { $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", "application/whileresume/website/components/footer.html.twig")); $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"]; $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "application/whileresume/website/components/footer.html.twig")); // line 34 yield ""; // line 35 $context["_locale"] = 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.', 35, $this->source); })()), "request", [], "any", false, false, false, 35), "locale", [], "any", false, false, false, 35); // line 36 $context["_isFr"] = ((isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 36, $this->source); })()) == "fr"); // line 37 yield ""; // line 39 $context["footerArticles"] = $this->extensions['App\Twig\CoreExtension']->getFooterArticles((isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 39, $this->source); })()), 5); // line 40 $context["footerLandingJobs"] = $this->extensions['App\Twig\CoreExtension']->getFooterFeaturedLandingJobs((isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 40, $this->source); })()), 5); // line 41 $context["footerJobsCities"] = $this->extensions['App\Twig\CoreExtension']->getFooterJobsCities((isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 41, $this->source); })()), 6); // line 42 $context["footerEnterprisesCities"] = $this->extensions['App\Twig\CoreExtension']->getFooterEnterprisesCities((isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 42, $this->source); })()), 6); // line 43 yield "<style> /* ---------- Footer WhileResume ---------- */ .whr-footer { margin-top: 32px; padding: 36px 24px 24px; background: #F9FAFD; border-radius: 16px; color: #2c2c46; } .theme-dark .whr-footer { background: #2a2a3c; color: #e9e9ef; } /* Stores en haut de la col 1 */ .whr-footer .whr-stores { display: flex; flex-direction: column; gap: 8px; margin-bottom: 18px; } .whr-footer .whr-store-link { display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px; background: #111; color: #fff !important; border-radius: 10px; font-size: 12px; font-weight: 600; text-decoration: none !important; line-height: 1.2; transition: transform .15s ease, background .2s ease; max-width: 170px; } .whr-footer .whr-store-link:hover { background: #2c2c46; transform: translateY(-1px); } .whr-footer .whr-store-link small { display: block; font-weight: 400; font-size: 10px; opacity: .7; } .whr-footer .whr-store-link strong { font-size: 13px; display: block; } /* Colonnes */ .whr-footer .whr-foot-col h4 { font-size: 13px; font-weight: 700; margin: 0 0 14px 0; color: inherit; text-transform: uppercase; letter-spacing: .3px; } .whr-footer .whr-foot-col ul { list-style: none; padding: 0; margin: 0; font-size: 13px; } .whr-footer .whr-foot-col ul li { margin-bottom: 10px; } .whr-footer .whr-foot-col a { color: inherit; opacity: .75; text-decoration: none; transition: opacity .2s ease, color .2s ease; } .whr-footer .whr-foot-col a:hover { opacity: 1; color: var(--theme-color, #6C3AED); } .whr-footer .whr-foot-empty { font-size: 12px; opacity: .5; font-style: italic; } /* Liste avec icônes (col 1) */ .whr-footer .whr-foot-action-links a { display: inline-flex; align-items: center; gap: 8px; } .whr-footer .whr-foot-action-links a i { font-size: 14px; opacity: .7; width: 16px; text-align: center; } /* Mini-icône ville pour cols 3 et 4 */ .whr-footer .whr-foot-col .whr-city-link { display: inline-flex; align-items: center; gap: 6px; } .whr-footer .whr-foot-col .whr-city-link .whr-city-icon { font-size: 14px; line-height: 1; display: inline-block; width: 18px; text-align: center; opacity: .85; } /* Grille principale : 1 col → 2 cols → 5 cols */ .whr-footer .whr-foot-grid { display: grid; gap: 28px; grid-template-columns: 1fr; } @media (min-width: 576px) { .whr-footer .whr-foot-grid { grid-template-columns: 1fr 1fr; } } @media (min-width: 992px) { .whr-footer .whr-foot-grid { grid-template-columns: repeat(5, 1fr); gap: 32px; } } /* Bottom bar */ .whr-footer .whr-foot-bottom { margin-top: 32px; padding-top: 20px; border-top: 1px solid rgba(0,0,0,.08); display: flex; flex-direction: column; gap: 14px; align-items: center; text-align: center; } .theme-dark .whr-footer .whr-foot-bottom { border-top-color: rgba(255,255,255,.1); } @media (min-width: 768px) { .whr-footer .whr-foot-bottom { flex-direction: row; justify-content: space-between; text-align: left; } } .whr-footer .whr-foot-copy { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; opacity: .7; margin: 0; } .whr-footer .whr-foot-copy img.whr-favicon { width: 18px; height: 18px; border-radius: 4px; flex-shrink: 0; } .whr-footer .whr-foot-legal { display: flex; flex-wrap: wrap; gap: 6px 16px; justify-content: center; font-size: 12px; } .whr-footer .whr-foot-legal a { color: inherit; opacity: .75; text-decoration: none; } .whr-footer .whr-foot-legal a:hover { opacity: 1; } .whr-footer .whr-foot-legal .whr-admin-link { color: #e74c3c !important; opacity: 1; } .whr-footer .whr-foot-social { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; padding: 0; margin: 0; } .whr-footer .whr-foot-social a { width: 32px; height: 32px; border-radius: 8px; background: #fff; display: inline-flex; align-items: center; justify-content: center; color: #2c2c46; text-decoration: none !important; transition: background .2s ease, color .2s ease, transform .15s ease; box-shadow: 0 1px 2px rgba(0,0,0,.04); } .whr-footer .whr-foot-social a:hover { background: var(--theme-color, #6C3AED); color: #fff; transform: translateY(-1px); } .theme-dark .whr-footer .whr-foot-social a { background: #34344a; color: #fff; box-shadow: none; } .whr-footer .whr-foot-social i { font-size: 14px; } .middle-sidebar-left .whr-footer { width: 100%; } @media (max-width: 575.98px) { .whr-footer { padding: 24px 18px 20px; } }</style><footer class=\"whr-footer\" role=\"contentinfo\"> "; // line 258 yield " <div class=\"whr-foot-grid\"> "; // line 261 yield " "; if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 261, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 262 yield " "; $context["_ios"] = (isset($context["ios_fr"]) || array_key_exists("ios_fr", $context) ? $context["ios_fr"] : (function () { throw new RuntimeError('Variable "ios_fr" does not exist.', 262, $this->source); })()); // line 263 yield " "; $context["_android"] = (isset($context["android_fr"]) || array_key_exists("android_fr", $context) ? $context["android_fr"] : (function () { throw new RuntimeError('Variable "android_fr" does not exist.', 263, $this->source); })()); // line 264 yield " "; } else { // line 265 yield " "; $context["_ios"] = (isset($context["ios_us"]) || array_key_exists("ios_us", $context) ? $context["ios_us"] : (function () { throw new RuntimeError('Variable "ios_us" does not exist.', 265, $this->source); })()); // line 266 yield " "; $context["_android"] = (isset($context["android_us"]) || array_key_exists("android_us", $context) ? $context["android_us"] : (function () { throw new RuntimeError('Variable "android_us" does not exist.', 266, $this->source); })()); // line 267 yield " "; } // line 268 yield " <div class=\"whr-foot-col whr-foot-col-action\"> "; // line 270 if ((($tmp = (isset($context["connectUser"]) || array_key_exists("connectUser", $context) ? $context["connectUser"] : (function () { throw new RuntimeError('Variable "connectUser" does not exist.', 270, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 271 yield " <h4>"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.my_account", [], "whr-public"), "Mon compte"), "html", null, true); yield "</h4> "; } else { // line 273 yield " <h4>"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.start_here", [], "whr-public"), "Commencer ici"), "html", null, true); yield "</h4> "; } // line 275 yield " <div class=\"whr-stores\"> "; // line 277 if ((($tmp = (isset($context["_ios"]) || array_key_exists("_ios", $context) ? $context["_ios"] : (function () { throw new RuntimeError('Variable "_ios" does not exist.', 277, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 278 yield " <a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["_ios"]) || array_key_exists("_ios", $context) ? $context["_ios"] : (function () { throw new RuntimeError('Variable "_ios" does not exist.', 278, $this->source); })()), "html", null, true); yield "\" class=\"whr-store-link\" target=\"_blank\" rel=\"noopener\" aria-label=\"App Store\"> <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"#fff\" aria-hidden=\"true\"> <path d=\"M18.71 19.5C17.88 20.74 17 21.95 15.66 21.97C14.32 22 13.89 21.18 12.37 21.18C10.84 21.18 10.37 21.95 9.09997 22C7.78997 22.05 6.79997 20.68 5.95997 19.47C4.24997 17 2.93997 12.45 4.69997 9.39C5.56997 7.87 7.12997 6.91 8.81997 6.88C10.1 6.86 11.32 7.75 12.11 7.75C12.89 7.75 14.37 6.68 15.92 6.84C16.57 6.87 18.39 7.1 19.56 8.82C19.47 8.88 17.39 10.1 17.41 12.63C17.44 15.65 20.06 16.66 20.09 16.67C20.06 16.74 19.67 18.11 18.71 19.5ZM13 3.5C13.73 2.67 14.94 2.04 15.94 2C16.07 3.17 15.6 4.35 14.9 5.19C14.21 6.04 13.07 6.7 11.95 6.61C11.8 5.46 12.36 4.26 13 3.5Z\"/> </svg> <span> <small>"; // line 283 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.download_on", [], "whr-public"), "Télécharger sur"), "html", null, true); yield "</small> <strong>App Store</strong> </span> </a> "; } // line 288 yield " "; if ((($tmp = (isset($context["_android"]) || array_key_exists("_android", $context) ? $context["_android"] : (function () { throw new RuntimeError('Variable "_android" does not exist.', 288, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 289 yield " <a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["_android"]) || array_key_exists("_android", $context) ? $context["_android"] : (function () { throw new RuntimeError('Variable "_android" does not exist.', 289, $this->source); })()), "html", null, true); yield "\" class=\"whr-store-link\" target=\"_blank\" rel=\"noopener\" aria-label=\"Google Play\"> <svg width=\"18\" height=\"18\" viewBox=\"0 0 512 512\" aria-hidden=\"true\"> <path style=\"fill:#3A9BC8;\" d=\"M225.656,256.052L14.016,485.451l-6.442,7.052c-4.005-5.919-6.704-12.972-7.313-20.806C0.087,470.305,0,468.91,0,467.518V44.499c0-9.488,2.873-18.02,7.574-24.987L225.656,256.052z\"/> <path style=\"fill:#9BCD83;\" d=\"M320.811,152.8l-95.155,103.253L7.574,19.512C19.936,1.405,45.183-6.342,66.6,6.02L320.811,152.8z\"/> <path style=\"fill:#EEB84C;\" d=\"M455.056,257.27c-0.348,14.453-7.748,28.904-22.113,37.174l-112.132,64.771l-95.155-103.163L320.811,152.8l70.518,40.745l41.614,24.026C448.178,226.366,455.579,241.861,455.056,257.27z\"/> <path style=\"fill:#B43F70;\" d=\"M7.591,492.492c12.368,18.116,37.599,25.838,58.976,13.496L320.775,359.22l-95.156-103.209L7.591,492.492z\"/> </svg> <span> <small>"; // line 297 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.available_on", [], "whr-public"), "Disponible sur"), "html", null, true); yield "</small> <strong>Google Play</strong> </span> </a> "; } // line 302 yield " </div> <ul class=\"whr-foot-action-links\"> "; // line 305 if ((($tmp = (isset($context["connectUser"]) || array_key_exists("connectUser", $context) ? $context["connectUser"] : (function () { throw new RuntimeError('Variable "connectUser" does not exist.', 305, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 306 yield " "; if ((($tmp = (isset($context["isCandidateUser"]) || array_key_exists("isCandidateUser", $context) ? $context["isCandidateUser"] : (function () { throw new RuntimeError('Variable "isCandidateUser" does not exist.', 306, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 307 yield " <li> <a href=\""; // line 308 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 308, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_cvs_gestion_candidates_profile_profile", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 308, $this->source); })())]), "html", null, true); } else { yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("cvs_gestion_candidates_profile_profile"); } yield "\"> <i class=\"feather-user\"></i> "; // line 310 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.my_profile", [], "whr-public"), "Mon profil"), "html", null, true); yield " </a> </li> "; } else { // line 314 yield " <li> <a href=\""; // line 315 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 315, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_cvs_gestion_enterprises_profile_profile", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 315, $this->source); })())]), "html", null, true); } else { yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("cvs_gestion_enterprises_profile_profile"); } yield "\"> <i class=\"feather-user\"></i> "; // line 317 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.my_profile", [], "whr-public"), "Mon profil"), "html", null, true); yield " </a> </li> <li> <a href=\""; // line 321 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 321, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_cvs_gestion_enterprises_settings", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 321, $this->source); })())]), "html", null, true); } else { yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("cvs_gestion_enterprises_settings"); } yield "\"> <i class=\"feather-settings\"></i> "; // line 323 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.settings", [], "whr-public"), "Paramètres"), "html", null, true); yield " </a> </li> "; } // line 327 yield " <li> <a href=\""; // line 328 yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_logout"); yield "\"> <i class=\"feather-log-out\"></i> "; // line 330 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.logout", [], "whr-public"), "Déconnexion"), "html", null, true); yield " </a> </li> "; } else { // line 334 yield " "; // line 335 yield " <li> <a href=\""; // line 336 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 336, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_whileresume_jobs_list", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 336, $this->source); })())]), "html", null, true); } else { yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("whileresume_jobs_list"); } yield "\"> <i class=\"feather-briefcase\"></i> "; // line 338 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.browse_jobs", [], "whr-public"), "Voir les offres"), "html", null, true); yield " </a> </li> <li> <a href=\""; // line 342 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 342, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_whileresume_companies_list", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 342, $this->source); })())]), "html", null, true); } else { yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("whileresume_companies_list"); } yield "\"> <i class=\"feather-grid\"></i> "; // line 344 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.browse_companies", [], "whr-public"), "Voir les entreprises"), "html", null, true); yield " </a> </li> <li> <a href=\""; // line 348 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 348, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_cvs_application_job_new", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 348, $this->source); })())]), "html", null, true); } else { yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("cvs_application_job_new"); } yield "\"> <i class=\"feather-plus-circle\"></i> "; // line 350 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.post_job", [], "whr-public"), "Publier une offre"), "html", null, true); yield " </a> </li> "; } // line 354 yield " </ul> </div> "; // line 358 yield " <div class=\"whr-foot-col\"> <h4>"; // line 359 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.latest_articles", [], "whr-public"), "Articles récents"), "html", null, true); yield "</h4> "; // line 360 if ((($tmp = !Twig\Extension\CoreExtension::testEmpty((isset($context["footerArticles"]) || array_key_exists("footerArticles", $context) ? $context["footerArticles"] : (function () { throw new RuntimeError('Variable "footerArticles" does not exist.', 360, $this->source); })()))) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 361 yield " <ul> "; // line 362 $context['_parent'] = $context; $context['_seq'] = CoreExtension::ensureTraversable((isset($context["footerArticles"]) || array_key_exists("footerArticles", $context) ? $context["footerArticles"] : (function () { throw new RuntimeError('Variable "footerArticles" does not exist.', 362, $this->source); })())); foreach ($context['_seq'] as $context["_key"] => $context["article"]) { // line 363 yield " <li> <a href=\""; // line 364 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 364, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_cvs_website_article", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 364, $this->source); })()), "slug" => CoreExtension::getAttribute($this->env, $this->source, $context["article"], "slug", [], "any", false, false, false, 364)]), "html", null, true); } else { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("cvs_website_article", ["slug" => CoreExtension::getAttribute($this->env, $this->source, $context["article"], "slug", [], "any", false, false, false, 364)]), "html", null, true); } yield "\" title=\""; // line 365 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["article"], "title", [], "any", false, false, false, 365), "html", null, true); yield "\"> "; // line 366 yield ((CoreExtension::getAttribute($this->env, $this->source, $context["article"], "shortTitle", [], "any", false, false, false, 366)) ? ($this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["article"], "shortTitle", [], "any", false, false, false, 366), "html", null, true)) : ($this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['App\Twig\CoreExtension']->cleanSubstr(CoreExtension::getAttribute($this->env, $this->source, $context["article"], "title", [], "any", false, false, false, 366), 45), "html", null, true))); yield " </a> </li> "; } $_parent = $context['_parent']; unset($context['_seq'], $context['_key'], $context['article'], $context['_parent']); $context = array_intersect_key($context, $_parent) + $_parent; // line 370 yield " </ul> "; } else { // line 372 yield " <p class=\"whr-foot-empty\">"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.coming_soon", [], "whr-public"), "Bientôt disponible"), "html", null, true); yield "</p> "; } // line 374 yield " </div> "; // line 377 yield " <div class=\"whr-foot-col\"> <h4>"; // line 378 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.jobs_by_city", [], "whr-public"), "Emplois par ville"), "html", null, true); yield "</h4> "; // line 379 if ((($tmp = !Twig\Extension\CoreExtension::testEmpty((isset($context["footerJobsCities"]) || array_key_exists("footerJobsCities", $context) ? $context["footerJobsCities"] : (function () { throw new RuntimeError('Variable "footerJobsCities" does not exist.', 379, $this->source); })()))) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 380 yield " <ul> "; // line 381 $context['_parent'] = $context; $context['_seq'] = CoreExtension::ensureTraversable((isset($context["footerJobsCities"]) || array_key_exists("footerJobsCities", $context) ? $context["footerJobsCities"] : (function () { throw new RuntimeError('Variable "footerJobsCities" does not exist.', 381, $this->source); })())); foreach ($context['_seq'] as $context["_key"] => $context["city"]) { // line 382 yield " <li> <a class=\"whr-city-link\" href=\""; // line 384 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 384, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_cvs_application_jobs_filter", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 384, $this->source); })()), "slug" => CoreExtension::getAttribute($this->env, $this->source, $context["city"], "slug", [], "any", false, false, false, 384)]), "html", null, true); } else { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("cvs_application_jobs_filter", ["slug" => CoreExtension::getAttribute($this->env, $this->source, $context["city"], "slug", [], "any", false, false, false, 384)]), "html", null, true); } yield "\" title=\""; // line 385 yield ((CoreExtension::getAttribute($this->env, $this->source, $context["city"], "shortTitle", [], "any", false, false, false, 385)) ? ($this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "shortTitle", [], "any", false, false, false, 385), "html", null, true)) : ($this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "label", [], "any", false, false, false, 385), "html", null, true))); yield "\"> "; // line 386 if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, $context["city"], "icon", [], "any", false, false, false, 386)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 387 yield " <span class=\"whr-city-icon\">"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "icon", [], "any", false, false, false, 387), "html", null, true); yield "</span> "; } else { // line 389 yield " <i class=\"feather-map-pin whr-city-icon\"></i> "; } // line 391 yield " <span>"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "label", [], "any", false, false, false, 391), "html", null, true); yield "</span> </a> </li> "; } $_parent = $context['_parent']; unset($context['_seq'], $context['_key'], $context['city'], $context['_parent']); $context = array_intersect_key($context, $_parent) + $_parent; // line 395 yield " </ul> "; } else { // line 397 yield " <p class=\"whr-foot-empty\">"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.coming_soon", [], "whr-public"), "Bientôt disponible"), "html", null, true); yield "</p> "; } // line 399 yield " </div> "; // line 402 yield " <div class=\"whr-foot-col\"> <h4>"; // line 403 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.companies_by_city", [], "whr-public"), "Entreprises par ville"), "html", null, true); yield "</h4> "; // line 404 if ((($tmp = !Twig\Extension\CoreExtension::testEmpty((isset($context["footerEnterprisesCities"]) || array_key_exists("footerEnterprisesCities", $context) ? $context["footerEnterprisesCities"] : (function () { throw new RuntimeError('Variable "footerEnterprisesCities" does not exist.', 404, $this->source); })()))) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 405 yield " <ul> "; // line 406 $context['_parent'] = $context; $context['_seq'] = CoreExtension::ensureTraversable((isset($context["footerEnterprisesCities"]) || array_key_exists("footerEnterprisesCities", $context) ? $context["footerEnterprisesCities"] : (function () { throw new RuntimeError('Variable "footerEnterprisesCities" does not exist.', 406, $this->source); })())); foreach ($context['_seq'] as $context["_key"] => $context["city"]) { // line 407 yield " <li> <a class=\"whr-city-link\" href=\""; // line 409 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 409, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_cvs_application_companies_filter", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 409, $this->source); })()), "slug" => CoreExtension::getAttribute($this->env, $this->source, $context["city"], "slug", [], "any", false, false, false, 409)]), "html", null, true); } else { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("cvs_application_companies_filter", ["slug" => CoreExtension::getAttribute($this->env, $this->source, $context["city"], "slug", [], "any", false, false, false, 409)]), "html", null, true); } yield "\" title=\""; // line 410 yield ((CoreExtension::getAttribute($this->env, $this->source, $context["city"], "shortTitle", [], "any", false, false, false, 410)) ? ($this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "shortTitle", [], "any", false, false, false, 410), "html", null, true)) : ($this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "label", [], "any", false, false, false, 410), "html", null, true))); yield "\"> "; // line 411 if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, $context["city"], "icon", [], "any", false, false, false, 411)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 412 yield " <span class=\"whr-city-icon\">"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "icon", [], "any", false, false, false, 412), "html", null, true); yield "</span> "; } else { // line 414 yield " <i class=\"feather-map-pin whr-city-icon\"></i> "; } // line 416 yield " <span>"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["city"], "label", [], "any", false, false, false, 416), "html", null, true); yield "</span> </a> </li> "; } $_parent = $context['_parent']; unset($context['_seq'], $context['_key'], $context['city'], $context['_parent']); $context = array_intersect_key($context, $_parent) + $_parent; // line 420 yield " </ul> "; } else { // line 422 yield " <p class=\"whr-foot-empty\">"; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.coming_soon", [], "whr-public"), "Bientôt disponible"), "html", null, true); yield "</p> "; } // line 424 yield " </div> "; // line 429 yield " <div class=\"whr-foot-col\"> <h4>"; // line 430 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.footer.featured_pages", [], "whr-public"), "À découvrir"), "html", null, true); yield "</h4> "; // line 431 if ((($tmp = !Twig\Extension\CoreExtension::testEmpty((isset($context["footerLandingJobs"]) || array_key_exists("footerLandingJobs", $context) ? $context["footerLandingJobs"] : (function () { throw new RuntimeError('Variable "footerLandingJobs" does not exist.', 431, $this->source); })()))) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 432 yield " <ul> "; // line 433 $context['_parent'] = $context; $context['_seq'] = CoreExtension::ensureTraversable((isset($context["footerLandingJobs"]) || array_key_exists("footerLandingJobs", $context) ? $context["footerLandingJobs"] : (function () { throw new RuntimeError('Variable "footerLandingJobs" does not exist.', 433, $this->source); })())); foreach ($context['_seq'] as $context["_key"] => $context["landing"]) { // line 434 yield " <li> <a href=\""; // line 435 if ((($tmp = (isset($context["_isFr"]) || array_key_exists("_isFr", $context) ? $context["_isFr"] : (function () { throw new RuntimeError('Variable "_isFr" does not exist.', 435, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("locale_whileresume_homepage_landing", ["_locale" => (isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 435, $this->source); })()), "slug" => CoreExtension::getAttribute($this->env, $this->source, $context["landing"], "slug", [], "any", false, false, false, 435)]), "html", null, true); } else { yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("whileresume_homepage_landing", ["slug" => CoreExtension::getAttribute($this->env, $this->source, $context["landing"], "slug", [], "any", false, false, false, 435)]), "html", null, true); } yield "\"> "; // line 436 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["landing"], "title", [], "any", false, false, false, 436), "html", null, true); yield " </a> </li> "; } $_parent = $context['_parent']; unset($context['_seq'], $context['_key'], $context['landing'], $context['_parent']); $context = array_intersect_key($context, $_parent) + $_parent; // line 440 yield " </ul> "; } // line 442 yield " </div> </div> "; // line 446 yield " <div class=\"whr-foot-bottom\"> <p class=\"whr-foot-copy\"> "; // line 448 if ((($tmp = (isset($context["favicon"]) || array_key_exists("favicon", $context) ? $context["favicon"] : (function () { throw new RuntimeError('Variable "favicon" does not exist.', 448, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 449 yield " <img src=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["favicon"]) || array_key_exists("favicon", $context) ? $context["favicon"] : (function () { throw new RuntimeError('Variable "favicon" does not exist.', 449, $this->source); })()), "html", null, true); yield "\" alt=\"\" class=\"whr-favicon\" /> "; } // line 451 yield " <span>© "; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate("now", "Y"), "html", null, true); yield " "; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["websitename"]) || array_key_exists("websitename", $context) ? $context["websitename"] : (function () { throw new RuntimeError('Variable "websitename" does not exist.', 451, $this->source); })()), "html", null, true); yield ". "; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::default($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("layout.rights_reserved", [], "whr-public"), "Tous droits réservés."), "html", null, true); yield "</span> </p> <div class=\"whr-foot-legal\"> "; // line 455 $context["menuFooter"] = $this->extensions['App\Twig\MenuExtension']->getMenuWebsiteLocaleArray((isset($context["_locale"]) || array_key_exists("_locale", $context) ? $context["_locale"] : (function () { throw new RuntimeError('Variable "_locale" does not exist.', 455, $this->source); })()), "footer", (isset($context["connectUser"]) || array_key_exists("connectUser", $context) ? $context["connectUser"] : (function () { throw new RuntimeError('Variable "connectUser" does not exist.', 455, $this->source); })())); // line 456 yield " "; if ((($tmp = !Twig\Extension\CoreExtension::testEmpty((isset($context["menuFooter"]) || array_key_exists("menuFooter", $context) ? $context["menuFooter"] : (function () { throw new RuntimeError('Variable "menuFooter" does not exist.', 456, $this->source); })()))) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 457 yield " "; $context['_parent'] = $context; $context['_seq'] = CoreExtension::ensureTraversable((isset($context["menuFooter"]) || array_key_exists("menuFooter", $context) ? $context["menuFooter"] : (function () { throw new RuntimeError('Variable "menuFooter" does not exist.', 457, $this->source); })())); foreach ($context['_seq'] as $context["_key"] => $context["m"]) { // line 458 yield " <a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["m"], "link", [], "any", false, false, false, 458), "html", null, true); yield "\" aria-label=\""; // line 459 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["m"], "title", [], "any", false, false, false, 459), "html", null, true); yield "\" title=\""; // line 460 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["m"], "title", [], "any", false, false, false, 460), "html", null, true); yield "\" "; // line 461 if ((CoreExtension::getAttribute($this->env, $this->source, $context["m"], "targetBlank", [], "any", false, false, false, 461) == 1)) { yield "target=\"_blank\" rel=\"noreferrer\""; } yield "> "; // line 462 yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["m"], "title", [], "any", false, false, false, 462), "html", null, true); yield " </a> "; } $_parent = $context['_parent']; unset($context['_seq'], $context['_key'], $context['m'], $context['_parent']); $context = array_intersect_key($context, $_parent) + $_parent; // line 465 yield " "; } // line 466 yield " "; if (( !(null === 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.', 466, $this->source); })()), "user", [], "any", false, false, false, 466)) && $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_SUPER_ADMIN"))) { // line 467 yield " <a href=\""; yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("backoffice_dashboard"); yield "\" class=\"whr-admin-link\" title=\"Administration\"> <i class=\"feather-settings\"></i> Administration </a> "; } // line 471 yield " </div> <ul class=\"whr-foot-social\"> "; // line 474 if ((($tmp = (isset($context["facebook"]) || array_key_exists("facebook", $context) ? $context["facebook"] : (function () { throw new RuntimeError('Variable "facebook" does not exist.', 474, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 475 yield " <li><a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["facebook"]) || array_key_exists("facebook", $context) ? $context["facebook"] : (function () { throw new RuntimeError('Variable "facebook" does not exist.', 475, $this->source); })()), "html", null, true); yield "\" target=\"_blank\" rel=\"noopener\" aria-label=\"Facebook\"><i class=\"feather-facebook\"></i></a></li> "; } // line 477 yield " "; if ((($tmp = (isset($context["twitter"]) || array_key_exists("twitter", $context) ? $context["twitter"] : (function () { throw new RuntimeError('Variable "twitter" does not exist.', 477, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 478 yield " <li><a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["twitter"]) || array_key_exists("twitter", $context) ? $context["twitter"] : (function () { throw new RuntimeError('Variable "twitter" does not exist.', 478, $this->source); })()), "html", null, true); yield "\" target=\"_blank\" rel=\"noopener\" aria-label=\"X / Twitter\"><i class=\"feather-twitter\"></i></a></li> "; } // line 480 yield " "; if ((($tmp = (isset($context["instagram"]) || array_key_exists("instagram", $context) ? $context["instagram"] : (function () { throw new RuntimeError('Variable "instagram" does not exist.', 480, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 481 yield " <li><a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["instagram"]) || array_key_exists("instagram", $context) ? $context["instagram"] : (function () { throw new RuntimeError('Variable "instagram" does not exist.', 481, $this->source); })()), "html", null, true); yield "\" target=\"_blank\" rel=\"noopener\" aria-label=\"Instagram\"><i class=\"feather-instagram\"></i></a></li> "; } // line 483 yield " "; if ((($tmp = (isset($context["linkedin"]) || array_key_exists("linkedin", $context) ? $context["linkedin"] : (function () { throw new RuntimeError('Variable "linkedin" does not exist.', 483, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 484 yield " <li><a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["linkedin"]) || array_key_exists("linkedin", $context) ? $context["linkedin"] : (function () { throw new RuntimeError('Variable "linkedin" does not exist.', 484, $this->source); })()), "html", null, true); yield "\" target=\"_blank\" rel=\"noopener\" aria-label=\"LinkedIn\"><i class=\"feather-linkedin\"></i></a></li> "; } // line 486 yield " "; if ((($tmp = (isset($context["youtube"]) || array_key_exists("youtube", $context) ? $context["youtube"] : (function () { throw new RuntimeError('Variable "youtube" does not exist.', 486, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) { // line 487 yield " <li><a href=\""; yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["youtube"]) || array_key_exists("youtube", $context) ? $context["youtube"] : (function () { throw new RuntimeError('Variable "youtube" does not exist.', 487, $this->source); })()), "html", null, true); yield "\" target=\"_blank\" rel=\"noopener\" aria-label=\"YouTube\"><i class=\"feather-youtube\"></i></a></li> "; } // line 489 yield " </ul> </div></footer>"; $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof); $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof); yield from []; } /** * @codeCoverageIgnore */ public function getTemplateName(): string { return "application/whileresume/website/components/footer.html.twig"; } /** * @codeCoverageIgnore */ public function isTraitable(): bool { return false; } /** * @codeCoverageIgnore */ public function getDebugInfo(): array { return array ( 872 => 489, 866 => 487, 863 => 486, 857 => 484, 854 => 483, 848 => 481, 845 => 480, 839 => 478, 836 => 477, 830 => 475, 828 => 474, 823 => 471, 815 => 467, 812 => 466, 809 => 465, 800 => 462, 794 => 461, 790 => 460, 786 => 459, 781 => 458, 776 => 457, 773 => 456, 771 => 455, 759 => 451, 753 => 449, 751 => 448, 747 => 446, 742 => 442, 738 => 440, 728 => 436, 720 => 435, 717 => 434, 713 => 433, 710 => 432, 708 => 431, 704 => 430, 701 => 429, 697 => 424, 691 => 422, 687 => 420, 676 => 416, 672 => 414, 666 => 412, 664 => 411, 660 => 410, 652 => 409, 648 => 407, 644 => 406, 641 => 405, 639 => 404, 635 => 403, 632 => 402, 628 => 399, 622 => 397, 618 => 395, 607 => 391, 603 => 389, 597 => 387, 595 => 386, 591 => 385, 583 => 384, 579 => 382, 575 => 381, 572 => 380, 570 => 379, 566 => 378, 563 => 377, 559 => 374, 553 => 372, 549 => 370, 539 => 366, 535 => 365, 527 => 364, 524 => 363, 520 => 362, 517 => 361, 515 => 360, 511 => 359, 508 => 358, 503 => 354, 496 => 350, 487 => 348, 480 => 344, 471 => 342, 464 => 338, 455 => 336, 452 => 335, 450 => 334, 443 => 330, 438 => 328, 435 => 327, 428 => 323, 419 => 321, 412 => 317, 403 => 315, 400 => 314, 393 => 310, 384 => 308, 381 => 307, 378 => 306, 376 => 305, 371 => 302, 363 => 297, 351 => 289, 348 => 288, 340 => 283, 331 => 278, 329 => 277, 325 => 275, 319 => 273, 313 => 271, 311 => 270, 307 => 268, 304 => 267, 301 => 266, 298 => 265, 295 => 264, 292 => 263, 289 => 262, 286 => 261, 282 => 258, 66 => 43, 64 => 42, 62 => 41, 60 => 40, 58 => 39, 55 => 37, 53 => 36, 51 => 35, 48 => 34,); } public function getSourceContext(): Source { return new Source("{# ========================================================= FOOTER WhileResume — thème Sociala (v4 — routes vérifiées) Colonnes : 1. Mon compte / Commencer ici (stores + liens action) 2. Articles récents (featured ArticlesRepository::getLast) 3. Emplois par ville (JobsFilters type=city) 4. Entreprises par ville (EnterprisesFilters type=city) 5. Pages SEO (LandingJobs featured) ⚠️ Routes utilisées (vérifiées contre routes.yml) : ✓ whileresume_homepage / locale_whileresume_homepage ✓ cvs_website_article / locale_cvs_website_article ✓ cvs_application_jobs_filter / locale_cvs_application_jobs_filter ✓ cvs_application_companies_filter / locale_cvs_application_companies_filter ✓ cvs_application_job_new / locale_cvs_application_job_new (= /post-a-job) ✓ whileresume_jobs_list / locale_whileresume_jobs_list ✓ whileresume_companies_list / locale_whileresume_companies_list ✓ app_logout ⚠️ À CONFIRMER (pas dans routes.yml uploadé — sans doute dans whileresume_resume/whileresume_business) : - app_login / locale_app_login → bouton login - cvs_gestion_candidates_register / locale_… → inscription candidat - cvs_gestion_enterprises_register / locale_… → inscription pro - cvs_application_cv_builder / locale_… → créateur de CV - cvs_gestion_candidates_profile_profile → profil candidat connecté - cvs_gestion_enterprises_profile_profile → profil entreprise connecté - cvs_gestion_enterprises_settings → settings entreprise - cvs_application_landing_jobs_show → page d'une LandingJobs (slug) 👉 Si une route n'existe pas, remplace-la directement dans ce fichier (un seul endroit à modifier par lien). ========================================================= #}{% set _locale = app.request.locale %}{% set _isFr = _locale == 'fr' %}{# Données dynamiques #}{% set footerArticles = getFooterArticles(_locale, 5) %}{% set footerLandingJobs = getFooterFeaturedLandingJobs(_locale, 5) %}{% set footerJobsCities = getFooterJobsCities(_locale, 6) %}{% set footerEnterprisesCities = getFooterEnterprisesCities(_locale, 6) %}<style> /* ---------- Footer WhileResume ---------- */ .whr-footer { margin-top: 32px; padding: 36px 24px 24px; background: #F9FAFD; border-radius: 16px; color: #2c2c46; } .theme-dark .whr-footer { background: #2a2a3c; color: #e9e9ef; } /* Stores en haut de la col 1 */ .whr-footer .whr-stores { display: flex; flex-direction: column; gap: 8px; margin-bottom: 18px; } .whr-footer .whr-store-link { display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px; background: #111; color: #fff !important; border-radius: 10px; font-size: 12px; font-weight: 600; text-decoration: none !important; line-height: 1.2; transition: transform .15s ease, background .2s ease; max-width: 170px; } .whr-footer .whr-store-link:hover { background: #2c2c46; transform: translateY(-1px); } .whr-footer .whr-store-link small { display: block; font-weight: 400; font-size: 10px; opacity: .7; } .whr-footer .whr-store-link strong { font-size: 13px; display: block; } /* Colonnes */ .whr-footer .whr-foot-col h4 { font-size: 13px; font-weight: 700; margin: 0 0 14px 0; color: inherit; text-transform: uppercase; letter-spacing: .3px; } .whr-footer .whr-foot-col ul { list-style: none; padding: 0; margin: 0; font-size: 13px; } .whr-footer .whr-foot-col ul li { margin-bottom: 10px; } .whr-footer .whr-foot-col a { color: inherit; opacity: .75; text-decoration: none; transition: opacity .2s ease, color .2s ease; } .whr-footer .whr-foot-col a:hover { opacity: 1; color: var(--theme-color, #6C3AED); } .whr-footer .whr-foot-empty { font-size: 12px; opacity: .5; font-style: italic; } /* Liste avec icônes (col 1) */ .whr-footer .whr-foot-action-links a { display: inline-flex; align-items: center; gap: 8px; } .whr-footer .whr-foot-action-links a i { font-size: 14px; opacity: .7; width: 16px; text-align: center; } /* Mini-icône ville pour cols 3 et 4 */ .whr-footer .whr-foot-col .whr-city-link { display: inline-flex; align-items: center; gap: 6px; } .whr-footer .whr-foot-col .whr-city-link .whr-city-icon { font-size: 14px; line-height: 1; display: inline-block; width: 18px; text-align: center; opacity: .85; } /* Grille principale : 1 col → 2 cols → 5 cols */ .whr-footer .whr-foot-grid { display: grid; gap: 28px; grid-template-columns: 1fr; } @media (min-width: 576px) { .whr-footer .whr-foot-grid { grid-template-columns: 1fr 1fr; } } @media (min-width: 992px) { .whr-footer .whr-foot-grid { grid-template-columns: repeat(5, 1fr); gap: 32px; } } /* Bottom bar */ .whr-footer .whr-foot-bottom { margin-top: 32px; padding-top: 20px; border-top: 1px solid rgba(0,0,0,.08); display: flex; flex-direction: column; gap: 14px; align-items: center; text-align: center; } .theme-dark .whr-footer .whr-foot-bottom { border-top-color: rgba(255,255,255,.1); } @media (min-width: 768px) { .whr-footer .whr-foot-bottom { flex-direction: row; justify-content: space-between; text-align: left; } } .whr-footer .whr-foot-copy { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; opacity: .7; margin: 0; } .whr-footer .whr-foot-copy img.whr-favicon { width: 18px; height: 18px; border-radius: 4px; flex-shrink: 0; } .whr-footer .whr-foot-legal { display: flex; flex-wrap: wrap; gap: 6px 16px; justify-content: center; font-size: 12px; } .whr-footer .whr-foot-legal a { color: inherit; opacity: .75; text-decoration: none; } .whr-footer .whr-foot-legal a:hover { opacity: 1; } .whr-footer .whr-foot-legal .whr-admin-link { color: #e74c3c !important; opacity: 1; } .whr-footer .whr-foot-social { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; padding: 0; margin: 0; } .whr-footer .whr-foot-social a { width: 32px; height: 32px; border-radius: 8px; background: #fff; display: inline-flex; align-items: center; justify-content: center; color: #2c2c46; text-decoration: none !important; transition: background .2s ease, color .2s ease, transform .15s ease; box-shadow: 0 1px 2px rgba(0,0,0,.04); } .whr-footer .whr-foot-social a:hover { background: var(--theme-color, #6C3AED); color: #fff; transform: translateY(-1px); } .theme-dark .whr-footer .whr-foot-social a { background: #34344a; color: #fff; box-shadow: none; } .whr-footer .whr-foot-social i { font-size: 14px; } .middle-sidebar-left .whr-footer { width: 100%; } @media (max-width: 575.98px) { .whr-footer { padding: 24px 18px 20px; } }</style><footer class=\"whr-footer\" role=\"contentinfo\"> {# === Grille principale 5 colonnes === #} <div class=\"whr-foot-grid\"> {# ===== Col 1 : Mon compte / Commencer ici ===== #} {% if _isFr %} {% set _ios = ios_fr %} {% set _android = android_fr %} {% else %} {% set _ios = ios_us %} {% set _android = android_us %} {% endif %} <div class=\"whr-foot-col whr-foot-col-action\"> {% if connectUser %} <h4>{{ 'layout.footer.my_account'|trans({}, 'whr-public')|default('Mon compte') }}</h4> {% else %} <h4>{{ 'layout.footer.start_here'|trans({}, 'whr-public')|default('Commencer ici') }}</h4> {% endif %} <div class=\"whr-stores\"> {% if _ios %} <a href=\"{{ _ios }}\" class=\"whr-store-link\" target=\"_blank\" rel=\"noopener\" aria-label=\"App Store\"> <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"#fff\" aria-hidden=\"true\"> <path d=\"M18.71 19.5C17.88 20.74 17 21.95 15.66 21.97C14.32 22 13.89 21.18 12.37 21.18C10.84 21.18 10.37 21.95 9.09997 22C7.78997 22.05 6.79997 20.68 5.95997 19.47C4.24997 17 2.93997 12.45 4.69997 9.39C5.56997 7.87 7.12997 6.91 8.81997 6.88C10.1 6.86 11.32 7.75 12.11 7.75C12.89 7.75 14.37 6.68 15.92 6.84C16.57 6.87 18.39 7.1 19.56 8.82C19.47 8.88 17.39 10.1 17.41 12.63C17.44 15.65 20.06 16.66 20.09 16.67C20.06 16.74 19.67 18.11 18.71 19.5ZM13 3.5C13.73 2.67 14.94 2.04 15.94 2C16.07 3.17 15.6 4.35 14.9 5.19C14.21 6.04 13.07 6.7 11.95 6.61C11.8 5.46 12.36 4.26 13 3.5Z\"/> </svg> <span> <small>{{ 'layout.download_on'|trans({}, 'whr-public')|default('Télécharger sur') }}</small> <strong>App Store</strong> </span> </a> {% endif %} {% if _android %} <a href=\"{{ _android }}\" class=\"whr-store-link\" target=\"_blank\" rel=\"noopener\" aria-label=\"Google Play\"> <svg width=\"18\" height=\"18\" viewBox=\"0 0 512 512\" aria-hidden=\"true\"> <path style=\"fill:#3A9BC8;\" d=\"M225.656,256.052L14.016,485.451l-6.442,7.052c-4.005-5.919-6.704-12.972-7.313-20.806C0.087,470.305,0,468.91,0,467.518V44.499c0-9.488,2.873-18.02,7.574-24.987L225.656,256.052z\"/> <path style=\"fill:#9BCD83;\" d=\"M320.811,152.8l-95.155,103.253L7.574,19.512C19.936,1.405,45.183-6.342,66.6,6.02L320.811,152.8z\"/> <path style=\"fill:#EEB84C;\" d=\"M455.056,257.27c-0.348,14.453-7.748,28.904-22.113,37.174l-112.132,64.771l-95.155-103.163L320.811,152.8l70.518,40.745l41.614,24.026C448.178,226.366,455.579,241.861,455.056,257.27z\"/> <path style=\"fill:#B43F70;\" d=\"M7.591,492.492c12.368,18.116,37.599,25.838,58.976,13.496L320.775,359.22l-95.156-103.209L7.591,492.492z\"/> </svg> <span> <small>{{ 'layout.available_on'|trans({}, 'whr-public')|default('Disponible sur') }}</small> <strong>Google Play</strong> </span> </a> {% endif %} </div> <ul class=\"whr-foot-action-links\"> {% if connectUser %} {% if isCandidateUser %} <li> <a href=\"{% if _isFr %}{{ path('locale_cvs_gestion_candidates_profile_profile', {'_locale': _locale}) }}{% else %}{{ path('cvs_gestion_candidates_profile_profile') }}{% endif %}\"> <i class=\"feather-user\"></i> {{ 'layout.footer.my_profile'|trans({}, 'whr-public')|default('Mon profil') }} </a> </li> {% else %} <li> <a href=\"{% if _isFr %}{{ path('locale_cvs_gestion_enterprises_profile_profile', {'_locale': _locale}) }}{% else %}{{ path('cvs_gestion_enterprises_profile_profile') }}{% endif %}\"> <i class=\"feather-user\"></i> {{ 'layout.footer.my_profile'|trans({}, 'whr-public')|default('Mon profil') }} </a> </li> <li> <a href=\"{% if _isFr %}{{ path('locale_cvs_gestion_enterprises_settings', {'_locale': _locale}) }}{% else %}{{ path('cvs_gestion_enterprises_settings') }}{% endif %}\"> <i class=\"feather-settings\"></i> {{ 'layout.footer.settings'|trans({}, 'whr-public')|default('Paramètres') }} </a> </li> {% endif %} <li> <a href=\"{{ path('app_logout') }}\"> <i class=\"feather-log-out\"></i> {{ 'layout.footer.logout'|trans({}, 'whr-public')|default('Déconnexion') }} </a> </li> {% else %} {# Pas connecté : on pousse vers les CTA principaux du site #} <li> <a href=\"{% if _isFr %}{{ path('locale_whileresume_jobs_list', {'_locale': _locale}) }}{% else %}{{ path('whileresume_jobs_list') }}{% endif %}\"> <i class=\"feather-briefcase\"></i> {{ 'layout.footer.browse_jobs'|trans({}, 'whr-public')|default('Voir les offres') }} </a> </li> <li> <a href=\"{% if _isFr %}{{ path('locale_whileresume_companies_list', {'_locale': _locale}) }}{% else %}{{ path('whileresume_companies_list') }}{% endif %}\"> <i class=\"feather-grid\"></i> {{ 'layout.footer.browse_companies'|trans({}, 'whr-public')|default('Voir les entreprises') }} </a> </li> <li> <a href=\"{% if _isFr %}{{ path('locale_cvs_application_job_new', {'_locale': _locale}) }}{% else %}{{ path('cvs_application_job_new') }}{% endif %}\"> <i class=\"feather-plus-circle\"></i> {{ 'layout.footer.post_job'|trans({}, 'whr-public')|default('Publier une offre') }} </a> </li> {% endif %} </ul> </div> {# ===== Col 2 : Articles récents (featured) ===== #} <div class=\"whr-foot-col\"> <h4>{{ 'layout.footer.latest_articles'|trans({}, 'whr-public')|default('Articles récents') }}</h4> {% if footerArticles is not empty %} <ul> {% for article in footerArticles %} <li> <a href=\"{% if _isFr %}{{ path('locale_cvs_website_article', {'_locale': _locale, 'slug': article.slug}) }}{% else %}{{ path('cvs_website_article', {'slug': article.slug}) }}{% endif %}\" title=\"{{ article.title }}\"> {{ article.shortTitle ?: cleanSubstr(article.title, 45) }} </a> </li> {% endfor %} </ul> {% else %} <p class=\"whr-foot-empty\">{{ 'layout.footer.coming_soon'|trans({}, 'whr-public')|default('Bientôt disponible') }}</p> {% endif %} </div> {# ===== Col 3 : Emplois par ville ===== #} <div class=\"whr-foot-col\"> <h4>{{ 'layout.footer.jobs_by_city'|trans({}, 'whr-public')|default('Emplois par ville') }}</h4> {% if footerJobsCities is not empty %} <ul> {% for city in footerJobsCities %} <li> <a class=\"whr-city-link\" href=\"{% if _isFr %}{{ path('locale_cvs_application_jobs_filter', {'_locale': _locale, 'slug': city.slug}) }}{% else %}{{ path('cvs_application_jobs_filter', {'slug': city.slug}) }}{% endif %}\" title=\"{{ city.shortTitle ?: city.label }}\"> {% if city.icon %} <span class=\"whr-city-icon\">{{ city.icon }}</span> {% else %} <i class=\"feather-map-pin whr-city-icon\"></i> {% endif %} <span>{{ city.label }}</span> </a> </li> {% endfor %} </ul> {% else %} <p class=\"whr-foot-empty\">{{ 'layout.footer.coming_soon'|trans({}, 'whr-public')|default('Bientôt disponible') }}</p> {% endif %} </div> {# ===== Col 4 : Entreprises par ville ===== #} <div class=\"whr-foot-col\"> <h4>{{ 'layout.footer.companies_by_city'|trans({}, 'whr-public')|default('Entreprises par ville') }}</h4> {% if footerEnterprisesCities is not empty %} <ul> {% for city in footerEnterprisesCities %} <li> <a class=\"whr-city-link\" href=\"{% if _isFr %}{{ path('locale_cvs_application_companies_filter', {'_locale': _locale, 'slug': city.slug}) }}{% else %}{{ path('cvs_application_companies_filter', {'slug': city.slug}) }}{% endif %}\" title=\"{{ city.shortTitle ?: city.label }}\"> {% if city.icon %} <span class=\"whr-city-icon\">{{ city.icon }}</span> {% else %} <i class=\"feather-map-pin whr-city-icon\"></i> {% endif %} <span>{{ city.label }}</span> </a> </li> {% endfor %} </ul> {% else %} <p class=\"whr-foot-empty\">{{ 'layout.footer.coming_soon'|trans({}, 'whr-public')|default('Bientôt disponible') }}</p> {% endif %} </div> {# ===== Col 5 : Pages SEO (LandingJobs featured) ===== ⚠️ Route 'cvs_application_landing_jobs_show' non trouvée dans tes routes.yml (peut-être dans whileresume_resume.yml ?). Adapte si besoin. #} <div class=\"whr-foot-col\"> <h4>{{ 'layout.footer.featured_pages'|trans({}, 'whr-public')|default('À découvrir') }}</h4> {% if footerLandingJobs is not empty %} <ul> {% for landing in footerLandingJobs %} <li> <a href=\"{% if _isFr %}{{ path('locale_whileresume_homepage_landing', {'_locale': _locale, 'slug': landing.slug}) }}{% else %}{{ path('whileresume_homepage_landing', {'slug': landing.slug}) }}{% endif %}\"> {{ landing.title }} </a> </li> {% endfor %} </ul> {% endif %} </div> </div> {# === Bas du footer === #} <div class=\"whr-foot-bottom\"> <p class=\"whr-foot-copy\"> {% if favicon %} <img src=\"{{ favicon }}\" alt=\"\" class=\"whr-favicon\" /> {% endif %} <span>© {{ \"now\"|date('Y') }} {{ websitename }}. {{ 'layout.rights_reserved'|trans({}, 'whr-public')|default('Tous droits réservés.') }}</span> </p> <div class=\"whr-foot-legal\"> {% set menuFooter = getMenuWebsiteLocaleArray(_locale, \"footer\", connectUser) %} {% if menuFooter is not empty %} {% for m in menuFooter %} <a href=\"{{ m.link }}\" aria-label=\"{{ m.title }}\" title=\"{{ m.title }}\" {% if m.targetBlank == 1 %}target=\"_blank\" rel=\"noreferrer\"{% endif %}> {{ m.title }} </a> {% endfor %} {% endif %} {% if app.user is not null and is_granted(\"ROLE_SUPER_ADMIN\") %} <a href=\"{{ path('backoffice_dashboard') }}\" class=\"whr-admin-link\" title=\"Administration\"> <i class=\"feather-settings\"></i> Administration </a> {% endif %} </div> <ul class=\"whr-foot-social\"> {% if facebook %} <li><a href=\"{{ facebook }}\" target=\"_blank\" rel=\"noopener\" aria-label=\"Facebook\"><i class=\"feather-facebook\"></i></a></li> {% endif %} {% if twitter %} <li><a href=\"{{ twitter }}\" target=\"_blank\" rel=\"noopener\" aria-label=\"X / Twitter\"><i class=\"feather-twitter\"></i></a></li> {% endif %} {% if instagram %} <li><a href=\"{{ instagram }}\" target=\"_blank\" rel=\"noopener\" aria-label=\"Instagram\"><i class=\"feather-instagram\"></i></a></li> {% endif %} {% if linkedin %} <li><a href=\"{{ linkedin }}\" target=\"_blank\" rel=\"noopener\" aria-label=\"LinkedIn\"><i class=\"feather-linkedin\"></i></a></li> {% endif %} {% if youtube %} <li><a href=\"{{ youtube }}\" target=\"_blank\" rel=\"noopener\" aria-label=\"YouTube\"><i class=\"feather-youtube\"></i></a></li> {% endif %} </ul> </div></footer>", "application/whileresume/website/components/footer.html.twig", "/var/www/vhosts/mirtillostudio.fr/b1.mirtillostudio.fr/version-1/templates/application/whileresume/website/components/footer.html.twig"); }}