templates/achievement/index.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% block title %}Nos différentes réalisation - RénovAtHome {% endblock %}
  3. {% block stylesheets %}
  4.     {{ parent() }}
  5.     <link rel="stylesheet" href="{{ asset('assets/styles/realisation.css')}}">
  6.     <meta name="description" content="Plusieurs projets ont été réalisés par RenovAtHome. Couverture, Toiture, Isolation, Ravalement de façade, Sur mesure. Nos clients ont su faire confiance à l'entreprise et le referont sans hésitations.">
  7. {% endblock %}
  8. {% block banner %}{% endblock %}
  9. {% block main %}
  10.     <main>
  11.         <div class="container-real">
  12.             <ul class="category-real flex-wrap justify-center">
  13.                 <li class="label-real">Trier par :</li>
  14.                 <li id="all" class="category actif">TOUT</li>
  15.                 {% for cat in categories |sort((a, b) => a.id <= b.id) %}
  16.                     <li id="{{ cat.nom |lower|replace({' ': '-'}) }}" class="category">{{ cat.nom }}</li>
  17.                 {% endfor %}
  18.             </ul>
  19.             {% set cpt = 1 %}
  20.             {% for last in lasts %}
  21.                 <div class="last-real {{ cpt == 1 ? 'all'}} {{ last.catName|lower|replace({' ': '-'}) }}" {{ cpt != 1 ? 'style ="display:none;"'}}>
  22.                     {% if last.avant != "" and last.apres != "" %}
  23.                     <div class="slider">
  24.                         <div class="slider__before" style="background-image:url({{ asset('uploads/realisations/'~last.avant) | imagine_filter('middle')}});"></div>
  25.                         <div class="slider__separator">
  26.                             <div class="bar__separator"></div>
  27.                             <div class="btn__separator">
  28.                                 <span class="btn__separator_left_arrow"></span>
  29.                                 <span class="btn__separator_right_arrow"></span>
  30.                             </div>
  31.                             <div class="bar__separator"></div>
  32.                         </div>
  33.                         <div class="slider__after" style="background-image:url({{ asset('uploads/realisations/'~last.apres) | imagine_filter('middle')}});"></div>
  34.                         <input class="slider__range" type="range" min="2" max="98" value="50"/>
  35.                     </div>
  36.                     {% else %}
  37.                     <img src="{{ asset('uploads/realisations/'~last.cover) | imagine_filter('middle')}}" alt="photo de couverture de la réalisation" class="img-place-holder">
  38.                     {% endif %}
  39.                     <div class="desc-real">
  40.                         <div class="titre">
  41.                             <div class="deco-sous-titre"></div>
  42.                             <span class="sous-titre">dernière Réalisation</span>
  43.                         </div>
  44.                         <h2 class="titre-real">{{ last.nom }}</h2>
  45.                         <p>{{ last.description |raw }}</p>
  46.                         <p>
  47.                             <b>Solution apportée par nos équipes :</b><br>
  48.                             {{ last.taches |raw}}
  49.                         </p>
  50.                         <a class="show-real" href="{{ path('realisation', { 'slug' : last.slug })}}">en découvrir plus <i class="fa-solid fa-arrow-right"></i></a>
  51.                     </div>
  52.                 </div>
  53.                 {% set cpt = cpt + 1 %}
  54.             {% endfor %}
  55.             
  56.             <div class="all-real">
  57.                 {% for realisation in realisations |sort((a, b) => a.id <= b.id) %}
  58.                     <div class="card-real {{ realisation.categorie.nom|lower|replace({' ': '-'}) }}">
  59.                         <a class="titre-evenement" href="{{ path('realisation', { 'slug' : realisation.slug })}}">
  60.                             <div class="layer">
  61.                                 <img src="{{ asset('uploads/realisations/'~realisation.cover) | imagine_filter('miniature')}}" alt="{{ realisation.nom }}">
  62.                                 <div class="overlay">
  63.                                     <div class="text"><span>EN DÉCOUVRIR PLUS <i class="fa-solid fa-arrow-right"></i></span></div>
  64.                                 </div>
  65.                             </div>
  66.                             <span class="card-real-category">{{ realisation.categorie.nom }}</span>
  67.                             <h3 class="card-real-title">{{ realisation.nom }}</h3>
  68.                         </a>
  69.                     </div>
  70.                 {% endfor %}
  71.             </div>
  72.             <div class="more">
  73.                 <span href="" class="btn-more">afficher plus de réalisations</span>
  74.             </div>
  75.         </div>
  76.     </main>
  77. {% endblock %}
  78. {% block contact %}{% endblock %}
  79. {% block footer %}{% endblock %}
  80. {% block script %}
  81.     {{ parent() }}
  82.     <script src="{{ asset('assets/js/main.js')}}"></script>
  83.     <script>
  84.         $(document).ready(function () {
  85.             var card = $('.card-real')
  86.             var nombrereal = 4;
  87.             for (var i =nombrereal ; i < card.length; i++) {
  88.                card[i].style.display = 'none';
  89.             }
  90.             $(".btn-more").click(function () {
  91.                 for (var i = nombrereal; i < nombrereal + 4; i++) {
  92.                     if (card[i]) {
  93.                         card[i].style.display = 'block';
  94.                     }
  95.                 }
  96.                 nombrereal += 4;
  97.                 if (nombrereal >= card.length) {
  98.                     event.target.style.display = 'none';
  99.                 }
  100.             });
  101.             $('.category').click(function() {
  102.                 $('.category').each(function () {
  103.                     $(this).removeClass('actif');
  104.                 });
  105.                 $(this).addClass('actif');
  106.                 var category = $(this).attr('id');
  107.                 $('.card-real').each(function() {
  108.                     if ($(this).hasClass(category) || category === 'all'){
  109.                         $(this).show();
  110.                     }
  111.                     else {
  112.                         $(this).hide();
  113.                     }
  114.                 });
  115.                 $('.last-real').each(function() {
  116.                     if ($(this).hasClass(category)){
  117.                         $(this).show();
  118.                     }
  119.                     else {
  120.                         $(this).hide();
  121.                     }
  122.                 });
  123.             });
  124.         });
  125.     </script>
  126. {% endblock %}