templates/base.html.twig line 1

Open in your IDE?
  1. <!DOCTYPE html>
  2. <html lang="fr" >
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1">
  6. <meta http-equiv="x-ua-compatible" content="ie=edge">
  7. <meta name="robots" content="index,follow" />
  8. <meta name="p:domain_verify" content="59abb365592278c9b3624b621c108b7f"/>
  9. {% block metas %}{% endblock %}
  10. <title>{% block title %}Welcome!{% endblock %}</title>
  11. <link rel="icon" href="{{ asset('assets/tanymena/logo_tanymena/png/loading.png') }}">
  12. {# Run `composer require symfony/webpack-encore-bundle` to start using Symfony UX #}
  13. {% block stylesheets %}
  14. {{ encore_entry_link_tags('app') }}
  15. <!-- Favicon -->
  16. <link rel="shortcut icon" type="image/x-icon" href="{{ asset('assets/tanymena/logo_tanymena/png/loading.png') }}">
  17. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" integrity="sha512-iecdLmaskl7CVkqkXNQ/ZH/XLlvWZOJyj7Yy7tcenmpD1ypASozpmT/E0iPtmFIB46ZmdtAc9eNBvH0H/ZpiBw==" crossorigin="anonymous" referrerpolicy="no-referrer" />
  18. <!--bootstrap min css-->
  19. <link rel="stylesheet" href="{{ asset('bonique/assets/css/bootstrap.min.css') }}">
  20. <!--owl carousel min css-->
  21. <link rel="stylesheet" href="{{ asset('bonique/assets/css/owl.carousel.min.css') }}">
  22. {# <!--slick min css-->
  23. <link rel="stylesheet" href="{{ asset('bonique/assets/css/slick.css') }}">
  24. <!--magnific popup min css-->
  25. <link rel="stylesheet" href="{{ asset('bonique/assets/css/magnific-popup.css') }}">
  26. <!--font awesome css-->
  27. <link rel="stylesheet" href="{{ asset('bonique/assets/css/font.awesome.css') }}">
  28. <!--ionicons css-->
  29. <link rel="stylesheet" href="{{ asset('bonique/assets/css/ionicons.min.css') }}"> #}
  30. <!--simple line icons css-->
  31. <link rel="stylesheet" href="{{ asset('bonique/assets/css/simple-line-icons.css') }}">
  32. {# <!--animate css-->
  33. <link rel="stylesheet" href="{{ asset('bonique/assets/css/animate.css') }}"> #}
  34. <!--jquery ui min css-->
  35. <link rel="stylesheet" href="{{ asset('bonique/assets/css/jquery-ui.min.css') }}">
  36. <!--slinky menu css-->
  37. {# <link rel="stylesheet" href="{{ asset('bonique/assets/css/slinky.menu.css') }}">
  38. <!--plugins css-->
  39. <link rel="stylesheet" href="{{ asset('bonique/assets/css/plugins.css') }}">#}
  40. <!-- Main Style CSS -->
  41. <link rel="stylesheet" href="{{ asset('bonique/assets/css/style.css?date=202308101458') }}">
  42. <link rel="stylesheet" href="{{ asset('bonique/assets/css/lite-yt-embed.min.css') }}">
  43. <link rel="stylesheet" href="{{ asset('assets/css/main.css?date=202309291606') }}">
  44. {# CUSTOM STYLES#}
  45. {{ encore_entry_link_tags('custom_app') }}
  46. <!--modernizr min js here-->
  47. <script src="{{ asset('bonique/assets/js/vendor/modernizr-3.7.1.min.js') }}"></script>
  48. <style>
  49. .af-btn-google {
  50. display: inline-flex;
  51. align-items: center;
  52. justify-content: center;
  53. gap: 10px;
  54. width: 100%;
  55. padding: 12px 16px;
  56. border-radius: 10px;
  57. border: 1px solid rgba(0, 0, 0, 0.12);
  58. background: #fff;
  59. color: #111;
  60. font-weight: 600;
  61. cursor: pointer;
  62. font-family: inherit;
  63. appearance: none;
  64. -webkit-appearance: none;
  65. text-decoration: none;
  66. transition: box-shadow .15s ease, transform .15s ease, border-color .15s ease;
  67. }
  68. .af-btn-google:hover {
  69. border-color: rgba(0, 0, 0, 0.18);
  70. box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
  71. transform: translateY(-1px);
  72. text-decoration: none;
  73. color: #111;
  74. }
  75. .af-btn-google__icon {
  76. width: 18px;
  77. height: 18px;
  78. flex: 0 0 18px;
  79. }
  80. .af-btn-facebook {
  81. display: inline-flex;
  82. align-items: center;
  83. justify-content: center;
  84. gap: 10px;
  85. width: 100%;
  86. padding: 12px 16px;
  87. border-radius: 10px;
  88. border: 1px solid #1877F2;
  89. background: #1877F2;
  90. color: #fff;
  91. font-weight: 700;
  92. cursor: pointer;
  93. font-family: inherit;
  94. appearance: none;
  95. -webkit-appearance: none;
  96. text-decoration: none;
  97. transition: box-shadow .15s ease, transform .15s ease, border-color .15s ease, background-color .15s ease;
  98. }
  99. .af-btn-facebook:hover {
  100. border-color: #166FE5;
  101. background: #166FE5;
  102. box-shadow: 0 6px 18px rgba(0, 0, 0, 0.10);
  103. transform: translateY(-1px);
  104. text-decoration: none;
  105. color: #fff;
  106. }
  107. .af-btn-facebook__icon {
  108. width: 18px;
  109. height: 18px;
  110. display: inline-flex;
  111. align-items: center;
  112. justify-content: center;
  113. }
  114. .af-divider {
  115. display: flex;
  116. align-items: center;
  117. gap: 12px;
  118. margin: 14px 0;
  119. color: rgba(0, 0, 0, 0.55);
  120. font-size: 13px;
  121. font-weight: 600;
  122. }
  123. .af-divider::before,
  124. .af-divider::after {
  125. content: "";
  126. height: 1px;
  127. flex: 1 1 auto;
  128. background: rgba(0, 0, 0, 0.12);
  129. }
  130. .af-role-grid {
  131. display: grid;
  132. grid-template-columns: 1fr;
  133. gap: 12px;
  134. margin: 14px 0 18px;
  135. }
  136. .af-role-card {
  137. display: flex;
  138. align-items: flex-start;
  139. gap: 12px;
  140. padding: 14px 14px;
  141. border-radius: 12px;
  142. border: 1px solid rgba(0, 0, 0, 0.12);
  143. background: #fff;
  144. cursor: pointer;
  145. transition: box-shadow .15s ease, transform .15s ease, border-color .15s ease;
  146. }
  147. .af-role-card input[type="radio"] {
  148. margin-top: 3px;
  149. }
  150. .af-role-card:hover {
  151. border-color: rgba(0, 0, 0, 0.18);
  152. box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
  153. transform: translateY(-1px);
  154. }
  155. .af-role-card__title {
  156. font-weight: 700;
  157. margin-bottom: 2px;
  158. }
  159. .af-role-card__desc {
  160. margin: 0;
  161. font-size: 13px;
  162. color: rgba(0, 0, 0, 0.6);
  163. }
  164. .af-role-select {
  165. width: 100%;
  166. height: 45px;
  167. padding: 0 12px;
  168. border-radius: 10px;
  169. border: 1px solid rgba(0, 0, 0, 0.12);
  170. background: #fff;
  171. }
  172. .af-role-select:focus {
  173. outline: none;
  174. border-color: rgba(0, 0, 0, 0.18);
  175. box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
  176. }
  177. .af-login-links {
  178. display: flex;
  179. justify-content: space-between;
  180. align-items: center;
  181. gap: 12px;
  182. margin-top: 14px;
  183. padding: 12px 14px;
  184. border-radius: 10px;
  185. border: 1px solid rgba(0, 0, 0, 0.10);
  186. background: rgba(0, 0, 0, 0.02);
  187. }
  188. .af-login-link {
  189. display: inline-flex;
  190. align-items: center;
  191. gap: 8px;
  192. font-weight: 600;
  193. font-size: 14px;
  194. color: rgba(0, 0, 0, 0.7);
  195. text-decoration: none;
  196. }
  197. .af-login-link:hover {
  198. text-decoration: underline;
  199. color: rgba(0, 0, 0, 0.9);
  200. }
  201. @media (max-width: 575px) {
  202. .af-login-links {
  203. flex-direction: column;
  204. align-items: flex-start;
  205. }
  206. }
  207. </style>
  208. {% endblock %}
  209. <link rel="canonical" href="https://aromaforest.fr/blog"/>
  210. <link rel="canonical" href="https://aromaforest.fr/boutique"/>
  211. <meta name="google-site-verification" content="qOcxFuYi4N5bWKE05GSU28h5VHlN9Qu5wKTd7fEleSo" />
  212. </head>
  213. <body>
  214. {% set configTva = configService.findTva() %}
  215. <div id="loading_aroma">
  216. <img src="{{ asset('assets/tanymena/logo_tanymena/png/loading.png') }}" alt="loader-aroma">
  217. </div>
  218. {# <div id="app-defautlocal" class="d-none" data-defautlocal="{{app_default_locale}}"></div>
  219. <div id="google_translate_element" class="d-none" data-local="{{ app.request.session.get('localSession') }}"></div> #}
  220. {% include '/partials/header.html.twig' %}
  221. {% block body %}{% endblock %}
  222. {% if not showFooter is defined or showFooter == true %}
  223. {% include '/partials/footer.html.twig' %}
  224. {% endif %}
  225. {# <script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script> #}
  226. {# <script type="text/javascript" src="{{ asset('assets/googleTrad/googleTrad.js') }}"></script> #}
  227. {% block javascripts %}
  228. <!-- Meta Pixel Code -->
  229. {% if app.environment == 'prod' %}
  230. <script>
  231. !function(f,b,e,v,n,t,s)
  232. {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
  233. n.callMethod.apply(n,arguments):n.queue.push(arguments)};
  234. if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
  235. n.queue=[];t=b.createElement(e);t.async=!0;
  236. t.src=v;s=b.getElementsByTagName(e)[0];
  237. s.parentNode.insertBefore(t,s)}(window, document,'script',
  238. 'https://connect.facebook.net/en_US/fbevents.js');
  239. fbq('init', '743597234009643');
  240. fbq('track', 'PageView');
  241. </script>
  242. <noscript><img height="1" width="1" style="display:none"
  243. src="https://www.facebook.com/tr?id=743597234009643&ev=PageView&noscript=1"
  244. /></noscript>
  245. {% endif %}
  246. <!-- End Meta Pixel Code -->
  247. {{ encore_entry_script_tags('app') }}
  248. <!-- Slider js-->
  249. <script src="https://cdn.jsdelivr.net/npm/@splidejs/splide@4.1.4/dist/js/splide.min.js"></script>
  250. <link href="https://cdn.jsdelivr.net/npm/@splidejs/splide@4.1.4/dist/css/splide.min.css" rel="stylesheet">
  251. <!--jquery min js-->
  252. <script src="{{ asset('bonique/assets/js/vendor/jquery-3.4.1.min.js') }}"></script>
  253. {# <!--popper min js-->
  254. <script src="{{ asset('bonique/assets/js/popper.js') }}"></script> #}
  255. <!--bootstrap min js-->
  256. <script src="{{ asset('bonique/assets/js/bootstrap.min.js') }}"></script>
  257. <!--owl carousel min js-->
  258. <script src="{{ asset('bonique/assets/js/owl.carousel.min.js') }}"></script>
  259. {# <!--slick min js-->
  260. <script src="{{ asset('bonique/assets/js/slick.min.js') }}"></script>#}
  261. <!--magnific popup min js-->
  262. <script src="{{ asset('bonique/assets/js/jquery.magnific-popup.min.js') }}"></script>
  263. {# <!--counterup min js-->
  264. <script src="{{ asset('bonique/assets/js/jquery.counterup.min.js') }}"></script>
  265. <!--jquery countdown min js-->
  266. <script src="{{ asset('bonique/assets/js/jquery.countdown.js') }}"></script> > #}
  267. <!--jquery ui min js-->
  268. <script src="{{ asset('bonique/assets/js/jquery.ui.js') }}"></script>
  269. <!--jquery elevatezoom min js-->
  270. <script src="{{ asset('bonique/assets/js/jquery.elevatezoom.js') }}"></script>
  271. {# <!--isotope packaged min js-->
  272. <script src="{{ asset('bonique/assets/js/isotope.pkgd.min.js') }}"></script>
  273. <!--slinky menu js-->
  274. <script src="{{ asset('bonique/assets/js/slinky.menu.js') }}"></script> #}
  275. <!-- Plugins JS -->
  276. <script src="{{ asset('bonique/assets/js/plugins.js') }}"></script>
  277. <!-- Main JS -->
  278. <script src="{{ asset('bonique/assets/js/main.js') }}"></script>
  279. <script src="{{ asset('bonique/assets/js/lite-yt-embed.min.js') }}"></script>
  280. <script src="{{ asset('bonique/assets/js/lazysizes.min.js') }}"></script>
  281. <script src="{{ asset('assets/js/cart.js') }}"></script>
  282. <script src="{{ asset('assets/js/favorite_product.js') }}"></script>
  283. <script type="text/javascript">
  284. window.onload = () => {
  285. // Hide loader
  286. document.getElementById("loading_aroma").classList.add('hide');
  287. };
  288. </script>
  289. <script>
  290. // Fermer les autres panneaux collapse lorsqu'un panneau est ouvert
  291. $('.collapse').on('show.bs.collapse', function () {
  292. $('.collapse.show').not(this).collapse('hide');
  293. });
  294. </script>
  295. <script type="text/javascript">
  296. document.addEventListener('DOMContentLoaded', function () {
  297. var select = $('#languageSelect');
  298. var previousValue = select.val();
  299. $('#languageSelect').change(function () {
  300. var selectedLocale = $(this).val();
  301. // Effectuer une requête AJAX vers votre route Symfony
  302. $.ajax({
  303. type: 'GET',
  304. url: '{{app_change_locale_route}}' + selectedLocale, // Utilisez le chemin correct pour votre route
  305. success: function () {
  306. // Rafraîchissez la page ou effectuez d'autres actions si nécessaire
  307. location.reload();
  308. },
  309. error: function (error) {
  310. alert("Une erreur s'est produite. Veuillez réessayer ultérieurement.");
  311. select.val(previousValue);
  312. }
  313. });
  314. });
  315. });
  316. </script>
  317. {# Google Analytics #}
  318. <!-- Google tag (gtag.js) -->
  319. {% if app.environment == 'prod' %}
  320. <script async src="https://www.googletagmanager.com/gtag/js?id=G-8BS4KQCKP8"></script>
  321. {{ encore_entry_script_tags('google_analytics_js') }}
  322. {% endif %}
  323. {# Google Analytics #}
  324. {% endblock %}
  325. </body>
  326. </html>