templates/product/singleProduct.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% block title %}AFI Market Product view{% endblock %}
  3. {% block body %}
  4.     <hr>
  5.     <div class="container mt-2 mb-1 bg-white" >
  6.         <div class="container">
  7.             <div class="row">
  8.                 <div class="col-lg-5 col-md-6 mb-4 mb-md-0">
  9.                     <div class="product-image">
  10.                         <div class="product_img_box">
  11.                             <div class="zoomImageProduct">
  12.                                 <img class="product_img" style="width: 600px; height: auto"  id="product_img" src="{{ asset('assets/uploads/products/'~product.image)|imagine_filter('my_thumb_') }}" data-zoom-image="{{ asset('assets/uploads/products/'~product.image)|imagine_filter('my_thumb_') }}" alt="product_img1" />
  13.                             </div>
  14.                             <a class="product_img_zoom" title="Zoom">
  15.                                 <span class="linearicons-zoom-in"></span>
  16.                             </a>
  17.                         </div>
  18.                     </div>
  19.                     <div class="text-center product-thumbs">
  20.                             <div class="product-thumbs-track ps-slider owl-carousel">
  21.                                 <img  class="img-thumbnail product_img_small"  src="{{ asset('assets/uploads/products/'~product.image)|imagine_filter('my_thumb_')}}" data-imgbigurl="{{ asset('assets/uploads/products/'~product.image)|imagine_filter('my_thumb_') }}">
  22.                                 {% for productImage in product.productImages %}
  23.                                     {% if productImage.isVisible == true %}
  24.                                         <img  class=" img-thumbnail product_img_small"  src="{{ asset('assets/uploads/products/productsOthersImages/'~productImage.image)|imagine_filter('my_thumb_')}}" data-imgbigurl="{{ asset('assets/uploads/products/productsOthersImages/'~productImage.image)|imagine_filter('my_thumb_') }}" >
  25.                                     {% endif %}
  26.                                 {% endfor %}
  27.                             </div>
  28.                     </div>
  29.                 </div>
  30.                 <div class="col-lg-7 col-md-6">
  31.                     <div class="pr_detail">
  32.                         <div class="product_description">
  33.                             <div style="background: #F0F0F0; padding: 8px">
  34.                                 <h4 class="product_title" style="font-family: Tahoma,sans-serif"><a href="#">{{ product.name }}</a></h4>
  35.                             </div>
  36.                             <table style="width: 100%; margin-top: 10px">
  37.                                 <tr>
  38.                                     <td class="text-center">
  39.                                         {% if product.maxCommande == 0 %}
  40.                                             {% if product.maxPrice == 0 %}
  41.                                                 <div class=" font-weight-bolder text-dark"><span style="color: #0a58ca">{{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ product.price }}</span> / {{ product.minCommande }} {{ product.emballage[0].nom }} (min order) </div>
  42.                                             {% else %}
  43.                                                 <div class="font-weight-bolder text-dark"><span style="color: #0a58ca">{{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ product.price }}</span> - $ {{ product.maxPrice }} / {{ product.minCommande }} {{ product.emballage[0].nom }} (min order)</div>
  44.                                             {% endif %}
  45.                                         {% else %}
  46.                                             <div style="font-family: Tahoma">{{ product.minCommande }} {{ product.maxCommande > 0 ? ' - '~product.maxCommande : ''  }} {{ product.emballage[0].nom }}</div>
  47.                                             <div class="font-weight-bolder text-dark"><span style="color: #0a58ca">{{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ product.price }}</span> - {{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ product.maxPrice }}</div>
  48.                                         {% endif %}
  49.                                     </td>
  50.                                     {% for producInterval in product.priceIntervals %}
  51.                                         {% if producInterval.isVisible == true %}
  52.                                             <td class="text-center">
  53.                                                 <div style="font-family: Tahoma,sans-serif">
  54.                                                     {% if producInterval.maxQte >= 100000 %}
  55.                                                         >= {{ producInterval.minQte }}
  56.                                                     {% else %}
  57.                                                         {{ producInterval.minQte }}
  58.                                                         {{ producInterval.maxQte > 0 ? ' - '~producInterval.maxQte : ''  }} {{ product.emballage[0].nom }}
  59.                                                     {% endif %}
  60.                                                 </div>
  61.                                                 <div class="font-weight-bolder text-dark">
  62.                                                     {{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ producInterval.minPrice }}
  63.                                                     {% if producInterval.maxPrice > 0 %}- {{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ producInterval.maxPrice }} {% endif %}
  64.                                                 </div>
  65.                                             </td>
  66.                                         {% endif %}
  67.                                     {% endfor %}
  68.                                 </tr>
  69.                             </table>
  70.                             <hr>
  71.                             <div class="product_price">
  72.                                 {% if(product.isPromotionalPrice) %}
  73.                                     <span class="price">{{ app.session.get('devise') ?? app.request.server.get('devise') }} {{ product.price  }}</span>
  74.                                     <del class="text-danger">{{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ product.reelPrice  }}</del>
  75.                                     <div class="on_sale ">
  76.                                         <span>{{ product.pourcentagePromotionalPrice }} % Off</span>
  77.                                     </div>
  78.                                 {% else %}
  79.                                     <span class="price">{{ app.session.get('devise') ?? app.request.server.get('devise')  }} {{ product.price  }}</span>
  80.                                 {% endif %}
  81.                             </div>
  82.                             <div class="rating_wrap">
  83.                                 <div class="rating">
  84.                                     {% set note = 0 %}
  85.                                     {% set totalRate = 5 * product.reviewsProducts|length %}
  86.                                     {% for review in product.reviewsProducts  %}
  87.                                         {% set note = review.note + note %}
  88.                                     {% endfor %}
  89.                                     <div class="product_rate" style="width:{{ totalRate > 0 ? ((note/totalRate) * 100):0 }}%"></div>
  90.                                 </div>
  91.                                 <span class="rating_num">{{ product.reviewsProducts | length }}</span>
  92.                             </div>
  93.                             <br>
  94.                             <br>
  95.                             <div class="pr_desc text-left" >
  96.                                 {{ product.moreInformation|raw }}
  97.                             </div>
  98.                             <hr>
  99.                             <div class="product_sort_info ">
  100.                                 <ul>
  101.                                     <li><i class="linearicons-warning"></i>{{ 'Minimun quantity to pay for this product'|trans }} &nbsp;&nbsp; <span class="badge badge-pill badge-primary mt-1">{{ product.minCommande == 0 ? 1 : product.minCommande}} </span></li>
  102.                                     <li><i class="linearicons-bag"></i>{{ 'Quantity in package'|trans }} ({{ product.emballage[0].nom }}) &nbsp; <span class="badge badge-pill badge-danger bg-danger mt-1">{{ product.pieceInPackage }}</span> </li>
  103.                                     {% if product.poidNet > 0  %}
  104.                                         <li>
  105.                                             <i class="linearicons-weight"></i>
  106.                                             {{ product.poidNet }} weight net
  107.                                         </li>
  108.                                     {% endif %}
  109.                                     {% if product.sizes|length > 0 %}
  110.                                         <li>
  111.                                             <div class="product_color_switch">
  112.                                                 <i class="linearicons-color-sampler"></i> Color
  113.                                                 {% for color in product.colors  %}
  114.                                                     <span data-color="{{ color.hexadecimal }}"></span>
  115.                                                 {% endfor %}
  116.                                             </div>
  117.                                         </li>
  118.                                     {% endif %}
  119.                                     {% if product.sizes|length > 0 %}
  120.                                         <li>
  121.                                             <div class="product_color_switch">
  122.                                                 <i class="linearicons-text-size"></i> Size
  123.                                                 {% for size in product.sizes  %}
  124.                                                     <span>{{ size.name }}</span>
  125.                                                 {% endfor %}
  126.                                             </div>
  127.                                         </li>
  128.                                     {% endif %}
  129.                                 </ul>
  130.                             </div>
  131.                         </div>
  132.                         <hr />
  133.                         <div>
  134.                             <form id="formCart" class="d-flex justify-content-center mt-3" method="post" action="{{ path('cart_add_form',{'id':product.id}) }}" >
  135.                                 <div class="cart-product-quantity mt-2">
  136.                                     <div class="quantity">
  137.                                         <input type="button" data-min-price="{{ product.minCommande == 0 ? 1 : product.minCommande}}" value="-" class="minus" data-url="{{ path('cart_add',{'id':product.id}) }}">
  138.                                         <input type="text" data-min-price="{{ product.minCommande == 0 ? 1 : product.minCommande}}" name="quantity_product" value="{{ product.minCommande == 0 ? 1 : product.minCommande}}" title="Qty" class="qty" size="4">
  139.                                         <input type="button" value="+"  class="plus" data-url="{{ path('cart_add',{'id':product.id}) }}">
  140.                                     </div>
  141.                                 </div>
  142.                                 <div class="cart_btn">
  143.                                     <button data-form="#formCart"  data-img="#product_img"  id="product__{{ product.id }}" data-id="#product__{{ product.id }}" class="btn btn-outline-primary mt-2 add-to-cart_form btn-addtocart"><i class="icon-basket-loaded"></i> {{ 'Add'|trans }}</button>
  144.                                     <a class="add_compare hide d-none" href="#"><i class="icon-shuffle"></i></a>
  145.                                     <a class="add_wishlist d-none" href="#"><i class="icon-heart"></i></a>
  146.                                 </div>
  147.                             </form>
  148.                         </div>
  149.                         <hr/>
  150.                         <div class=" d-flex justify-content-between mt-3">
  151.                             <div class=" text-center">
  152.                                 <a href="{{ path('shop') }}" class="btn btn-info btn-radius-50 p-radius--"  type="button"><i class="linearicons-arrow-left-square"></i> {{ 'shop'|trans }}</a>
  153.                                 <a class="add_compare hide d-none" href="#"><i class="icon-shuffle"></i></a>
  154.                                 <a class="add_wishlist d-none" href="#"><i class="icon-heart"></i></a>
  155.                             </div>
  156.                             <div>
  157.                                 <a href="{{ path('cart') }}" class="btn btn-secondary btn-radius-50 p-radius--" type="button"><i class="linearicons-cart"></i>{{ ' View'|trans }}</a>
  158.                             </div>
  159.                         </div>
  160.                         <hr/>
  161.                         <ul class="product-meta mt-5">
  162.                             <li><span class="text-primary"><i class="linearicons-group-work"></i></span> Category:
  163.                                 {% for category in product.category %}
  164.                                     <a href="{{ path('mymarket_show_category',{'id': category.mymarket.id,'category':category.id}) }}">
  165.                                         # {{ category.name }}
  166.                                     </a>
  167.                                 {% endfor %}
  168.                             </li>
  169.                             <li><span class="text-primary"><i class="linearicons-tags"></i></span> Tags:
  170.                                 {% for tag in product.tag %}
  171.                                     <a href="{{ path('product_seek_tags',{'id':tag.id,'tag':tag.name}) }}">
  172.                                         # {{ tag.name }}
  173.                                     </a>
  174.                                 {% endfor %}
  175.                             </li>
  176.                         </ul>
  177.                         <div class="product_share d-none">
  178.                             <span><span class="text-primary"><i class="linearicons-link"></i></span> Share:</span>
  179.                             <ul class="social_icons">
  180.                                 <li><a href="#"><i class="ion-social-facebook"></i></a></li>
  181.                                 <li><a href="#"><i class="ion-social-twitter"></i></a></li>
  182.                                 <li><a href="#"><i class="ion-social-googleplus"></i></a></li>
  183.                                 <li><a href="#"><i class="ion-social-youtube-outline"></i></a></li>
  184.                                 <li><a href="#"><i class="ion-social-instagram-outline"></i></a></li>
  185.                             </ul>
  186.                         </div>
  187.                     </div>
  188.                 </div>
  189.             </div>
  190.             <br>
  191.             <br>
  192. <div class="card">
  193.     <div class="card-body">
  194.         <div class="row">
  195.             <div class="col-12 bg-white">
  196.                 <div class="tab-style3">
  197.                     <ul class="nav nav-tabs nav-fill" style="background: #f6f6f6" role="tablist">
  198.                         <li class="nav-item ">
  199.                             <a class="nav-link active font-weight-bolder" id="Description-tab" data-toggle="tab" href="#Description" role="tab" aria-controls="Description" aria-selected="true"> {{ 'Description'|trans }}</a>
  200.                         </li>
  201.                         <li class="nav-item d-none">
  202.                             <a class="nav-link d-none" id="Additional-info-tab" data-toggle="tab" href="#Additional-info" role="tab" aria-controls="Additional-info" aria-selected="false">Additional info</a>
  203.                         </li>
  204.                         <li class="nav-item  ">
  205.                             <a class="nav-link font-weight-bolder" id="Reviews-tab" data-toggle="tab" href="#Reviews" role="tab" aria-controls="Reviews" aria-selected="false">Reviews ({{ product.reviewsProducts | length }})</a>
  206.                         </li>
  207.                     </ul>
  208.                     <div class="tab-content shop_info_tab">
  209.                         <div class="tab-pane active product_sort_info_ fade show" id="Description" role="tabpanel" aria-labelledby="Description-tab">
  210.                             <div>{{ product.description|raw }}</div>
  211.                         </div>
  212.                         <div class="tab-pane d-none fade show " id="Additional-info" role="tabpanel" aria-labelledby="Description-tab">
  213.                         </div>
  214.                         <div class="tab-pane fade" id="Reviews" role="tabpanel" aria-labelledby="Reviews-tab">
  215.                             <div class="heading_s1">
  216.                                 <h3 class="font-monospace"><span class="ti-comments"></span> {{ 'Review'|trans }}</h3>
  217.                             </div>
  218.                             <div class="card">
  219.                                 <div class="card-body" style="background: #f6f6f6">
  220.                                     {{ include('reviews_product/_form.html.twig') }}
  221.                                 </div>
  222.                             </div>
  223.                         </div>
  224.                     </div>
  225.                 </div>
  226.             </div>
  227.         </div>
  228.     </div>
  229. </div>
  230. <br>
  231. <br>
  232. <br>
  233. <br>
  234.             <div class="row">
  235.                 <div class="col-12">
  236.                     <div class="heading_s1">
  237.                         <h3 class="font-monospace">{{ 'Related Products'|trans }}</h3>
  238.                         <div class="row">
  239.                             <div class="col-12">
  240.                                 <div class="divider"></div>
  241.                             </div>
  242.                         </div>
  243.                     </div>
  244.                     <div class="releted_product_slider carousel_slider owl-carousel owl-theme" data-margin="20" data-responsive='{"0":{"items": "1"}, "481":{"items": "2"}, "768":{"items": "3"}, "1199":{"items": "4"}}'>
  245.                         {% for category in product.category %}
  246.                             {% for productReleated in category.products %}
  247.                                 {% if product is not same as(productReleated) %}
  248.                                     {{ include('partials/product_no_quick_view.html.twig',{'product': productReleated}) }}
  249.                                 {% endif %}
  250.                             {% endfor %}
  251.                         {% endfor %}
  252.                     </div>
  253.                 </div>
  254.             </div>
  255.         </div>
  256.     </div>
  257.     <div class="container">
  258.         <div class="row">
  259.             <div class="col-md-12 product_index">
  260.                 <h2>{{ 'AFI SARL'|trans }} <b>{{ 'Import Export'|trans }}</b></h2>
  261.             </div>
  262.         </div>
  263.     </div>
  264. {% endblock %}