templates/frontView/product/addpanier.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% block title %}Produits{% endblock %}
  3. {% block body %}
  4. <header>
  5. {{ include('@FrontView/menus.html.twig') }}
  6. </header>
  7. <main class="front-office-page front-office-orders-page front-office-cart-page">
  8.     <div class="container">
  9.         <div class="row py-2">
  10.             <div class="col-md-2">
  11.                 {{ include('@FrontView/menusgeneral.html.twig') }}
  12.             </div>
  13.             <div class="col-md-10">
  14.                  <div class="container py-5 h-100">
  15.                     
  16.                     <div class="row d-flex justify-content-center align-items-center h-100">
  17.                     <div class="row">
  18.                         {% if arrayresult.error %}
  19.                             <div class="alert alert-danger">{{ arrayresult.msg }}</div>
  20.                         {% endif %}
  21.                         
  22.                         {% for label, messages in app.flashes %}
  23.                             {% for message in messages %}
  24.                                 <div class="alert alert-{{ label == 'error' ? 'danger' : label }} alert-dismissible fade show" role="alert">
  25.                                     {{ message }}
  26.                                     <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
  27.                                 </div>
  28.                             {% endfor %}
  29.                         {% endfor %}
  30.                     </div>
  31.                     <div class="col">
  32.                         <div class="card cart-shell">
  33.                           <div class="card-body p-4">
  34.                             <div class="row">
  35.                               <div class="col-lg-7">
  36.                                 <h5 class="mb-3"><a href="#!" class="text-body">
  37.                                 <i class="bi bi-cart-fill me-2"></i>Liste de vo(s) commande(s)</a></h5>
  38.                                 <hr>
  39.                                 <div class="d-flex justify-content-between align-items-center mb-4">
  40.                                   <div>
  41.                                     <p class="mb-1">Votre panier</p>
  42.                                     <p class="mb-0">Vous avez {{ listPanier|length }} produit(s) sur votre panier</p>
  43.                                   </div>
  44.                                   <div>
  45.                                     <p class="mb-0"><span class="text-muted">Sort by:</span> <a href="#!"
  46.                                         class="text-body">price <i class="fas fa-angle-down mt-1"></i></a></p>
  47.                                     <a href="{{ path('app_product_panier_remove') }}" class="btn btn-danger">vider le panier</a> 
  48.                                   </div>
  49.                                 </div>
  50.                                 {% set total = 0 %}
  51.                                 {% set total_taxe = 0 %}
  52.                                 {% for panier in listPanier %}
  53.                                     <div class="card mb-3">
  54.                                          <div class="card-body">
  55.                                             <div class="d-flex justify-content-between">
  56.                                                 <div class="d-flex flex-row align-items-center">
  57.                                                     <div>
  58.                                                          <img src="{{ asset('uploads/products/'~panier.produit.picture) }}" class="img-fluid rounded-3" alt="Shopping item" style="width: 65px;">
  59.                                                     </div>
  60.                                                     <div class="ms-3">
  61.                                                       <h5>{{ panier.produit.title }}</h5>
  62.                                                           {% if panier.rent is defined %}
  63.                                                             <small class="text-muted">
  64.                                                                 <i class="fas fa-calendar-alt"></i>
  65.                                                                 Location:
  66.                                                                 {{ panier.rent.startDate|date('d/m/Y') }}
  67.                                                                 →
  68.                                                                 {{ panier.rent.endDate|date('d/m/Y') }}
  69.                                                             </small>
  70.                                                                 {% set days = panier.rent.startDate.diff(panier.rent.endDate).days %}
  71.                                                             <br>
  72.                                                             <small class="text-info">
  73.                                                                 Durée: {{ days }} jour{{ days > 1 ? 's' : '' }}
  74.                                                             </small>
  75.                                                         {% endif %}
  76.                                                     </div>
  77.                                                 </div>
  78.                                 <div class="d-flex flex-column align-items-center cart-item-meta">
  79.                                                     <br/>
  80.                                                     <div class="row">
  81.                                                         <div class="ms-1">
  82.                                                             {% set price_product = 0 %}
  83.                                                             {% set price_product_taxe = 0 %}
  84.                                                             <span id="price_prd{{ panier.produit.id }}">
  85.                                                                 {% if is_granted('ROLE_COM') %}
  86.                                                                     {% if panier.number < panier.price_product.nbrDealerProd %}
  87.                                                                         {% set price_product = panier.price_product.priceCustomer * panier.number %}
  88.                                                                     {% else %}
  89.                                                         {% set price_product = panier.price_product.priceCustomer * panier.number %}
  90.                                                                     {% endif %}
  91.                                                                 {% else %}
  92.                                                                     {% if panier.number < panier.price_product.nbrBulkProd %}
  93.                                                                         {% set price_product = panier.price_product.priceCustomer * panier.number %}
  94.                                                                     {% else %}
  95.                                                         {% set price_product = panier.price_product.priceCustomer * panier.number %}
  96.                                                                     {% endif %}
  97.                                                                 {% endif %}
  98.                                                                 {% set price_product_taxe = price_product + ((price_product * panier.price_product.taxeProduct)/100) %}
  99.                                                                 {{ price_product|number_format(2, '.', ' ') }} {{ panier.produit.fkdevise.title }}
  100.                                                             </span>
  101.                                                         </div>
  102.                                                     </div>
  103.                                                     <div class="row">
  104.                                                         <span class="small text-danger" id="span{{ panier.produit.id }}"></span>
  105.                                                     </div>
  106.                                                 </div>
  107.                                 <div class="d-flex flex-column align-items-center cart-item-remove">
  108.                                                     <br/>
  109.                                                     <div class="row">
  110.                                                         <a href="{{ path('app_product_panier_product_remove', {'productID': panier.produit.id}) }}"  class="text-danger"><i class="fas fa-trash-alt"></i></a>
  111.                                                     </div>
  112.                                                 </div>
  113.                                             </div>
  114.                                          </div>
  115.                                     </div>
  116.                                     {% set total = total + price_product %}
  117.                                     {% set total_taxe = total_taxe + price_product_taxe %}
  118.                                 {% endfor %}
  119.                                 {% if listPanierValider and listPanierValider|length > 0 %}
  120.                                     <div class="d-flex justify-content-between align-items-center mb-4">
  121.                                     <div>
  122.                                         <p class="mb-1">Vos paniers validés</p>
  123.                                         <p class="mb-0 text-success">Vous avez {{ listPanierValider|length }} produit(s) dont la commande a été validée</p>
  124.                                     </div>
  125.                                     </div>
  126.                                     {% for panierValider in listPanierValider %}
  127.                                         <div class="card mb-3">
  128.                                             <div class="card-body">
  129.                                                 <div class="d-flex justify-content-between">
  130.                                                     <div class="d-flex flex-row align-items-center">
  131.                                                         <div>
  132.                                                             <img src="{{ asset('uploads/products/'~panierValider.produit.picture) }}" class="img-fluid rounded-3" alt="Shopping item" style="width: 65px;">
  133.                                                         </div>
  134.                                                         <div class="ms-3">
  135.                                                         <h5>{{ panierValider.produit.title }}</h5>
  136.                                                         </div>
  137.                                                     </div>
  138.                                 <div class="d-flex flex-column align-items-center cart-item-meta">
  139.                                                         <br/>
  140.                                                         <div class="row">
  141.                                                             <div class="ms-1">
  142.                                                                 {% set price_prd = 0 %}
  143.                                                                 <span>
  144.                                                                     {% if is_granted('ROLE_COM') %}
  145.                                                                         {% if panierValider.number < panierValider.price_product.nbrDealerProd %}
  146.                                                                             {% set price_prd = panierValider.price_product.priceCustomer * panierValider.number %}
  147.                                                                         {% else %}
  148.                                                         {% set price_prd = panierValider.price_product.priceCustomer * panierValider.number %}
  149.                                                                         {% endif %}
  150.                                                                     {% else %}
  151.                                                                         {% if panierValider.number < panierValider.price_product.nbrBulkProd %}
  152.                                                                             {% set price_prd = panierValider.price_product.priceCustomer * panierValider.number %}
  153.                                                                         {% else %}
  154.                                                         {% set price_prd = panierValider.price_product.priceCustomer * panierValider.number %}
  155.                                                                         {% endif %}
  156.                                                                     {% endif %}
  157.                                                                     {{ price_prd|number_format(2, '.', ' ') }} {{ panierValider.produit.fkdevise.title }}
  158.                                                                 </span>
  159.                                                             </div>
  160.                                                         </div>
  161.                                                     </div>
  162.                                                 </div>
  163.                                             </div>
  164.                                         </div>
  165.                                     {% endfor %}
  166.                                 {% endif %}
  167.                                 {% if listPanierNonValider and listPanierNonValider|length > 0 %}
  168.                                     <div class="d-flex justify-content-between align-items-center mb-4">
  169.                                         <div>
  170.                                             <p class="mb-1">Vos paniers non-validés</p>
  171.                                             <p class="mb-0 text-danger">Vous avez {{ listPanierNonValider|length }} produit(s) dont la commande n'a pas été validée</p>
  172.                                         </div>
  173.                                     </div>
  174.                                     {% for panierNonValider in listPanierNonValider %}
  175.                                         <div class="card mb-3">
  176.                                             <div class="card-body">
  177.                                                 <div class="d-flex justify-content-between">
  178.                                                     <div class="d-flex flex-row align-items-center">
  179.                                                         <div>
  180.                                                             <img src="{{ asset('uploads/products/'~panierNonValider.panier.produit.picture) }}" class="img-fluid rounded-3" alt="Shopping item" style="width: 65px;">
  181.                                                         </div>
  182.                                                         <div class="ms-3">
  183.                                                         <h5>{{ panierNonValider.panier.produit.title }}</h5>
  184.                                                         </div>
  185.                                                     </div>
  186.                                 <div class="d-flex flex-column align-items-center cart-item-meta">
  187.                                                         <br/>
  188.                                                         <div class="row">
  189.                                                             <div class="ms-1">
  190.                                                                 {% set price = 0 %}
  191.                                                                 <span>
  192.                                                                     {% if is_granted('ROLE_COM') %}
  193.                                                                         {% if panierNonValider.panier.number < panierNonValider.panier.price_product.nbrDealerProd %}
  194.                                                                             {% set price = panierNonValider.panier.price_product.priceCustomer * panierNonValider.panier.number %}
  195.                                                                         {% else %}
  196.                                                         {% set price = panierNonValider.panier.price_product.priceCustomer * panierNonValider.panier.number %}
  197.                                                                         {% endif %}
  198.                                                                     {% else %}
  199.                                                                         {% if panierNonValider.panier.number < panierNonValider.panier.price_product.nbrBulkProd %}
  200.                                                                             {% set price = panierNonValider.panier.price_product.priceCustomer * panierNonValider.panier.number %}
  201.                                                                         {% else %}
  202.                                                         {% set price = panierNonValider.panier.price_product.priceCustomer * panierNonValider.panier.number %}
  203.                                                                         {% endif %}
  204.                                                                     {% endif %}
  205.                                                                     {{ price|number_format(2, '.', ' ') }} {{ panierNonValider.panier.produit.fkdevise.title }}
  206.                                                                 </span>
  207.                                                             </div>
  208.                                                         </div>
  209.                                                         <div class="row">
  210.                                                             <span class="small text-danger">{{ panierNonValider.motif }}</span>
  211.                                                         </div>
  212.                                                     </div>
  213.                                                 </div>
  214.                                             </div>
  215.                                         </div>
  216.                                     {% endfor %}
  217.                                 {% endif %}
  218.                               </div>
  219.                               <div class="col-lg-5 cart-summary-column">
  220.                                 <div class="card bg-primary text-white rounded-3 cart-summary-card">
  221.                                   <div class="card-body">
  222.                                     <div class="d-flex justify-content-between">
  223.                                       <p class="mb-2">Total</p>
  224.                                       <p class="mb-2" id="totalCommandeHt">{{ total|number_format(2, '.', ' ') }}</p>
  225.                                     </div>
  226.                                     <div class="d-flex justify-content-between">
  227.                                       <p class="mb-2">Livraison</p>
  228.                                       <p class="mb-2">0.00</p>
  229.                                     </div>
  230.                                     <div class="d-flex justify-content-between mb-4">
  231.                                       <p class="mb-2">Total(Incl. taxes)</p>
  232.                                       <p class="mb-2" id="totalCommandeTtc" >{{ total_taxe|number_format(2, '.', ' ') }}</p>
  233.                                     </div>
  234.                                     {{ include('frontView/product/_form.html.twig') }}
  235.                                   </div>
  236.                                 </div>
  237.                               </div>
  238.                               
  239.                             </div>
  240.                           </div>
  241.                         </div>
  242.                       </div>
  243.                     </div>
  244.                   </div>
  245.             </div>
  246.         </div>
  247.     </div>
  248. </main>
  249. {{ include('@FrontView/footer.html.twig') }}
  250. <script src="{{ asset('build/UtilityOrder.js') }}"></script>
  251. {% endblock %}