templates/theme/default/component-blocks/etaps-block.html.twig line 1

Open in your IDE?
  1. <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/gsap.min.js"></script>
  2. <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/ScrollTrigger.min.js"></script>
  3. {% if bloc.data[0] is defined and bloc.data[0] is not empty %}
  4. {% set data_etaps = bloc.data[0] %}
  5. {% if bloc.template == "1" or bloc.template is empty %}
  6. <div id="box-etaps-{{bloc.id}}" style="{{ data_etaps.bg_color ? 'background-color:' ~ data_etaps.bg_color ~ ';' : '' }}" class="box-etaps {{data_etaps.style_option|default('')}} {{'model-' ~ bloc.template|default('1') }} {{bloc.className ?? ''}}">
  7. <div class="container-fluid content-wrapper">
  8. {% if data_etaps.globalDesc is not empty or data_etaps.typeLien != 1 or data_etaps.globalTitleOption is not empty or data_etaps.globalTitle is not empty or data_etaps.globalDescOption is not empty %}
  9. <div class="row content-header b-3">
  10. {% if data_etaps.globalTitleOption is not empty or data_etaps.globalTitle is not empty %}
  11. <div class="col-sm-12" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="50">
  12. <span class="site_title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">{{data_etaps.globalTitleOption|raw}}</span>
  13. <h2 class="main-title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  14. {{data_etaps.globalTitle|raw}}
  15. </h2>
  16. </div>
  17. {% endif %}
  18. {% if data_etaps.globalDesc is not empty or data_etaps.globalDescOption is not empty or data_etaps.typeLien != 1 or data_etaps.typeLien != '' %}
  19. <div class="col-sm-12" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="50">
  20. <div class="bloc-description" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  21. {% if data_etaps.globalDesc is defined and data_etaps.globalDesc is not empty %}
  22. <div class="description">
  23. {{data_etaps.globalDesc|raw}}</div>
  24. {% endif %}
  25. {% if data_etaps.globalDescOption is defined and data_etaps.globalDescOption is not empty %}
  26. <div class="description-option" style="{{ data_etaps.text_color2 ? 'color:' ~ data_etaps.text_color2 ~ ';' : '' }} {{ data_etaps.bg_color2 ? 'background-color:' ~ data_etaps.bg_color2 ~ ';' : '' }}">
  27. {{data_etaps.globalDescOption|raw}}</div>
  28. {% endif %}
  29. {% if data_etaps.typeLien != 1 and data_etaps.typeLien != '' %}
  30. {% if data_etaps.typeLien == '4' %}
  31. <a onclick="window.location.href = 'tel:{{data_etaps.telephone}}';" class="btn-theme">{{data_etaps.globalLien}}</a>
  32. {% elseif data_etaps.typeLien == '2' %}
  33. <a href="{{resolveInternalSlugLink(data_etaps.lieninterne)}}" class="btn-theme">{{data_etaps.globalLien}}</a>
  34. {% elseif data_etaps.typeLien == '3' %}
  35. <a href="{{data_etaps.lienExterne}}" class="btn-theme" target="_blank">{{data_etaps.globalLien}}</a>
  36. {% endif %}
  37. {% endif %}
  38. </div>
  39. </div>
  40. {% endif %}
  41. {% if bloc.image is not empty %}
  42. <div class="image_boxes text-center" data-aos="fade-right" data-aos-easing="linear">
  43. {% if bloc.image is not empty %}
  44. <div class="image one">
  45. <img src="{{ asset_image(bloc.image, 'medium', ['800x/uploads', '800x/uploads', '480x/uploads']) }}" alt="{{ bloc.altimage|default(data_etaps.globalTitle|raw) }}" class="img-fluid">
  46. </div>
  47. {% endif %}
  48. {% if bloc.image2 is not empty %}
  49. <div class="image two">
  50. <img src="{{ asset_image(bloc.image2, 'medium', ['800x/uploads', '800x/uploads', '480x/uploads']) }}" alt="{{ bloc.altimage2|default(data_etaps.globalTitle|raw) }}" class="img-fluid">
  51. </div>
  52. {% endif %}
  53. </div>
  54. {% endif %}
  55. </div>
  56. {% endif %}
  57. {% if data_etaps.etaps is not empty %}
  58. <div class="row content-body">
  59. {% if data_etaps.globalDescOption is defined and data_etaps.globalDescOption is not empty %}
  60. <div class="description-option" style="{{ data_etaps.text_color2 ? 'color:' ~ data_etaps.text_color2 ~ ';' : '' }} {{ data_etaps.bg_color2 ? 'background-color:' ~ data_etaps.bg_color2 ~ ';' : '' }}">
  61. {{data_etaps.globalDescOption|raw}}</div>
  62. {% endif %}
  63. {% set duree = '100' %}
  64. {% if data_etaps.etaps is defined and data_etaps.etaps is not empty %}
  65. {% set colClass = data_etaps.globalGridItems is not empty ? 'col-lg-' ~ data_etaps.globalGridItems: "col-md-3" %}
  66. {% for item in data_etaps.etaps %}
  67. <div class="col-md-4 {{colClass}} body-content" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="{{duree}}">
  68. <div class="bloc-content" {% if item.bg_color %} style="background-color: {{item.bg_color}};" {% endif %}>
  69. {% if item.icon %}
  70. <div class="item-picto">
  71. <img src="{{item.icon}}" alt="{{item.sous_titre|default('')}}" width="80" height="80" loading="lazy">
  72. </div>
  73. {% endif %}
  74. {% if item.description or item.title or item.sous_titre %}
  75. <div class="description-item" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>
  76. {% if item.title %}
  77. <h3 class="title" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>
  78. {{item.title}}</h3>
  79. {% endif %}
  80. {% if item.sous_titre is not empty %}
  81. <span class="sous-titre">{{item.sous_titre|raw}}</span>
  82. {% endif %}
  83. {% if item.description %}
  84. <div class="description-item" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>{{item.description|raw}}</div>
  85. {% endif %}
  86. {% if item.description2 %}
  87. <div class="description-option-item" {% if item.bg_color2 or item.text_color2 %} style="background-color: {{item.bg_color2}}; color: {{item.text_color2}};" {% endif %}>
  88. {{item.description2|raw}}
  89. </div>
  90. {% endif %}
  91. </div>
  92. {% endif %}
  93. {% if item.type_lien is defined and item.type_lien != '1' and item.title_lien is not empty %}
  94. <div class="bloc-button-item">
  95. {% if item.type_lien == '2' %}
  96. <a href="{{ resolveInternalSlugLink(item.lien_interne) }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  97. {% elseif item.type_lien == '3' %}
  98. <a href="{{ item.lien_externe }}" target="_blank" class="btn-theme">{{ item.title_lien|raw }}</a>
  99. {% elseif item.type_lien == '4' %}
  100. <a href="tel:{{ item.phone_number }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  101. {% endif %}
  102. </div>
  103. {% endif %}
  104. </div>
  105. </div>
  106. {% set duree = duree + '100' %}
  107. {% endfor %}
  108. {% endif %}
  109. </div>
  110. {% endif %}
  111. </div>
  112. </div>
  113. </div>
  114. {% elseif bloc.template == "2" %}
  115. <div id="box-etaps-{{bloc.id}}" style="{{ data_etaps.bg_color ? 'background-color:' ~ data_etaps.bg_color ~ ';' : '' }}" class="box-etaps {{data_etaps.style_option|default('')}} {{'model-' ~ bloc.template }} {{bloc.className ?? ''}}">
  116. <div class="container-fluid content-wrapper">
  117. {% if data_etaps.globalTitleOption is not empty or data_etaps.globalTitle is not empty or data_etaps.globalDesc is not empty or data_etaps.typeLien != 1 or data_etaps.globalDescOption is not empty %}
  118. <div class="row header">
  119. <div class="col-sm-12 col-md-12" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="50">
  120. {% if data_etaps.globalTitleOption is defined and data_etaps.globalTitleOption is not empty %}
  121. <span class="site_title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">{{data_etaps.globalTitleOption|raw}}</span>
  122. {% endif %}
  123. {% if data_etaps.globalTitle is defined and data_etaps.globalTitle is not empty %}
  124. <h2 class="main-title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  125. {{data_etaps.globalTitle|raw}}
  126. </h2>
  127. {% endif %}
  128. {% if data_etaps.globalDesc is defined and data_etaps.globalDesc is not empty %}
  129. <div class="description" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  130. {{data_etaps.globalDesc|raw}}</div>
  131. {% endif %}
  132. {% if data_etaps.globalDescOption is defined and data_etaps.globalDescOption is not empty %}
  133. <div class="description-option" style="{{ data_etaps.text_color2 ? 'color:' ~ data_etaps.text_color2 ~ ';' : '' }} {{ data_etaps.bg_color2 ? 'background-color:' ~ data_etaps.bg_color2 ~ ';' : '' }}">
  134. {{data_etaps.globalDescOption|raw}}</div>
  135. {% endif %}
  136. {% if data_etaps.typeLien != 1 and data_etaps.typeLien != '' %}
  137. {% if data_etaps.typeLien == '4' %}
  138. <a onclick="window.location.href = 'tel:{{data_etaps.telephone}}';" class="btn-theme">{{data_etaps.globalLien}}</a>
  139. {% elseif data_etaps.typeLien == '2' %}
  140. <a href="{{resolveInternalSlugLink(data_etaps.lieninterne)}}" class="btn-theme">{{data_etaps.globalLien}}</a>
  141. {% elseif data_etaps.typeLien == '3' %}
  142. <a href="{{data_etaps.lienExterne}}" class="btn-theme" target="_blank">{{itdata_etapsem.globalLien}}</a>
  143. {% endif %}
  144. {% endif %}
  145. </div>
  146. </div>
  147. {% endif %}
  148. {% if data_etaps.etaps is defined and data_etaps.etaps is not empty %}
  149. <div class="row content-body">
  150. {% set duree = '100' %}
  151. {% set colClass = data_etaps.globalGridItems is not empty ? 'col-md-' ~ data_etaps.globalGridItems: "col-md-3" %}
  152. {% for item in data_etaps.etaps %}
  153. <div class="col-sm-12 col-md-6 {{colClass}} text-start" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="{{duree}}">
  154. <div class="bloc-content d-flex " {% if item.bg_color %} style="background-color: {{item.bg_color}};" {% endif %}>
  155. {% if item.icon is not empty %}
  156. <span class="item-picto">
  157. <img src="{{item.icon}}" alt="{{item.sous_titre|default('')}}" width="80" height="80" loading="lazy">
  158. </span>
  159. {% endif %}
  160. {% if item.title is not empty or item.sous_titre is not empty %}
  161. <div class="bloc-titre d-flex flex-column" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>
  162. {% if item.title is not empty %}
  163. <h3 class="title" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>
  164. {{item.title}}</h3>
  165. {% endif %}
  166. </div>
  167. {% if item.sous_titre is not empty %}
  168. <span class="sous-titre" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>{{item.sous_titre|raw}}</span>
  169. {% endif %}
  170. {% endif %}
  171. {% if item.description is not empty or item.description2 is not empty or item.type_lien != '1' %}
  172. <div class="bloc-description-item">
  173. {% if item.description %}
  174. <div class="description-item" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>{{item.description|raw}}</div>
  175. {% endif %}
  176. {% if item.description2 %}
  177. <div class="description-option-item" {% if item.bg_color2 or item.text_color2 %} style="background-color: {{item.bg_color2}}; color: {{item.text_color2}};" {% endif %}>{{item.description2|raw}}</div>
  178. {% endif %}
  179. {% if item.type_lien is defined and item.type_lien != '1' and item.title_lien is not empty %}
  180. <div class="bloc-button-item">
  181. {% if item.type_lien == '2' %}
  182. <a href="{{ resolveInternalSlugLink(item.lien_interne) }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  183. {% elseif item.type_lien == '3' %}
  184. <a href="{{ item.lien_externe }}" target="_blank" class="btn-theme">{{ item.title_lien|raw }}</a>
  185. {% elseif item.type_lien == '4' %}
  186. <a href="tel:{{ item.phone_number }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  187. {% endif %}
  188. </div>
  189. {% endif %}
  190. </div>
  191. {% endif %}
  192. </div>
  193. </div>
  194. {% set duree = duree + '100' %}
  195. {% endfor %}
  196. </div>
  197. {% endif %}
  198. </div>
  199. </div>
  200. {% elseif bloc.template == "3" %}
  201. <div id="box-etaps-{{bloc.id}}" class="box-etaps {{data_etaps.style_option|default('')}} {{'model-' ~ bloc.template }} {{bloc.className ?? ''}}">
  202. <div class="container-fluid content-wrapper">
  203. {% if data_etaps.globalTitleOption is not empty or data_etaps.globalTitle is not empty or data_etaps.globalDesc is not empty %}
  204. <div class="row header row-etape" id="etape-header">
  205. <div class="col-sm-12 col-lg-6">
  206. <div class="bloc-content" data-aos="fade-down" data-aos-easing="linear" data-aos-delay="50">
  207. {% if data_etaps.globalTitleOption is defined and data_etaps.globalTitleOption is not empty or data_etaps.typeLien != '' %}
  208. <span class="site_title">{{data_etaps.globalTitleOption|raw}}</span>
  209. {% endif %}
  210. {% if data_etaps.globalTitle is defined and data_etaps.globalTitle is not empty %}
  211. <h2 class="main-title">
  212. {{data_etaps.globalTitle|raw}}
  213. </h2>
  214. {% endif %}
  215. {% if data_etaps.globalDesc is defined and data_etaps.globalDesc is not empty %}
  216. <div class="step-description text-end">
  217. {{data_etaps.globalDesc|raw}}</div>
  218. {% endif %}
  219. {% if data_etaps.typeLien != 1 and data_etaps.typeLien != '' %}
  220. {% if data_etaps.typeLien == '4' %}
  221. <a onclick="window.location.href = 'tel:{{data_etaps.telephone}}';" class="btn-theme">{{data_etaps.globalLien}}</a>
  222. {% elseif data_etaps.typeLien == '2' %}
  223. <a href="{{resolveInternalSlugLink(data_etaps.lieninterne)}}" class="btn-theme">{{data_etaps.globalLien}}</a>
  224. {% elseif data_etaps.typeLien == '3' %}
  225. <a href="{{data_etaps.lienExterne}}" class="btn-theme" target="_blank">{{itdata_etapsem.globalLien}}</a>
  226. {% endif %}
  227. {% endif %}
  228. </div>
  229. </div>
  230. </div>
  231. {% endif %}
  232. {% if data_etaps.etaps is defined and data_etaps is not empty %}
  233. {% set duree = '100' %}
  234. {% if data_etaps.etaps is defined and data_etaps.etaps is not empty %}
  235. {% set colClass = data_etaps.globalGridItems is not empty ? 'col-md-' ~ data_etaps.globalGridItems: "col-md-3" %}
  236. {% for item in data_etaps.etaps %}
  237. <div class="row content-body row-etape sticky justify-content-between" id="etape-{{ loop.index }}" {% if item.bg_color %} style="background-color: {{item.bg_color}};" {% endif %}>
  238. <div class="col-sm-12 col-lg-7 text-start" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="{{duree}}">
  239. <div class="bloc-content">
  240. <div>
  241. {% if item.sous_titre is not empty %}
  242. <div class="sub-title">
  243. {{item.sous_titre}}</div>
  244. {% endif %}
  245. {% if item.title is not empty %}
  246. <h3 class="title">{{item.title}}</h3>
  247. {% endif %}
  248. </div>
  249. {% if item.description %}
  250. <div class="description">{{item.description|raw}}</div>
  251. {% endif %}
  252. {% if item.type_lien is defined and item.type_lien != '1' and item.title_lien is not empty %}
  253. <div class="bloc-button-item">
  254. {% if item.type_lien == '2' %}
  255. <a href="{{ resolveInternalSlugLink(item.lien_interne) }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  256. {% elseif item.type_lien == '3' %}
  257. <a href="{{ item.lien_externe }}" target="_blank" class="btn-theme">{{ item.title_lien|raw }}</a>
  258. {% elseif item.type_lien == '4' %}
  259. <a href="tel:{{ item.phone_number }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  260. {% endif %}
  261. </div>
  262. {% endif %}
  263. </div>
  264. </div>
  265. <div class="col-sm-12 col-lg-5" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="{{duree}}">
  266. <div class="bloc-image">
  267. {% if item.icon %}
  268. <span class="item-picto">
  269. <img src="{{item.icon}}" alt="{{item.sous_titre|default('')}}" width="" height="" loading="lazy">
  270. </span>
  271. {% endif %}
  272. </div>
  273. </div>
  274. {% set duree = duree + '100' %}
  275. </div>
  276. {% endfor %}
  277. {% endif %}
  278. {% if data_etaps.globalDescOption is defined and data_etaps.globalDescOption is not empty %}
  279. <div class="row content-footer">
  280. <div class="col-sm-12" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="{{duree}}">
  281. {{data_etaps.globalDescOption|raw}}
  282. </div>
  283. </div>
  284. {% endif %}
  285. {% endif %}
  286. </div>
  287. </div>
  288. {% elseif bloc.template == "4" %}
  289. <div id="box-etaps-{{bloc.id}}" style="{{ data_etaps.bg_color ? 'background-color:' ~ data_etaps.bg_color ~ ';' : '' }}" class="box-etaps {{data_etaps.style_option|default('')}} {{'model-' ~ bloc.template|default('1') }} {{bloc.className ?? ''}}">
  290. <div class="container-fluid content-wrapper">
  291. {% if data_etaps is defined and data_etaps is not empty %}
  292. <div class="row align-items-center">
  293. {% if data_etaps.globalDesc is not empty or data_etaps.typeLien != 1 or data_etaps.globalDescOption is not empty or data_etaps.globalTitle is not empty or data_etaps.globalTitleOption is not empty %}
  294. <div class="col-sm-12 col-xl-6" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="50">
  295. {% if data_etaps.globalTitleOption is defined and data_etaps.globalTitleOption is not empty %}
  296. <span class="site_title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">{{data_etaps.globalTitleOption|raw}}</span>
  297. {% endif %}
  298. {% if data_etaps.globalTitle is not empty %}
  299. <h2 class="main-title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  300. {{data_etaps.globalTitle|raw}}
  301. </h2>
  302. {% endif %}
  303. {% if data_etaps.globalDesc is not empty or data_etaps.typeLien != 1 or data_etaps.globalDescOption is not empty %}
  304. <div class="bloc-description" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  305. {% if data_etaps.globalDesc is defined and data_etaps.globalDesc is not empty %}
  306. <div class="description">
  307. {{data_etaps.globalDesc|raw}}</div>
  308. {% endif %}
  309. {% if data_etaps.typeLien != 1 and data_etaps.typeLien != '' %}
  310. {% if data_etaps.typeLien == '4' %}
  311. <a onclick="window.location.href = 'tel:{{data_etaps.telephone}}';" class="btn-theme">{{data_etaps.globalLien}}</a>
  312. {% elseif data_etaps.typeLien == '2' %}
  313. <p>
  314. <a href="{{resolveInternalSlugLink(data_etaps.lieninterne)}}" class="btn-theme">
  315. <span>{{data_etaps.globalLien}}</span>
  316. </a>
  317. </p>
  318. {% elseif data_etaps.typeLien == '3' %}
  319. <a href="{{data_etaps.lienExterne}}" class="btn-theme" target="_blank">{{itdata_etapsem.globalLien}}</a>
  320. {% endif %}
  321. {% endif %}
  322. {% if data_etaps.globalDescOption is defined and data_etaps.globalDescOption is not empty %}
  323. <div class="description-option" style="{{ data_etaps.text_color2 ? 'color:' ~ data_etaps.text_color2 ~ ';' : '' }} {{ data_etaps.bg_color2 ? 'background-color:' ~ data_etaps.bg_color2 ~ ';' : '' }}">
  324. {{data_etaps.globalDescOption|raw}}</div>
  325. {% endif %}
  326. </div>
  327. {% endif %}
  328. </div>
  329. {% endif %}
  330. {% if data_etaps.etaps is defined and data_etaps.etaps is not empty %}
  331. <div class="col-sm-12 col-xl-6" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="50">
  332. {% set duree = '100' %}
  333. {% set colClass = data_etaps.globalGridItems is not empty ? 'col-lg-' ~ data_etaps.globalGridItems: "col-md-3" %}
  334. <div class="row">
  335. {% for item in data_etaps.etaps %}
  336. <div class="{{colClass}}">
  337. <div class="bloc-content" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="{{duree}}" {% if item.bg_color %} style="background-color: {{item.bg_color}};" {% endif %}>
  338. {% if item.icon is not empty %}
  339. <span class="item-picto">
  340. <img src="{{item.icon}}" alt="{{item.sous_titre|default('')}}" width="55" height="55" loading="lazy">
  341. </span>
  342. {% endif %}
  343. {% if item.title is not empty %}
  344. <h3 class="title" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>
  345. {{item.title}}</h3>
  346. {% endif %}
  347. {% if item.sous_titre is not empty %}
  348. <span class="sous-titre" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>{{item.sous_titre}}</span>
  349. {% endif %}
  350. {% if item.description is not empty %}
  351. <div class="description-item" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>{{item.description|raw}}</div>
  352. {% endif %}
  353. {% if item.description2 is not empty %}
  354. <div class="description-option-item" {% if item.bg_color2 or item.text_color2 %} style="background-color: {{item.bg_color2}}; color: {{item.text_color2}};" {% endif %}>{{item.description2|raw}}</div>
  355. {% endif %}
  356. {% if item.type_lien is defined and item.type_lien != '1' and item.title_lien is not empty %}
  357. <div class="bloc-button-item">
  358. {% if item.type_lien == '2' %}
  359. <a href="{{ resolveInternalSlugLink(item.lien_interne) }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  360. {% elseif item.type_lien == '3' %}
  361. <a href="{{ item.lien_externe }}" target="_blank" class="btn-theme">{{ item.title_lien|raw }}</a>
  362. {% elseif item.type_lien == '4' %}
  363. <a href="tel:{{ item.phone_number }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  364. {% endif %}
  365. </div>
  366. {% endif %}
  367. </div>
  368. </div>
  369. {% set duree = duree + '100' %}
  370. {% endfor %}
  371. </div>
  372. </div>
  373. {% endif %}
  374. </div>
  375. {% endif %}
  376. </div>
  377. </div>
  378. {% elseif bloc.template == "5" %}
  379. <div id="box-etaps-{{bloc.id}}" class="box-etaps {{data_etaps.style_option|default('')}} {{'model-' ~ bloc.template|default('1') }} {{bloc.className ?? ''}}" style="{{ data_etaps.bg_color ? 'background-color:' ~ data_etaps.bg_color ~ ';' : '' }}">
  380. <div class="container-fluid content-wrapper">
  381. {% if data_etaps is defined and data_etaps is not empty %}
  382. {% if data_etaps.globalTitleOption is not empty or data_etaps.globalTitle is not empty or data_etaps.globalDesc is not empty or data_etaps.typeLien != 1 %}
  383. <div class="row row-header align-items-center justify-content-center">
  384. <div class="col-sm-12" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="50">
  385. {% if data_etaps.globalTitleOption is defined and data_etaps.globalTitleOption is not empty %}
  386. <span class="site_title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">{{data_etaps.globalTitleOption|raw}}</span>
  387. {% endif %}
  388. {% if data_etaps.globalTitle is not empty %}
  389. <h2 class="main-title" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  390. {{data_etaps.globalTitle|raw}}
  391. </h2>
  392. {% endif %}
  393. {% if data_etaps.globalDesc is not empty or data_etaps.typeLien != 1 or data_etaps.globalDescOption is not empty %}
  394. <div class="bloc-description" style="{{ data_etaps.text_color ? 'color:' ~ data_etaps.text_color ~ ';' : '' }}">
  395. {% if data_etaps.globalDesc is defined and data_etaps.globalDesc is not empty %}
  396. <div class="description">
  397. {{data_etaps.globalDesc|raw}}</div>
  398. {% endif %}
  399. {% if data_etaps.typeLien != 1 and data_etaps.typeLien != '' %}
  400. {% if data_etaps.typeLien == '4' %}
  401. <a onclick="window.location.href = 'tel:{{data_etaps.telephone}}';" class="btn-theme">{{data_etaps.globalLien}}</a>
  402. {% elseif data_etaps.typeLien == '2' %}
  403. <a href="{{resolveInternalSlugLink(data_etaps.lieninterne)}}" class="btn-theme">{{data_etaps.globalLien}}</a>
  404. {% elseif data_etaps.typeLien == '3' %}
  405. <a href="{{data_etaps.lienExterne}}" class="btn-theme" target="_blank">{{itdata_etapsem.globalLien}}</a>
  406. {% endif %}
  407. {% endif %}
  408. {% if data_etaps.globalDescOption is defined and data_etaps.globalDescOption is not empty %}
  409. {% set duree = '100' %}
  410. <div class="description-option" style="{{ data_etaps.text_color2 ? 'color:' ~ data_etaps.text_color2 ~ ';' : '' }} {{ data_etaps.bg_color2 ? 'background-color:' ~ data_etaps.bg_color2 ~ ';' : '' }}">
  411. {{data_etaps.globalDescOption|raw}}
  412. </div>
  413. {% endif %}
  414. </div>
  415. {% endif %}
  416. </div>
  417. </div>
  418. {% endif %}
  419. {% if data_etaps.etaps is defined and data_etaps.etaps is not empty %}
  420. <div class="row justify-content-center">
  421. {% set duree = '100' %}
  422. {% if data_etaps.etaps is defined and data_etaps.etaps is not empty %}
  423. {% set colClass = data_etaps.globalGridItems is not empty ? 'col-lg-' ~ data_etaps.globalGridItems: "col-md-3" %}
  424. {% for item in data_etaps.etaps %}
  425. <div class="col-12 col-md-6 {{colClass}} content-item" data-aos="fade-up" data-aos-easing="linear" data-aos-delay="{{duree}}">
  426. <div class="bloc-content" {% if item.bg_color %} style="background-color: {{item.bg_color}};" {% endif %}>
  427. {% if item.icon or item.title is not empty or item.sous_titre is not empty %}
  428. <div class="bloc-header">
  429. {% if item.icon %}
  430. <div class="item-picto">
  431. <img src="{{item.icon}}" alt="{{item.sous_titre|raw|default('')}}" width="50" height="50" loading="lazy">
  432. </div>
  433. {% endif %}
  434. {% if item.title is not empty %}
  435. <h3 class="title" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>
  436. {{item.title}}</h3>
  437. {% endif %}
  438. {% if item.sous_titre is not empty %}
  439. <span class="sous-titre" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>{{item.sous_titre|raw}}</span>
  440. {% endif %}
  441. </div>
  442. {% endif %}
  443. {% if item.description %}
  444. <div class="description-item" {% if item.text_color %} style="color: {{item.text_color}};" {% endif %}>{{item.description|raw}}</div>
  445. {% endif %}
  446. {% if item.description2 %}
  447. <div class="description-option-item" {% if item.bg_color2 or item.text_color2 %} style="background-color: {{item.bg_color2}}; color: {{item.text_color2}};" {% endif %}>
  448. {{item.description2|raw}}
  449. </div>
  450. {% endif %}
  451. {% if item.type_lien is defined and item.type_lien != '1' and item.title_lien is not empty %}
  452. <div class="bloc-button-item">
  453. {% if item.type_lien == '2' %}
  454. <a href="{{ resolveInternalSlugLink(item.lien_interne) }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  455. {% elseif item.type_lien == '3' %}
  456. <a href="{{ item.lien_externe }}" target="_blank" class="btn-theme">{{ item.title_lien|raw }}</a>
  457. {% elseif item.type_lien == '4' %}
  458. <a href="tel:{{ item.phone_number }}" class="btn-theme">{{ item.title_lien|raw }}</a>
  459. {% endif %}
  460. </div>
  461. {% endif %}
  462. </div>
  463. </div>
  464. {% set duree = duree + '100' %}
  465. {% endfor %}
  466. {% endif %}
  467. </div>
  468. {% endif %}
  469. {% endif %}
  470. </div>
  471. </div>
  472. {% endif %}{% endif %}
  473. {% block javascripts %}
  474. <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/gsap.min.js"></script>
  475. <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/ScrollTrigger.min.js"></script>
  476. {% endblock %}