templates/pages/online_shop.html.twig line 1

Open in your IDE?
  1. {# Js code is in assets/js/elements/cartProducts.ts #}
  2. {% import "elements/pagesElements/_online_shop_filter.html.twig" as filter %}
  3. {% extends 'layout/user_base.html.twig' %}
  4. {% block title %}
  5.     {{ "Boutique en ligne" | trans }}
  6. {% endblock %}
  7. {% block body %}
  8.     <div class="loading-absolute filter_loading" style="opacity: 0;">
  9.         <div class="d-flex align-items-center">
  10.             <img src="{{ asset('app/spinner_white.svg') }}" alt="spinner" width="25">
  11.             <p class="m-0 ps-2">{{ "Filtre en cours..." | trans }}</p>
  12.         </div>
  13.     </div>
  14.     <div class="container mt-5">
  15.         <div class="row">
  16.             <div class="col-lg-3">
  17.                 {{ render(controller('App\\Controller\\App\\WidgetController::onlineShopFilter')) }}
  18.             </div>
  19.             <div class="col-lg-9 mt-4 mt-lg-0">
  20.                 <div class="middle-line">
  21.                     <h2 class="section-title middle-line-text">{{ "Boutique en ligne" | trans }}</h2>
  22.                 </div>
  23.                 <div class="row">
  24.                     <div class="col-lg-12">
  25.                         <input type="text" placeholder="{{ "Rechercher un produit" | trans }}"
  26.                                class="form-control mb-2"
  27.                                 {{ q_search is defined and q_search is not null and q_search != "" ? "value=" ~ q_search : "" }}
  28.                                id="q_value">
  29.                     </div>
  30.                     <div class="col-md-6 col-lg-4 mb-3 mb-lg-0">
  31.                         <div class="dropdown">
  32.                             <button class="btn btn-light dropdown-toggle w-100 btn-dropdown-no-icon" type="button"
  33.                                     id="dropdownMenuButton1"
  34.                                     data-bs-toggle="dropdown" aria-expanded="false"
  35.                                     data-bs-auto-close="outside"
  36.                             >
  37.                                 <span class="d-flex justify-content-between align-items-center">
  38.                                     <label for="triage">{{ "Marque" | trans }}</label>
  39.                                     <i class="fa fa-chevron-down text-dark" style="font-size: 12px"></i>
  40.                                 </span>
  41.                             </button>
  42.                             <div class="dropdown-menu dropdown-menu-brand w-100 p-2"
  43.                                  aria-labelledby="dropdownMenuButton1">
  44.                                 <div app-brand-filter></div>
  45.                             </div>
  46.                         </div>
  47.                     </div>
  48.                     <div class="col-md-6 col-lg-4 d-none d-lg-block">
  49.                         <div class="dropdown">
  50.                             <button class="btn btn-light dropdown-toggle w-100 btn-dropdown-no-icon" type="button"
  51.                                     id="dropdownMenuButton1"
  52.                                     data-bs-toggle="dropdown" aria-expanded="false">
  53.                                 <span class="d-flex justify-content-between align-items-center">
  54.                                     <label for="triage">{{ "Prix" | trans }}</label>
  55.                                     <i class="fa fa-chevron-down text-dark" style="font-size: 12px"></i>
  56.                                 </span>
  57.                             </button>
  58.                             <div class="dropdown-menu w-100 p-2" aria-labelledby="dropdownMenuButton1">
  59.                                 {{ filter.slider() }}
  60.                             </div>
  61.                         </div>
  62.                     </div>
  63.                     <div class="col-md-6 col-lg-4">
  64.                         <div class="" style="width: 100%">
  65.                             <select class="form-select" name="trie" id="order">
  66.                                 <option value="0" {{ q_order == "0" ? "selected" : "" }}>{{ "Prix croissant" | trans }}</option>
  67.                                 <option value="1" {{ q_order == "1" ? "selected" : "" }}>{{ "Prix décroissant" | trans }}</option>
  68.                                 <option value="2" {{ q_order == "2" ? "selected" : "" }}>{{ "Meilleurs ventes" | trans }}</option>
  69.                             </select>
  70.                         </div>
  71.                     </div>
  72.                 </div>
  73.                 <div class="products-list main">
  74.                     <div data-unpoly-product-cart></div>
  75.                     <div class="row mt-5">
  76.                         {% for product in products %}
  77.                             {{ include('elements/pagesElements/products/_product.html.twig', {product: product, column: "col-6 col-lg-4"}) }}
  78.                         {% else %}
  79.                             <div class="card text-center h-100">
  80.                                 <div class="card-body p-4 p-sm-5">
  81.                                     <p class="lead mt-4 text-800 font-sans-serif fw-semi-bold">{{ "Aucun produit trouvé" | trans }}</p>
  82.                                     <hr>
  83.                                     <p>{{ "Essayer avec d'autre critère pour trouver le produit que vous recherchiez." | trans }}</p>
  84.                                 </div>
  85.                             </div>
  86.                         {% endfor %}
  87.                     </div>
  88.                     <div class="d-flex justify-content-center mt-4">
  89.                         {{ knp_pagination_render(products, 'elements/pagination/_app_pagination.html.twig', {}, {"target": ".main"}) }}
  90.                     </div>
  91.                 </div>
  92.             </div>
  93.         </div>
  94.     </div>
  95. {% endblock %}
  96. {% block javascripts %}
  97.     {{ parent() }}
  98.     {{ encore_entry_script_tags('online_shop') }}
  99. {% endblock %}