templates/home/show.html.twig line 1

  1. {% extends 'base2.html.twig' %}
  2. {% block title %}Nom du commerce{% endblock %}
  3. {% block body %}
  4.     <div class="font-inter dark:bg-background sticky-header-first-content">
  5.       <section
  6.   class="pt-0 border-b border-gray-200 dark:border-foreground dark:bg-background lg:px-0 px-5"
  7. >
  8.   <div class="container-fluid mx-auto lg:p-0 p-5">
  9.     <!-- Slider main container -->
  10.     <div class="relative">
  11.       <div class="swiper swiper-4-item overflow-x-hidden">
  12.         <!-- Additional required wrapper -->
  13.         <div class="swiper-wrapper relative h-full">
  14.           <!-- Slides -->
  15.           <div class="swiper-slide">
  16.             <div class="relative cursor-pointer">
  17.               <img
  18.                 class="h-96 w-full object-cover fullscreen-image"
  19.                 src="{{ vich_uploader_asset(shopForView, 'picture1') }}"
  20.               />
  21.             </div>
  22.           </div>
  23.           {% if vich_uploader_asset(shopForView, 'picture2') is not null %}
  24.           <div class="swiper-slide">
  25.             <div class="relative cursor-pointer">
  26.               <img class="h-96 w-full object-cover fullscreen-image"
  27.               src="{{ vich_uploader_asset(shopForView, 'picture2') }}" />
  28.             </div>
  29.           </div>
  30.           {% endif %}
  31.           {% if vich_uploader_asset(shopForView, 'picture3') is not null %}
  32.           <div class="swiper-slide">
  33.             <div class="relative cursor-pointer">
  34.               <img
  35.                 class="h-96 w-full object-cover fullscreen-image"
  36.                 src="{{ vich_uploader_asset(shopForView, 'picture3') }}"
  37.               />
  38.             </div>
  39.           </div>
  40.           {% endif %}
  41.           {% if vich_uploader_asset(shopForView, 'picture4') is not null %}
  42.           <div class="swiper-slide">
  43.             <div class="relative cursor-pointer">
  44.               <img
  45.                 class="h-96 w-full object-cover fullscreen-image"
  46.                 src="{{ vich_uploader_asset(shopForView, 'picture4') }}"
  47.               />
  48.             </div>
  49.           </div>
  50.           {% endif %}
  51.           {% if vich_uploader_asset(shopForView, 'picture5') is not null %}
  52.           <div class="swiper-slide">
  53.             <div class="relative cursor-pointer">
  54.               <img
  55.                 class="h-96 w-full object-cover fullscreen-image"
  56.                 src="{{ vich_uploader_asset(shopForView, 'picture5') }}"
  57.               />
  58.             </div>
  59.           </div>
  60.           {% endif %}
  61.           {% if vich_uploader_asset(shopForView, 'picture6') is not null %}
  62.           <div class="swiper-slide">
  63.             <div class="relative cursor-pointer">
  64.               <img
  65.                 class="h-96 w-full object-cover fullscreen-image"
  66.                 src="{{ vich_uploader_asset(shopForView, 'picture6') }}"
  67.               />
  68.             </div>
  69.           </div>
  70.           {% endif %}
  71.         </div>
  72.         <!-- If we need pagination -->
  73.         <div class="swiper-pagination"></div>
  74.         <!-- If we need navigation buttons -->
  75.       </div>
  76.       {% if vich_uploader_asset(shopForView, 'picture5') != null %}
  77.       <div class="swiper-button-prev left-2 lg:left-6 after:hidden">
  78.         <button
  79.           type="button"
  80.           class="bg-white dark:bg-foreground text-blue-500 rounded-full p-2"
  81.         >
  82.           <svg
  83.             xmlns="http://www.w3.org/2000/svg"
  84.             class="h-5 w-5"
  85.             fill="none"
  86.             viewBox="0 0 24 24"
  87.             stroke="currentColor"
  88.           >
  89.             <path
  90.               stroke-linecap="round"
  91.               stroke-linejoin="round"
  92.               stroke-width="2"
  93.               d="M10 19l-7-7m0 0l7-7m-7 7h18"
  94.             />
  95.           </svg>
  96.         </button>
  97.       </div>
  98.       <div class="swiper-button-next absolute right-2 lg:right-6 after:hidden">
  99.         <button
  100.           type="button"
  101.           class="bg-white dark:bg-foreground text-blue-500 rounded-full p-2"
  102.         >
  103.           <svg
  104.             xmlns="http://www.w3.org/2000/svg"
  105.             class="h-5 w-5"
  106.             fill="none"
  107.             viewBox="0 0 24 24"
  108.             stroke="currentColor"
  109.           >
  110.             <path
  111.               stroke-linecap="round"
  112.               stroke-linejoin="round"
  113.               stroke-width="2"
  114.               d="M14 5l7 7m0 0l-7 7m7-7H3"
  115.             />
  116.           </svg>
  117.         </button>
  118.       </div>
  119.         {% endif %}
  120.     </div>
  121.     <div class="bg-gray-100 dark:bg-foreground pt-6 pb-1">
  122.       <div class="container mx-auto px-5">
  123.  
  124.         <div class="flex flex-wrap mb-4">
  125.         <!-- Start - Show categories -->
  126.   
  127.           {% for category in shopForView.categories %}
  128.           <span class="bg-yellow-500 text-xs text-white rounded-full px-4 py-1 flex items-center mr-1 mb-3">   
  129.                             <span class="badge bg-warning text-dark">{{ category.name }}</span>
  130.           </span>
  131.           {% endfor %}
  132.         
  133.         <!-- END - Show categories -->
  134.       
  135.         </div>
  136.         <div class="flex justify-between flex-wrap">
  137.           <div class="mb-4">
  138.             <div class="flex items-center mb-1">
  139.               <h4
  140.                 class="text-gray-700 font-medium dark:text-gray-100 mr-2 lg:text-3xl text-2xl"
  141.               >
  142.                 {{shopForView.name}}
  143.               </h4>
  144.               
  145.               {% if shopForView.verified == true %}
  146.               <svg
  147.                 xmlns="http://www.w3.org/2000/svg"
  148.                 class="h-5 w-5 text-green-500"
  149.                 viewBox="0 0 20 20"
  150.                 fill="currentColor"
  151.               >
  152.                 <path
  153.                   fill-rule="evenodd"
  154.                   d="M6.267 3.455a3.066 3.066 0 001.745-.723 3.066 3.066 0 013.976 0 3.066 3.066 0 001.745.723 3.066 3.066 0 012.812 2.812c.051.643.304 1.254.723 1.745a3.066 3.066 0 010 3.976 3.066 3.066 0 00-.723 1.745 3.066 3.066 0 01-2.812 2.812 3.066 3.066 0 00-1.745.723 3.066 3.066 0 01-3.976 0 3.066 3.066 0 00-1.745-.723 3.066 3.066 0 01-2.812-2.812 3.066 3.066 0 00-.723-1.745 3.066 3.066 0 010-3.976 3.066 3.066 0 00.723-1.745 3.066 3.066 0 012.812-2.812zm7.44 5.252a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z"
  155.                   clip-rule="evenodd"
  156.                 />
  157.               </svg>
  158.               {% endif %}
  159.             </div>
  160.             <div class="flex items-center text-gray-500 dark:text-gray-300">
  161.               <svg
  162.                 xmlns="http://www.w3.org/2000/svg"
  163.                 class="h-5 w-5 mr-1"
  164.                 viewBox="0 0 20 20"
  165.                 fill="currentColor"
  166.               >
  167.                 <path
  168.                   fill-rule="evenodd"
  169.                   d="M5.05 4.05a7 7 0 119.9 9.9L10 18.9l-4.95-4.95a7 7 0 010-9.9zM10 11a2 2 0 100-4 2 2 0 000 4z"
  170.                   clip-rule="evenodd"
  171.                 />
  172.               </svg>
  173.               <p class="text-base">
  174.                   {{ shopForView.addressCity }}            
  175.               </p>
  176.             </div>
  177.           </div>
  178.           {% if shopForView.verified == true %}
  179.           <div class="mb-4">
  180.             <button
  181.           type="button"
  182.           class="w-full flex justify-center items-center bg-green-600 rounded-lg text-white p-[0.657rem] mb-3"
  183.         >
  184.           <svg
  185.             class="mr-3"
  186.             width="31"
  187.             height="31"
  188.             viewBox="0 0 31 31"
  189.             fill="none"
  190.             xmlns="http://www.w3.org/2000/svg"
  191.           >
  192.             <path
  193.               d="M3.1001 15.5C3.1001 8.65091 8.65104 3.09998 15.5001 3.09998C22.3492 3.09998 27.9001 8.65091 27.9001 15.5C27.9001 22.349 22.3492 27.9 15.5001 27.9C8.65104 27.9 3.1001 22.349 3.1001 15.5ZM21.1092 13.359C21.6371 12.8311 21.6371 11.9689 21.1092 11.4409C20.5812 10.9129 19.719 10.9129 19.191 11.4409L13.9501 16.6818L11.8092 14.5409C11.2812 14.0129 10.419 14.0129 9.89103 14.5409C9.36307 15.0689 9.36307 15.9311 9.89103 16.459L12.991 19.559C13.519 20.087 14.3812 20.087 14.9092 19.559L21.1092 13.359Z"
  194.               fill="white"
  195.             />
  196.           </svg>
  197.           Etablissement vérifié par Best of Sarlat
  198.         </button> 
  199.           {% endif %}
  200.                   <div class="mb-4">
  201.             <div class="flex flex-wrap items-center mb-1">
  202. {% set rating = apiData.result.rating %}
  203. {% if rating >= 0 and rating < 0.5 %}
  204. <div class='stars-rating' style="--rating: 0;">
  205.   <div class="rating"></div>
  206. </div>
  207. {% elseif rating >= 0.5 and rating < 1.5 %}
  208. <div class='stars-rating' style="--rating: 0.5;">
  209.   <div class="rating"></div>
  210. </div>
  211. {% elseif rating >= 1.5 and rating < 2.5 %}
  212. <div class='stars-rating' style="--rating: 1.5;">
  213.   <div class="rating"></div>
  214. </div>
  215. {% elseif rating >= 2.5 and rating < 3.5 %}
  216. <div class='stars-rating' style="--rating: 2.5;">
  217.   <div class="rating"></div>
  218. </div>
  219. {% elseif rating >= 3.5 and rating < 4.5 %}
  220. <div class='stars-rating' style="--rating: 3.5;">
  221.   <div class="rating"></div>
  222. </div>
  223. {% elseif rating >= 4.5 and rating < 5 %}
  224. <div class='stars-rating' style="--rating: 4.5;">
  225.   <div class="rating"></div>
  226. </div>
  227. {% elseif rating == 5 %}
  228. <div class='stars-rating' style="--rating: 5;">
  229.   <div class="rating"></div>
  230. </div>
  231. {% endif %}
  232.               <span class="text-gray-700 font-medium mr-2 dark:text-gray-400"
  233.                 >{{apiData.result.rating}}</span
  234.               >
  235.               <span class="text-gray-500 dark:text-gray-400 text-sm mr-2"
  236.                 >({{apiData.result.user_ratings_total}} avis donnés)</span
  237.               >
  238.             </div> 
  239.               <span class="text-gray-500 dark:text-gray-400 text-sm mr-2">
  240.                 Note fournie par
  241.                 <a href="{{apiData.result.url}}" target="_blank" class="text-blue-500 underline">Google</a>
  242.               </span>
  243.           </div>
  244.         </div>
  245.       </div>
  246.     </div>
  247.   </div>
  248. </section>
  249. <section class="dark:bg-background pt-20 bg-bodygray lg:px-0 px-5">
  250.   <div class="container mx-auto">
  251.     <div class="grid lg:grid-cols-3 grid-cols-1 gap-7">
  252.       <div class="lg:col-span-2 col-span-1">
  253.         <div
  254.           class="rounded-lg shadow-fornt-2 dark:bg-foreground p-6 bg-white mb-7"
  255.         >
  256.           <h5
  257.             class="text-base font-medium mb-4 text-gray-700 dark:text-gray-100"
  258.           >
  259.             Description
  260.           </h5>
  261.           <p class="text-sm font-normal text-gray-500 dark:text-gray-300">
  262.             {{shopForView.about | raw}}
  263.           </p>
  264.         </div>
  265.         <div
  266.           class="rounded-lg shadow-fornt-2 dark:bg-foreground p-6 bg-white mb-7"
  267.         >
  268.           <div
  269.             class="text-base font-medium mb-4 text-gray-700 dark:text-gray-100"
  270.           >
  271.             Photos
  272.           </div>
  273.           <div class="swiper mySwiper2 mb-7">
  274.             <div class="swiper-wrapper">
  275.               <div class="swiper-slide">
  276.                 <img
  277.                   class="h-96 w-full object-cover rounded-lg"
  278.                   src="{{ vich_uploader_asset(shopForView, 'picture1') }}"
  279.                 />
  280.               </div>
  281.               {% if vich_uploader_asset(shopForView, 'picture2') is not null %} 
  282.               <div class="swiper-slide">
  283.                 <img
  284.                   class="h-96 w-full object-cover rounded-lg"
  285.                   src="{{ vich_uploader_asset(shopForView, 'picture2') }}"
  286.                 />
  287.               </div>
  288.               {% endif %}
  289.               {% if vich_uploader_asset(shopForView, 'picture3') is not null %} 
  290.               <div class="swiper-slide">
  291.                 <img
  292.                   class="h-96 w-full object-cover rounded-lg"
  293.                   src="{{ vich_uploader_asset(shopForView, 'picture3') }}"
  294.                 />
  295.               </div>
  296.               {% endif %}
  297.               {% if vich_uploader_asset(shopForView, 'picture4') is not null %} 
  298.               <div class="swiper-slide">
  299.                 <img
  300.                   class="h-96 w-full object-cover rounded-lg"
  301.                   src="{{ vich_uploader_asset(shopForView, 'picture4') }}"
  302.                 />
  303.               </div>
  304.               {% endif %}
  305.               {% if vich_uploader_asset(shopForView, 'picture5') is not null %} 
  306.               <div class="swiper-slide">
  307.                 <img
  308.                   class="h-96 w-full object-cover rounded-lg"
  309.                   src="{{ vich_uploader_asset(shopForView, 'picture5') }}"
  310.                 />
  311.               </div>
  312.               {% endif %}
  313.               {% if vich_uploader_asset(shopForView, 'picture6') is not null %} 
  314.               <div class="swiper-slide">
  315.                 <img
  316.                   class="h-96 w-full object-cover rounded-lg"
  317.                   src="{{ vich_uploader_asset(shopForView, 'picture6') }}"
  318.                 />
  319.               </div>
  320.               {% endif %}
  321.             </div>
  322.             <div class="swiper-button-next after:hidden">
  323.               <button
  324.                 type="button"
  325.                 class="bg-white dark:bg-foreground text-blue-500 rounded-full p-2"
  326.               >
  327.                 <svg
  328.                   xmlns="http://www.w3.org/2000/svg"
  329.                   class="h-5 w-5"
  330.                   fill="none"
  331.                   viewBox="0 0 24 24"
  332.                   stroke="currentColor"
  333.                   stroke-width="2"
  334.                 >
  335.                   <path
  336.                     stroke-linecap="round"
  337.                     stroke-linejoin="round"
  338.                     d="M9 5l7 7-7 7"
  339.                   />
  340.                 </svg>
  341.               </button>
  342.             </div>
  343.             <div class="swiper-button-prev after:hidden">
  344.               <button
  345.                 type="button"
  346.                 class="bg-white dark:bg-foreground text-blue-500 rounded-full p-2"
  347.               >
  348.                 <svg
  349.                   xmlns="http://www.w3.org/2000/svg"
  350.                   class="h-5 w-5"
  351.                   fill="none"
  352.                   viewBox="0 0 24 24"
  353.                   stroke="currentColor"
  354.                   stroke-width="2"
  355.                 >
  356.                   <path
  357.                     stroke-linecap="round"
  358.                     stroke-linejoin="round"
  359.                     d="M15 19l-7-7 7-7"
  360.                   />
  361.                 </svg>
  362.               </button>
  363.             </div>
  364.           </div>
  365.           <div thumbsSlider="" class="swiper mySwiper">
  366.             <div class="swiper-wrapper">
  367.               <div class="swiper-slide">
  368.                 <img
  369.                   class="h-24 w-full object-cover rounded-lg"
  370.                   src="{{ vich_uploader_asset(shopForView, 'picture1') }}"
  371.                 />
  372.               </div>
  373.               {% if vich_uploader_asset(shopForView, 'picture2') is not null %}
  374.               <div class="swiper-slide">
  375.                 <img
  376.                   class="h-24 w-full object-cover rounded-lg"
  377.                   src="{{ vich_uploader_asset(shopForView, 'picture2') }}"
  378.                 />
  379.               </div>
  380.               {% endif %}
  381.               {% if vich_uploader_asset(shopForView, 'picture3') is not null %} 
  382.               <div class="swiper-slide">
  383.                 <img
  384.                   class="h-24 w-full object-cover rounded-lg"
  385.                   src="{{ vich_uploader_asset(shopForView, 'picture3') }}"
  386.                 />
  387.               </div>
  388.               {% endif %}
  389.               {% if vich_uploader_asset(shopForView, 'picture4') is not null %} 
  390.               <div class="swiper-slide">
  391.                 <img
  392.                   class="h-24 w-full object-cover rounded-lg"
  393.                   src="{{ vich_uploader_asset(shopForView, 'picture4') }}"
  394.                 />
  395.               </div>
  396.               {% endif %}
  397.               {% if vich_uploader_asset(shopForView, 'picture5') is not null %} 
  398.               <div class="swiper-slide">
  399.                 <img
  400.                   class="h-24 w-full object-cover rounded-lg"
  401.                   src="{{ vich_uploader_asset(shopForView, 'picture5') }}"
  402.                 />
  403.               </div>
  404.               {% endif %}
  405.               {% if vich_uploader_asset(shopForView, 'picture6') is not null %} 
  406.               <div class="swiper-slide">
  407.                 <img
  408.                   class="h-24 w-full object-cover rounded-lg"
  409.                   src="{{ vich_uploader_asset(shopForView, 'picture6') }}"
  410.                 />
  411.               </div>
  412.               {% endif %}
  413.             </div>
  414.           </div>
  415.         </div>
  416.         <div
  417.           class="rounded-lg shadow-fornt-2 dark:bg-foreground p-6 bg-white mb-7"
  418.         >
  419.           <h5
  420.             class="text-base font-medium mb-4 text-gray-700 dark:text-gray-100"
  421.           >
  422.             Les petits plus
  423.           </h5>
  424.         <!-- Start - Show tags -->
  425.         
  426.           <div class="grid md:grid-cols-3 grid-cols-2 gap-7">
  427.             {% for tag in shopForView.tags %}
  428.             <div
  429.               class="flex items-center [&>*]:hover:text-blue-500 cursor-pointer"
  430.             >
  431.               <svg
  432.                 class="w-[18px] h-[18px] mr-2 text-gray-500 dark:text-gray-300"
  433.                 width="16"
  434.                 height="16"
  435.                 viewBox="0 0 16 16"
  436.                 fill="none"
  437.                 xmlns="http://www.w3.org/2000/svg"
  438.               >
  439.                 <path
  440.                   d="M7.41762 10.1179C7.24324 10.295 6.95637 10.295 6.78199 10.1179L4.98199 8.31786C4.8048 8.14349 4.8048 7.85661 4.98199 7.68224C5.15637 7.50505 5.44324 7.50505 5.61762 7.68224L7.0998 9.16442L10.382 5.88224C10.5564 5.70505 10.8432 5.70505 11.0176 5.88224C11.1948 6.05661 11.1948 6.34349 11.0176 6.51786L7.41762 10.1179ZM15.1998 8.00005C15.1998 11.9769 11.9767 15.2 7.9998 15.2C4.02293 15.2 0.799805 11.9769 0.799805 8.00005C0.799805 4.02317 4.02293 0.800049 7.9998 0.800049C11.9767 0.800049 15.1998 4.02317 15.1998 8.00005ZM7.9998 1.70005C4.52074 1.70005 1.6998 4.52099 1.6998 8.00005C1.6998 11.4791 4.52074 14.3 7.9998 14.3C11.4789 14.3 14.2998 11.4791 14.2998 8.00005C14.2998 4.52099 11.4789 1.70005 7.9998 1.70005Z"
  441.                   fill="currentColor"
  442.                 />
  443.               </svg>
  444.               <span class="text-sm font-normal text-gray-700 dark:text-gray-300"
  445.                 >{{ tag.name }}</span
  446.               >
  447.             </div>
  448.             {% endfor %}
  449.           </div>
  450.         </div>
  451.         <!-- END - Show tags -->
  452.         
  453.         <div class="mobilehidden">
  454.           <h1
  455.             class="text-gray-700 dark:text-gray-100 lg:text-3xl text-2xl mb-2"
  456.           >
  457.             Dans la même catégorie
  458.           </h1>
  459.           <p class="text-gray-500 dark:text-gray-400 mb-12">
  460.             D'autres commerces qui pourraient vous convenir
  461.           </p>
  462.           <div class="grid lg:grid-cols-2 grid-cols-1 gap-7 mb-10">
  463.           <!-- Slide START --> 
  464.     {% for shop in twoShops %}
  465.             <div class="overflow-hidden rounded-lg">
  466.               <a
  467.                 href="{{ path('app_home_show', {'slug' : shop.slug })}}"
  468.                 class="relative overflow-hidden group"
  469.               >
  470.                 
  471.                 <img
  472.                   class="w-full h-80 object-cover rounded-t-lg group-hover:scale-105 transition-all"
  473.                   src="{{ vich_uploader_asset(shop, 'picture1') }}"
  474.                   alt=""
  475.                 />
  476.                 <div
  477.                   class="absolute bottom-0 overflow-hidden top-1/2 flex items-start flex-col justify-end left-0 pb-5 pl-5 pt-2 card-linear-gradient w-full"
  478.                 >
  479.                   <div class="flex text-white items-center mb-2">
  480.                     <h2 class="text-xl capitalize font-semibold">
  481.                       {{shop.name}}
  482.                     </h2>
  483.                     {% if shop.verified == true %}
  484.                     <svg
  485.                       width="20"
  486.                       height="20"
  487.                       viewBox="0 0 20 20"
  488.                       fill="none"
  489.                       xmlns="http://www.w3.org/2000/svg"
  490.                     >
  491.                       <path
  492.                         d="M15.6562 4.34313C16.4688 5.15625 16.6906 6.31875 16.4031 7.34688C17.3531 7.85 18 8.85 18 10C18 11.15 17.3531 12.15 16.4031 12.6531C16.7188 13.6812 16.4688 14.8156 15.6562 15.6562C14.8156 16.4688 13.6812 16.6906 12.6531 16.4031C12.15 17.3531 11.15 18 10 18C8.85 18 7.85 17.3531 7.34688 16.4031C6.31875 16.7188 5.15625 16.4688 4.34313 15.6562C3.53 14.8156 3.28125 13.6812 3.59687 12.6531C2.64687 12.15 2 11.15 2 10C2 8.85 2.64687 7.85 3.59687 7.34688C3.25312 6.31875 3.53 5.15625 4.34313 4.34313C5.15625 3.53 6.31875 3.28125 7.34688 3.59687C7.85 2.64687 8.85 2 10 2C11.15 2 12.15 2.64687 12.6531 3.59687C13.6812 3.25312 14.8156 3.53 15.6562 4.34313Z"
  493.                         fill="#00AB55"
  494.                       />
  495.                       <path
  496.                         d="M7 10L8.64645 11.6464C8.84171 11.8417 9.15829 11.8417 9.35355 11.6464L13 8"
  497.                         stroke="white"
  498.                         stroke-width="1.2"
  499.                         stroke-linecap="round"
  500.                       />
  501.                     </svg>
  502.                     {% endif %}
  503.                   </div>
  504.                   <p class="text-sm font-normal text-white mb-4">
  505.                     {{shop.AddressCity}}
  506.                   </p>
  507.                 </div>
  508.               </a>
  509.             </div>
  510.   {% endfor %}
  511. <!-- Slide END -->          
  512.           </div>
  513.          
  514.         </div>
  515.       </div>
  516.       <div class="lg:col-span-1 col-span-1">
  517.         <div class="rounded-lg shadow-fornt-2 dark:bg-foreground bg-white mb-7">
  518.           <div class="mapouter">
  519.             <div class="gmap_canvas">
  520.               <iframe
  521.                 class="w-full h-64 rounded-t-md"
  522.                 id="gmap_canvas"
  523.                 src="https://maps.google.com/maps?q={{apiData.result.geometry.location.lat}},{{apiData.result.geometry.location.lng}}&t=&z=13&ie=UTF8&iwloc=&output=embed"
  524.                 frameborder="0"
  525.                 scrolling="no"
  526.                 marginheight="0"
  527.                 marginwidth="0"
  528.               ></iframe>
  529.             </div>
  530.           </div>
  531.           <div class="p-6 border-b border-gray-200 dark:border-gray-800">
  532.             <div
  533.               class="flex items-center text-gray-700 dark:text-gray-300 mb-4"
  534.             >
  535.               <svg
  536.                 xmlns="http://www.w3.org/2000/svg"
  537.                 class="h-4 w-4 mr-2"
  538.                 fill="none"
  539.                 viewBox="0 0 24 24"
  540.                 stroke="currentColor"
  541.                 stroke-width="2"
  542.               >
  543.                 <path
  544.                   stroke-linecap="round"
  545.                   stroke-linejoin="round"
  546.                   d="M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z"
  547.                 />
  548.                 <path
  549.                   stroke-linecap="round"
  550.                   stroke-linejoin="round"
  551.                   d="M15 11a3 3 0 11-6 0 3 3 0 016 0z"
  552.                 />
  553.               </svg>
  554.               <p class="text-base">{{apiData.result.formatted_address}}</p>
  555.             </div>
  556.             <div
  557.               class="flex items-center text-gray-700 dark:text-gray-300 mb-4"
  558.             >
  559.               <svg
  560.                 class="h-4 w-4 mr-2"
  561.                 xmlns="http://www.w3.org/2000/svg"
  562.                 class="h-6 w-6"
  563.                 fill="none"
  564.                 viewBox="0 0 24 24"
  565.                 stroke="currentColor"
  566.                 stroke-width="2"
  567.               >
  568.                 <path
  569.                   stroke-linecap="round"
  570.                   stroke-linejoin="round"
  571.                   d="M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z"
  572.                 />
  573.               </svg>
  574.               <p class="text-base">{{apiData.result.formatted_phone_number}}</p>
  575.             </div>
  576.             {% if shopForView.website %}
  577.             <div
  578.               class="flex items-center text-gray-700 dark:text-gray-300 mb-4"
  579.             >
  580.               <svg
  581.                 xmlns="http://www.w3.org/2000/svg"
  582.                 class="h-4 w-4 mr-2"
  583.                 fill="none"
  584.                 viewBox="0 0 24 24"
  585.                 stroke="currentColor"
  586.                 stroke-width="2"
  587.               >
  588.                 <path
  589.                   stroke-linecap="round"
  590.                   stroke-linejoin="round"
  591.                   d="M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9"
  592.                 />
  593.               </svg>
  594.               <a
  595.                 target="_blank"
  596.                 href="{{shopForView.website}}"
  597.                 class="relative overflow-hidden group"
  598.               >
  599.               <p class="text-base">{{shopForView.website}}</p>
  600.               </a>
  601.             </div>
  602.             {% endif %}
  603.           </div>
  604.           {% if shopForView.facebook or shopForView.twitter or shopForView.linkedin or shopForView.instagram %}
  605.           <div class="p-6">
  606.             <h6 class="text-base text-gray-700 dark:text-gray-100 mb-2">
  607.               Suivez-nous sur :
  608.             </h6>
  609.             <div class="flex flex-wrap">
  610.             {% if shopForView.facebook %}
  611.               <button
  612.                 type="button"
  613.                 class="border mr-3 mb-3 border-gray-200 dark:border-gray-800 dark:text-gray-400 p-2 rounded-lg hover:text-blue-500 hover:border-blue-500 dark:hover:text-blue-500 dark:hover:border-blue-500"
  614.               >
  615.               <a
  616.                 target="_blank"
  617.                 href="{{shopForView.facebook}}"
  618.                 class="relative overflow-hidden group"
  619.               >
  620.                 <svg
  621.                   width="20"
  622.                   height="21"
  623.                   viewBox="0 0 20 21"
  624.                   fill="none"
  625.                   xmlns="http://www.w3.org/2000/svg"
  626.                 >
  627.                   <path
  628.                     d="M18 10.5625C18 6.14422 14.4183 2.5625 10 2.5625C5.58172 2.5625 2 6.14422 2 10.5625C2 14.5555 4.92547 17.8652 8.75 18.4653V12.875H6.71875V10.5625H8.75V8.8C8.75 6.795 9.94438 5.6875 11.7717 5.6875C12.6467 5.6875 13.5625 5.84375 13.5625 5.84375V7.8125H12.5538C11.56 7.8125 11.25 8.42922 11.25 9.0625V10.5625H13.4688L13.1141 12.875H11.25V18.4653C15.0745 17.8652 18 14.5555 18 10.5625Z"
  629.                     fill="currentColor"
  630.                   />
  631.                 </svg>
  632.               </a>
  633.               </button>
  634.               {% endif %}
  635.               {% if shopForView.instagram %}
  636.               <button
  637.                 type="button"
  638.                 class="border mr-3 mb-3 border-gray-200 dark:border-gray-800 dark:text-gray-400 p-2 rounded-lg hover:text-blue-500 hover:border-blue-500 dark:hover:text-blue-500 dark:hover:border-blue-500"
  639.               >
  640.               <a
  641.                 target="_blank"
  642.                 href="{{shopForView.instagram}}"
  643.                 class="relative overflow-hidden group"
  644.               >
  645.                 <svg
  646.                   width="20"
  647.                   height="20"
  648.                   viewBox="0 0 17 18"
  649.                   fill="none"
  650.                   xmlns="http://www.w3.org/2000/svg"
  651.                 >
  652.                   <path
  653.                     d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z"
  654.                     fill="currentColor"
  655.                   />
  656.                 </svg>
  657.               </a>
  658.               </button>
  659.               {% endif %}
  660.             {% if shopForView.linkedin %}
  661.               <button
  662.                 type="button"
  663.                 class="border mr-3 mb-3 border-gray-200 dark:border-gray-800 dark:text-gray-400 p-2 rounded-lg hover:text-blue-500 hover:border-blue-500 dark:hover:text-blue-500 dark:hover:border-blue-500"
  664.               >
  665.               <a
  666.                 target="_blank"
  667.                 href="{{shopForView.linkedin}}"
  668.                 class="relative overflow-hidden group"
  669.               >
  670.                 <svg
  671.                   width="20"
  672.                   height="21"
  673.                   viewBox="0 0 20 21"
  674.                   fill="none"
  675.                   xmlns="http://www.w3.org/2000/svg"
  676.                 >
  677.                   <path
  678.                     d="M16.8156 2.5625H3.18125C2.52812 2.5625 2 3.07813 2 3.71563V17.4062C2 18.0438 2.52812 18.5625 3.18125 18.5625H16.8156C17.4688 18.5625 18 18.0438 18 17.4094V3.71563C18 3.07813 17.4688 2.5625 16.8156 2.5625ZM6.74687 16.1969H4.37188V8.55937H6.74687V16.1969ZM5.55938 7.51875C4.79688 7.51875 4.18125 6.90312 4.18125 6.14375C4.18125 5.38438 4.79688 4.76875 5.55938 4.76875C6.31875 4.76875 6.93437 5.38438 6.93437 6.14375C6.93437 6.9 6.31875 7.51875 5.55938 7.51875ZM15.6344 16.1969H13.2625V12.4844C13.2625 11.6 13.2469 10.4594 12.0281 10.4594C10.7937 10.4594 10.6062 11.425 10.6062 12.4219V16.1969H8.2375V8.55937H10.5125V9.60313H10.5437C10.8594 9.00313 11.6344 8.36875 12.7875 8.36875C15.1906 8.36875 15.6344 9.95 15.6344 12.0063V16.1969Z"
  679.                     fill="currentColor"
  680.                   />
  681.                 </svg>
  682.               </a>
  683.               </button>
  684.               {% endif %}
  685.             {% if shopForView.twitter %}
  686.               <button
  687.                 type="button"
  688.                 class="border mr-3 mb-3 border-gray-200 dark:border-gray-800 dark:text-gray-400 p-2 rounded-lg hover:text-blue-500 hover:border-blue-500 dark:hover:text-blue-500 dark:hover:border-blue-500"
  689.               >
  690.               <a
  691.                 target="_blank"
  692.                 href="{{shopForView.twitter}}"
  693.                 class="relative overflow-hidden group"
  694.               >
  695.                 <svg
  696.                   width="20"
  697.                   height="21"
  698.                   viewBox="0 0 20 21"
  699.                   fill="none"
  700.                   xmlns="http://www.w3.org/2000/svg"
  701.                 >
  702.                   <path
  703.                     d="M7.03344 16.563C13.0697 16.563 16.3722 11.5608 16.3722 7.22423C16.3722 7.0836 16.3691 6.93985 16.3628 6.79923C17.0052 6.33463 17.5597 5.75916 18 5.09985C17.4017 5.36605 16.7664 5.53991 16.1159 5.61548C16.8009 5.20493 17.3137 4.55997 17.5594 3.80017C16.915 4.18203 16.2104 4.4514 15.4756 4.59673C14.9806 4.0707 14.326 3.7224 13.6131 3.60569C12.9003 3.48898 12.1688 3.61036 11.5318 3.95105C10.8949 4.29175 10.3879 4.83279 10.0892 5.49053C9.7906 6.14827 9.71695 6.88606 9.87969 7.58985C8.575 7.52438 7.29862 7.18546 6.13332 6.59505C4.96802 6.00465 3.9398 5.17595 3.11531 4.16267C2.69627 4.88515 2.56804 5.74008 2.75669 6.55372C2.94534 7.36735 3.43671 8.07862 4.13094 8.54298C3.60975 8.52643 3.09998 8.38611 2.64375 8.1336V8.17423C2.64328 8.93242 2.9054 9.66738 3.38554 10.2542C3.86568 10.841 4.53422 11.2434 5.2775 11.393C4.7947 11.5251 4.28799 11.5443 3.79656 11.4492C4.0063 12.1013 4.41438 12.6716 4.96385 13.0805C5.51331 13.4895 6.17675 13.7167 6.86156 13.7305C5.69895 14.6437 4.26278 15.1391 2.78438 15.1367C2.52219 15.1363 2.26027 15.1203 2 15.0886C3.5019 16.0522 5.24902 16.5639 7.03344 16.563Z"
  704.                     fill="currentColor"
  705.                   />
  706.                 </svg>
  707.               </a>
  708.               </button>
  709.               {% endif %}
  710.             </div>
  711.           </div>
  712.           {% endif %}
  713.         </div>
  714.         <div class="rounded-lg shadow-fornt-2 dark:bg-foreground bg-white mb-7">
  715.           <div
  716.             class="p-6 border-b mb-6 flex justify-between border-gray-200 text-gray-700 font-medium dark:border-gray-800 dark:text-gray-100"
  717.           >
  718.             <div class="flex">
  719.               <svg
  720.                 xmlns="http://www.w3.org/2000/svg"
  721.                 class="h-6 w-6 text-yellow-500 mr-2"
  722.                 fill="none"
  723.                 viewBox="0 0 24 24"
  724.                 stroke="currentColor"
  725.                 stroke-width="2"
  726.               >
  727.                 <path
  728.                   stroke-linecap="round"
  729.                   stroke-linejoin="round"
  730.                   d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"
  731.                 />
  732.               </svg>
  733.               <div class="text-base text-gray-700 dark:text-gray-100">
  734.                 Horaires d'ouverture
  735.               </div>
  736.             </div>
  737.             {% if apiData.result.opening_hours.open_now == true %}
  738.                 <div class="bg-green-50 text-xs p-2 rounded-lg text-green-500">
  739.                     Ouvert actuellement
  740.                 </div>
  741.             {% else %}
  742.                 <div class="bg-red-500 text-xs p-2 rounded-lg text-red-500">
  743.                     Fermé
  744.                 </div>
  745.             {% endif %}
  746.           </div>
  747.           
  748.           <div class="">
  749.           <div
  750.               class="px-6 py-3 text-gray-500 dark:text-gray-400 flex justify-between"
  751.             >
  752.               <h6 class="font-medium w-32"></h6>
  753.               <p class="w-32 text-center">Matin</p>
  754.               <p class="w-32 text-center">Après-midi</p>
  755.             </div>
  756. {% for day in [1, 2, 3, 4, 5, 6, 7] %}
  757.   <div class="px-6 py-3 text-gray-500 dark:text-gray-400 flex justify-between">
  758.     <h6 class="font-medium w-32">
  759.       {% set dayMap = {
  760.         1: 'Lundi',
  761.         2: 'Mardi',
  762.         3: 'Mercredi',
  763.         4: 'Jeudi',
  764.         5: 'Vendredi',
  765.         6: 'Samedi',
  766.         7: 'Dimanche'
  767.       } %}
  768.       {{ dayMap[day] }}
  769.     </h6>
  770.     {% set isMorningOpen = false %}
  771.     {% set isAfternoonOpen = false %}
  772.     {% for period in apiData.result.opening_hours.periods %}
  773.       {% if period.open.day == day %}
  774.         {% set isMorningOpen = true %}
  775.         {% set openingTime = period.open.time %}
  776.         {% set closingTime = period.close.time %}
  777.         {% set formattedOpeningTime = openingTime[:2] ~ ':' ~ openingTime[2:] %}
  778.         {% set formattedClosingTime = closingTime[:2] ~ ':' ~ closingTime[2:] %}
  779.         {% set closingHour = closingTime[:2] %}
  780.         {% set isAfternoon = closingHour > '12' %}
  781.         {% if isAfternoon %}
  782.           {% set isAfternoonOpen = true %}
  783.           <p class="w-32 text-center">{{ formattedOpeningTime }} - {{ formattedClosingTime }}</p>
  784.         {% else %}
  785.           <p class="w-32 text-center">{{ formattedOpeningTime }} - {{ formattedClosingTime }}</p>
  786.         {% endif %}
  787.       {% endif %}
  788.     {% endfor %}
  789.     {% if not isMorningOpen %}
  790.       <p class="w-32 text-center">Fermé</p>
  791.     {% endif %}
  792.     {% if not isAfternoonOpen %}
  793.       <p class="w-32 text-center">Fermé</p>
  794.     {% endif %}
  795.   </div>
  796. {% endfor %}
  797.           </div>
  798.         </div>
  799.         
  800.         
  801.         <div
  802.           class="shadow-front-3 bg-white dark:bg-foreground p-6 rounded-lg mb-7"
  803.         >
  804.           <h4
  805.             class="text-base font-medium text-gray-700 dark:text-gray-100 mb-3"
  806.           >
  807.             Toutes les catégories
  808.           </h4>
  809.           {% for category in allCategories %}
  810.             <a
  811.               href="{{ path('app_home_list_category', {'id' : category.id })}}"
  812.               aria-colcount=""
  813.               class="flex hover:text-blue-500 dark:hover:text-blue-500 justify-between text-base text-gray-500 dark:text-gray-400 dark:border-gray-800 border-b border-gray-200 items-center py-3"
  814.             >
  815.               <h6 class="font-medium">{{ category.name }}</h6>
  816.             </a>
  817.           {% endfor %}
  818.         </div>
  819.       </div>
  820.     </div>
  821.   </div>
  822. </section>
  823.       <div class="scroll-top-btn opacity-0 transition-all">
  824.   <button
  825.     type="button"
  826.     class="bg-blue-500 p-2 fixed z-50 bottom-0 hover:-translate-y-2 transition-all right-0 m-10 rounded-full"
  827.   >
  828.     <svg
  829.       xmlns="http://www.w3.org/2000/svg"
  830.       class="h-6 w-6 text-white"
  831.       fill="none"
  832.       viewBox="0 0 24 24"
  833.       stroke="currentColor"
  834.       stroke-width="2"
  835.     >
  836.       <path
  837.         stroke-linecap="round"
  838.         stroke-linejoin="round"
  839.         d="M7 11l5-5m0 0l5 5m-5-5v12"
  840.       />
  841.     </svg>
  842.   </button>
  843. </div>
  844. {% endblock %}