templates/famille_produit/famille_produit.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% block title %}{{ familleProduit.metaTitle }}{% endblock %}
  3. {% block meta %}
  4.     <!-- Primary Meta Tags -->
  5.     <meta name="description" content="{{ familleProduit.metaDescription }}">
  6.     <!-- Open Graph -->
  7.     <meta property="og:type" content="website">
  8.     <meta property="og:url" content="{{ app.request.getSchemeAndHttpHost() ~ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) }}">
  9.     <meta property="og:title" content="{{ familleProduit.metaTitle }}">
  10.     <meta property="og:description" content="{{ familleProduit.metaDescription }}">
  11.     <meta property="og:image" content="{{ app.request.getSchemeAndHttpHost() ~ urlImageFamilleProduit ~ familleProduit.urlImage }}">
  12.     <!-- Twitter -->
  13.     <meta property="twitter:card" content="summary">
  14.     <meta property="twitter:url" content="{{ app.request.getSchemeAndHttpHost() ~ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) }}">
  15.     <meta property="twitter:title" content="{{ familleProduit.metaTitle }}">
  16.     <meta property="twitter:description" content="{{ familleProduit.metaDescription }}">
  17.     <meta property="twitter:image" content="{{ app.request.getSchemeAndHttpHost() ~ urlImageFamilleProduit ~ familleProduit.urlImage }}">
  18. {% endblock %}
  19. {% block stylesheets %}
  20.     <link rel="stylesheet" href="{{ asset('css/familleProduit.css') }}">
  21.     <link rel="stylesheet" href="{{ asset('css/demandeDevis.css?v=1.2') }}"/>
  22. {% endblock %}
  23. {% block entete %}
  24.     <img class="img-100" src='{{ urlImageFamilleProduit ~ familleProduit.urlImageEntete }}' alt='Aperçu {{ familleProduit.designation }}'>
  25.     <div class="row mb-5">
  26.         <div class="breadcrumb-container breadcrumb-produit px-5">
  27.             <nav aria-label="breadcrumb">
  28.                 <ol class="breadcrumb-reverse">
  29.                     <li class="breadcrumb-item"><a href="{{ path('homepage') }}">Accueil</a></li>
  30.                     <li class="breadcrumb-item active">{{ familleProduit.designation }}</li>
  31.                 </ol>
  32.             </nav>
  33.             <h1 class="titre-photo">{{ familleProduit.designation }}</h1>
  34.         </div>
  35.     </div>
  36. {% endblock %}
  37. {% block body %}
  38.     {#
  39.     {% if familleProduit.seoUrl == 'porte-de-placard-sur-mesure' %}
  40.         <!-- Modal -->
  41.         <div class="modal fade" id="demandeDevisModal" tabindex="-1" role="dialog" aria-labelledby="demandeDevisModalTitle" aria-hidden="true">
  42.             <div class="modal-dialog modal-dialog-centered modal-xl" role="document">
  43.                 <div class="modal-content">
  44.                     <div class="modal-body">
  45.                         <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  46.                             <span aria-hidden="true">&times;</span>
  47.                         </button>
  48.                         <div class="row">
  49.                             <div class="col-12 col-md-5 modal-col modal-top">
  50.                                 <video autoplay loop muted playsinline id="video" class="video" style="width: 100%">
  51.                                     <source src="https://media.cmai-groupe.com/asset/d7862f04-f284-4e00-976f-23fdebca2c65/mp4/Ouverture_placard.mp4" type="video/mp4">
  52.                                     Votre navigateur ne supporte pas les vidéos HTML5.
  53.                                 </video>
  54.                             </div>
  55.                             <div class="col-12 col-md-7 mt-4">
  56.                                 <h3 class="text-center">
  57.                                     Profitez de notre offre
  58.                                 </h3>
  59.                                 <p class="mt-3">En ce moment, une colonne de rangement <strong>offerte</strong> pour tout achat d'une porte de placard*</p>
  60.                                 {{ form_start(form) }}
  61.                                 <div class="_form-content" id="devis_promo">
  62.                                     <div class="row">
  63.                                         <div class="col-12 col-lg-4">
  64.                                             {{ form_widget(form.name, {'attr': {'class': 'form-control'}}) }}
  65.                                             {{ form_errors(form.name, {'attr': {'class': 'form-error'}}) }}
  66.                                         </div>
  67.                                         <div class="col-12 col-lg-4">
  68.                                             {{ form_widget(form.email, {'attr': {'class': 'form-control'}}) }}
  69.                                             {{ form_errors(form.email, {'attr': {'class': 'form-error'}}) }}
  70.                                         </div>
  71.                                         <div class="col-12 col-lg-4">
  72.                                             {{ form_widget(form.phone, {'attr': {'class': 'form-control'}}) }}
  73.                                             {{ form_errors(form.phone, {'attr': {'class': 'form-error'}}) }}
  74.                                         </div>
  75.                                     </div>
  76.                                     <div class="row">
  77.                                         <div class="col-12 col-lg-6">
  78.                                             {{ form_widget(form.address, {'attr': {'class': 'form-control'}}) }}
  79.                                             {{ form_errors(form.address, {'attr': {'class': 'form-error'}}) }}
  80.                                         </div>
  81.                                         <div class="col-12 col-lg-3">
  82.                                             {{ form_widget(form.postalCode, {'attr': {'class': 'form-control'}}) }}
  83.                                             {{ form_errors(form.postalCode, {'attr': {'class': 'form-error'}}) }}
  84.                                         </div>
  85.                                         <div class="col-12 col-lg-3">
  86.                                             {{ form_widget(form.city, {'attr': {'class': 'form-control'}}) }}
  87.                                             {{ form_errors(form.city, {'attr': {'class': 'form-error'}}) }}
  88.                                         </div>
  89.                                     </div>
  90.                                     <div class="row">
  91.                                         <div class="col-12 col-md-7 mb-1">
  92.                                             {{ form_widget(form.message, {'attr': {'class': 'form-control'}}) }}
  93.                                             {{ form_errors(form.message, {'attr': {'class': 'form-error'}}) }}
  94.                                         </div>
  95.                                         <div class="col-12 col-md-5 d-flex flex-column align-items-center captcha">
  96.                                             {{ form_row(form.captcha) }}
  97.                                         </div>
  98.                                     </div>
  99.                                     <div class="bg-grey text-center pt-3 pb-2 container-expert">
  100.                                         <img class="image-expert" src="{{ asset('assets/images/Expert.png') }}" alt="portrait expert">
  101.                                         <p>
  102.                                             Vous serez recontacté dans un délai de 48h par notre <strong>Sogal Expert</strong> à moins de 30km de chez vous.
  103.                                         </p>
  104.                                     </div>
  105.                                     <div class="text-center mt-3 mb-4">
  106.                                         {{ form_widget(form.submit) }}
  107.                                         <div id="spinner-devis" class="spinner-border" role="status" style="display: none;">
  108.                                             <span class="sr-only">Chargement...</span>
  109.                                         </div>
  110.                                     </div>
  111.                                 </div>
  112.                                 {{ form_end(form) }}
  113.                                 <span class="mt-2" style="font-size: 12px">
  114.                                     *Offre valable pour tout achat et livraison en France métropolitaine d’un placard coulissant, pivotant, pliant ou battant hors modèles Sogal Eco+ et Initial.
  115.                                     Aménagement offert : une colonne Moduleco blanche,  Hauteur 2045 mm, Largeur 335 ou 500 mm. Eco-participation à la charge du client particulier.
  116.                                 </span>
  117.                             </div>
  118.                         </div>
  119.                     </div>
  120.                 </div>
  121.             </div>
  122.         </div>
  123.     {% endif %}
  124.     #}
  125.     {% if familleProduit.description %}
  126.         <div class="row">
  127.             <div class="col-12">
  128.                 {{ familleProduit.description|raw }}
  129.             </div>
  130.         </div>
  131.     {% endif %}
  132.     <div class="row ">
  133.         {% if sousFamilleTypes is defined and sousFamilleTypes is not empty and sousFamilleTypes[familleProduit.seoUrl] and sousFamilleTypes[familleProduit.seoUrl] is not empty %}
  134.             {% for sfPosition, sousFamilleType in sousFamilleTypes[familleProduit.seoUrl] %}
  135.                 {%  set first = sousFamilleType|first %}
  136.                 {% if first.sousFamilleType is defined %}
  137.                     <a class="col-12 col-md-4 for-hover mb-4" href="{{  path('sous_famille_type', {familleProduit: familleProduit.seoUrl, sousFamilleType: first.sousFamilleType.seoUrl }) }}">
  138.                         <div class="row px-3">
  139.                             <div class="col-12 px-0">
  140.                                 <img class="img-fluid" src="{{ urlImageSousFamille ~ first.sousFamilleType.urlImage }}" alt="Aperçu {{ first.sousFamilleType.title }}">
  141.                                 <div class="img-bg"></div>
  142.                             </div>
  143.                         </div>
  144.                         <div class="row mt-3">
  145.                             <div class="col-12">
  146.                                 <h2 class="left-barre">
  147.                                     {{ first.sousFamilleType.title }}
  148.                                 </h2>
  149.                             </div>
  150.                         </div>
  151.                     </a>
  152.                 {% endif %}
  153.             {% endfor %}
  154.         {% else %}
  155.             {% for sousFamille in familleProduit.sousFamilles %}
  156.                 {% if sousFamille.produits is not empty %}
  157.                     <a class="col-12 col-md-6 for-hover mb-4" href="{{  path('sous_famille', {familleProduit: sousFamille.familleProduit.seoUrl, sousFamille: sousFamille.seoUrl }) }}">
  158.                         <div class="row px-3">
  159.                             <div class="col-12 px-0">
  160.                                 <img class="img-fluid" src="{{ urlImageSousFamille ~ sousFamille.urlImage }}" alt="Aperçu {{ sousFamille.designation }}">
  161.                                 <div class="img-bg"></div>
  162.                             </div>
  163.                         </div>
  164.                         <div class="row mt-3">
  165.                             <div class="col-12">
  166.                                 <h2 class="left-barre">
  167.                                     {{ sousFamille.designation }}
  168.                                 </h2>
  169.                             </div>
  170.                         </div>
  171.                     </a>
  172.                 {% endif %}
  173.             {% endfor %}
  174.         {% endif %}
  175.     </div>
  176.     
  177.     {% if familleProduit.descriptionFin %}
  178.         <div class="row">
  179.             <div class="col-12">
  180.                 {{ familleProduit.descriptionFin|raw }}
  181.             </div>
  182.         </div>
  183.     {% endif %}
  184. {% endblock %}