templates/front/property/single.html.twig line 1

Open in your IDE?
  1. {% extends 'base_front.html.twig' %}
  2. {% block meta %}
  3.     <title>Bourg | {{ advert.info.nature }} à {{ advert.localisation.ville }}</title>
  4.     {% if advert.info.nature is defined and advert.info.surface is defined and advert.localisation.ville is defined %}
  5.         <meta name="description" content="{{ advert.info.nature }} de {{ advert.info.surface }} m² à {{ advert.localisation.ville }}">
  6.     {% endif %}
  7. {% endblock %}
  8. {% block body %}
  9.     <section class="slide-header single">
  10.         <div class="row h-100">
  11.             <div class="col-md-6 d-flex justify-content-center align-items-center">
  12.                 <div class="description-single">
  13.                     <div class="title-page bg-blue d-flex gold pl-0 pt-0 pb-5">
  14.                         <!--img src="{{ asset('img/icons/chevrons-right.svg') }}" alt="chevrons droite"-->
  15.                         <span class="ml-3">
  16.                             {{ advert.localisation.ville }} •
  17.                             {% if advert.info.disponibilite %}
  18.                                 {% if advert.info.disponibilite == 'immédiate' %}
  19.                                     Disponibilité {{ advert.info.disponibilite }}
  20.                                 {% else %}
  21.                                     Disponible à p. d. {{ advert.info.disponibilite }}
  22.                                 {% endif %}
  23.                             {% endif %}
  24.                             <br> Réf. {{ advert.info.reference }}
  25.                         </span>
  26.                     </div>
  27.                     <h1 class="mb-3">{{ advert.info.nature }}</h1>
  28.                     <div class="description pt-3 pb-3">
  29.                         {% if advert.info.surface and advert.info.surface > 0 %}
  30.                             <p>
  31.                                 <img src="{{ asset('img/icons/surface.svg') }}" class="mr-3" loading="lazy">
  32.                                 <span class="gold">{{ advert.info.surface }} m²</span>
  33.                                 <span class="gold">surface d’habitation</span>
  34.                             </p>
  35.                         {% endif %}
  36.                         {% if advert.info.nombre_chambres and advert.info.nombre_chambres > 0 %}
  37.                             <p>
  38.                                 <img src="{{ asset('img/icons/chambres.svg') }}" class="mr-3" loading="lazy">
  39.                                 <span class="gold">{{ advert.info.nombre_chambres }}</span>
  40.                                 <span class="gold">chambre{% if advert.info.nombre_chambres > 1 %}s{% endif%} à coucher</span>
  41.                             </p>
  42.                         {% endif %}
  43.                         {% if advert.pieces.salles_de_bain and advert.pieces.salles_de_bain > 0 %}
  44.                             <p>
  45.                                 <img src="{{ asset('img/icons/salles-bain.svg') }}" class="mr-3" loading="lazy">
  46.                                 <span class="gold">{{ advert.pieces.salles_de_bain }}</span>
  47.                                 <span class="gold">salle{% if advert.pieces.salles_de_bain > 1%}s{% endif%} de bain</span>
  48.                             </p>
  49.                         {% endif %}
  50.                         {% if advert.parking.garages and advert.parking.garages > 0 %}
  51.                             <p>
  52.                                 <img src="{{ asset('img/icons/garage.svg') }}" class="mr-3" loading="lazy">
  53.                                 <span class="gold">{{ advert.parking.garages }}</span>
  54.                                 <span class="gold">garage{% if advert.parking.garages > 1 %}s{% endif %}</span>
  55.                             </p>
  56.                         {% endif %}
  57.                         {% set parkingOuvert = advert.parking.parking_ouvert ?? 0 %}
  58.                         {% set parkingsouterrain = advert.parking.parkin_souterrain ?? 0 %}
  59.                         {% set parkingCollectif = advert.parking.collectif ?? 0 %}
  60.                         {% set parkings = parkingOuvert + parkingsouterrain + parkingCollectif %}
  61.                         {% if parkings > 0 %}
  62.                             <p>
  63.                                 <img src="{{ asset('img/icons/parking.svg') }}" class="mr-3" loading="lazy">
  64.                                 <span class="gold">{{ parkings }}</span>
  65.                                 <span class="gold">parking extérieur</span>
  66.                             </p>
  67.                         {% endif %}
  68.                     </div>
  69.                     <div class="price gold">
  70.                         {%  set price = advert.prix.budget|number_format(0, ' ', ' ') %}
  71.                         {% if advert.info.vente_location == 'location' %}
  72.                             {{ price }}€/mois
  73.                         {% else %}
  74.                             {{ price }}€
  75.                         {% endif %}
  76.                     </div>
  77.                 </div>
  78.             </div>
  79.             <div class="col-md-6 slides">
  80.                 <div class="main-slide">
  81.                     <div class="img-main-slide position-relative" id="mainImg">
  82.                         <img src="{{ advert.photos.1.url }}" id="mainImg" class="position-absolute" style="height:100%;object-fit:cover;right:0;width:100%">
  83.                         <a href="{{ advert.photos.1.url }}" id="photoGallery" class="position-absolute bg-red d-flex justify-content-center align-items-center">
  84.                             <img src="{{ asset('img/icons/icon-photos.svg') }}" class="img-fluid" style="width:45px;" loading="lazy">
  85.                         </a>
  86.                     </div>
  87.                 </div>
  88.                 {#
  89.                 <div class="slides-title d-flex align-items-center justify-content-end col-md-10 p-0 float-right position-relative">
  90.                     <a href="#" class="position-absolute arrow-slide-single" id="arrowSlideMove" onclick="javascript: return false;">
  91.                         <img src="{{ asset('img/icons/arrow-right.svg') }}">
  92.                     </a>
  93.                     <div class="slide-miniatures d-flex align-self-baseline" id="containerMiniatures">
  94.                         {% for photo in advert.photos|slice(1) %}
  95.                         <div class="slide position-relative {% if loop.index >= 4 %}display-none{% endif %} float-left">
  96.                             <img src="{{ photo.url }}">
  97.                         </div>
  98.                         {% endfor %}
  99.                     </div>
  100.                 </div>
  101.                 #}
  102.             </div>
  103.         </div>
  104.         <a href="#targetSeeMore" class="btn-see-more position-absolute d-flex flex-column align-items-center gold text-center">
  105.             <span>En savoir plus</span>
  106.             <img src="{{ asset('img/icons/arrow-bottom-gold.svg') }}" alt="En savoir plus" class="mb-2">
  107.         </a>
  108.     </section>
  109.     <section class="details-single pb-5" id="targetSeeMore">
  110.         <div class="container mt-5 pt-5">
  111.             <div class="row justify-content-between align-items-start">
  112.                 <div class="col-12 col-md-5 doc position-relative">
  113.                     <!--img src="{{ asset('img/floor_doc.svg') }}" alt="Doc property" class="position-absolute doc-floor"-->
  114.                     <h6>Extérieur</h6>
  115.                     <ul class="pl-0">
  116.                         {% for key, value in advert.exterieur %}
  117.                             {% if value and value == '1' %}
  118.                                 <li>{{ key|replace({'_': ' '})|capitalize }}</li>
  119.                             {% endif %}
  120.                         {% endfor %}
  121.                     </ul>
  122.                     <h6>Intérieur</h6>
  123.                     <ul class="pl-0">
  124.                         {% for key, value in advert.interieur %}
  125.                             {% if value and value == '1' %}
  126.                                 <li>{{ key|replace({'_': ' '})|capitalize }}</li>
  127.                             {% endif %}
  128.                         {% endfor %}
  129.                         {% for key, value in advert.pieces %}
  130.                             {% if value and value == '1' %}
  131.                                 <li>{{ key|replace({'_': ' '})|capitalize }}</li>
  132.                             {% endif %}
  133.                         {% endfor %}
  134.                     </ul>
  135.                     <h6>Autres</h6>
  136.                     <ul class="pl-0">
  137.                         {% for key, value in advert.parking %}
  138.                             {% if value and value == '1' %}
  139.                                 <li>{{ key|replace({'_': ' '})|capitalize }}</li>
  140.                             {% endif %}
  141.                         {% endfor %}
  142.                         {% for key, value in advert.energie %}
  143.                             {% if value and value != '0.00' %}
  144.                                 <li>{{ key|replace({'_': ' ', 'lettre': ''})|capitalize }} <strong>{{ value|replace({'_': ' '})|capitalize }}</strong></li>
  145.                             {% endif %}
  146.                         {% endfor %}
  147.                     </ul>
  148.                     {% if advert.documents is not empty %}
  149.                         <h6>Documents</h6>
  150.                         <ul class="pl-0">
  151.                             {% for doc in advert.documents %}
  152.                                 <li><img src="{{ asset('img/icons/doc.svg') }}" class="mr-2"><a href="{{ doc.url }}" target="_blank" class="gold" download>{{ doc.name_file }}</a></li>
  153.                             {% endfor %}
  154.                         </ul>
  155.                     {% endif %}
  156.                     <div class="m-auto pt-4 energy-single no-responsive">
  157.                         <h4>Performance énergétique</h4>
  158.                         {% if advert.energie.indice_energetique %}
  159.                             <div class="row col-md-8 p-0 m-0">
  160.                                 <div class="col-sm-2 col-md-2 bg-grey-light p-2 text-vertical info-indice">
  161.                                     <span class="gold">Maison existante</span>
  162.                                     <span class="gold">Nouvelle maison</span>
  163.                                 </div>
  164.                                 <div class="col-sm-10 col-md-10 d-flex flex-column h-100">
  165.                                     {% set arrayLetters = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'] %}
  166.                                     {% set widthBar = '5' %}
  167.                                     {% for letter in arrayLetters %}
  168.                                         {% if letter == advert.energie.indice_energetique %}
  169.                                             <div class="col-sm-12 col-md-12 bar energy-a mb-2 pb-0 pt-0 pl-1 pr-1 d-flex justify-content-center align-items-center selected">
  170.                                                 <span class="col-md-{{ widthBar }} pr-0 letter-a gold d-flex justify-content-center align-items-center">{{ letter }}</span>
  171.                                                 {% if letter == 'A' %}
  172.                                                     <span class="cols-m-7 col-md-7 pl-0 info-a gold text-center">Haute efficacité d’énergie</span>
  173.                                                 {% endif %}
  174.                                             </div>
  175.                                         {% else %}
  176.                                             <div class="col-sm-{% if not loop.last %}{{ widthBar }}{% else%}12{% endif%} col-md-{% if not loop.last %}{{ widthBar }}{% else%}12{% endif%} bar energy-{{ letter|lower }} {% if not loop.last %}mb-2{% endif %}">{{ letter }}</div>
  177.                                         {% endif %}
  178.                                         {% set widthBar = widthBar + 1 %}
  179.                                     {% endfor %}
  180.                                 </div>
  181.                             </div>
  182.                         {% else %}
  183.                             <p>Performance énergetique non renseignée.</p>
  184.                         {% endif %}
  185.                     </div>
  186.                 </div>
  187.                 <div class="col-12 col-md-5">
  188.                     <div class="contact-single p-0 gold">
  189.                         <div class="title-page bg-blue d-flex align-items-baseline gold pl-0 pt-0 pb-5">
  190.                             <!--img src="{{ asset('img/icons/chevrons-right.svg') }}" alt="chevrons droite"-->
  191.                             <div class="pl-3">
  192.                                 <!--<div class="img-contact" style="background: url({% if advert.commerciaux.photo %}{{ advert.commerciaux.photo }}{% else %}{{ asset('img/user-default.png') }}{% endif %})no-repeat center;background-size: cover"></div>-->
  193.                                 <div class="description-contact bg-grey-very-light p-4">
  194.                                     <div class="border-title bg-grey mb-2 mt-0"></div>
  195.                                     <h3 style="font-size: 1.3em;">{{ advert.commerciaux.prenom }} {{ advert.commerciaux.nom|upper }}</h3>
  196.                                     <p class="mb-0">Contactez votre conseiller pour plus d’informations concernant
  197.                                         le bien ou pour organiser une visite</p>
  198.                                 </div>
  199.                                 {% if advert.commerciaux.gsm %}
  200.                                     <div class="col-md-11 bg-red-contact gold pb-0">
  201.                                         <img src="{{ asset('img/icons/icon-mobile-dark.svg') }}" loading="lazy">
  202.                                         <span class="ml-3"><a href="tel:{{ advert.commerciaux.gsm }}" class="gold">{{ advert.commerciaux.gsm }}</a></span>
  203.                                     </div>
  204.                                 {% endif %}
  205.                                 {% if advert.commerciaux.email %}
  206.                                     <div class="col-md-10 bg-brown gold">
  207.                                         <img src="{{ asset('img/icons/icon-envelop-dark.svg') }}">
  208.                                         <span class="ml-3"><a href="mailto:{{ advert.commerciaux.email }}" class="gold">{{ advert.commerciaux.email }}</a></span>
  209.                                     </div>
  210.                                 {% endif %}
  211.                             </div>
  212.                         </div>
  213.                     </div>
  214.                     <div class="title-page bg-blue d-flex gold pl-0 pt-0 pb-5">
  215.                         <!--img src="{{ asset('img/icons/chevrons-right.svg') }}" alt="chevrons droite"-->
  216.                         <span class="ml-3">DESCRIPTION</span>
  217.                     </div>
  218.                     {#  <h1 class="mb-3">MAISON UNIFAMILIALE ISOLÉE</h1> #}
  219.                     <div class="description gold">
  220.                         {{ advert.description.description_fr|raw }}
  221.                     </div>
  222.                     {#
  223.                     <div class="contact-advert gold">
  224.                         Pour plus de renseignements et informations :<br>
  225.                         M. Philippe LANDRAIN<br>
  226.                         Tél: <a href="tel:00352454848451" class="gold">00352 454848 -451</a><br>
  227.                         E-mail: <a href="mailto:philippe@stugalux.lu" class="gold">philippe@stugalux.lu</a><br>
  228.                     </div>
  229.                     #}
  230.                 </div>
  231.             </div>
  232.         </div>
  233.     </section>
  234. {% endblock %}
  235. {% block javascript %}
  236. {{ parent() }}
  237. <script>
  238.     document.getElementById('photoGallery').addEventListener('click', (e) => {
  239.         e.preventDefault();
  240.         SimpleLightbox.open({
  241.             items: [
  242.                 {% for photo in advert.photos %}
  243.                     "{{ photo.url }}",
  244.                 {% endfor %}
  245.             ]
  246.         });
  247.     })
  248. </script>
  249. {% endblock %}