FAQ.vue 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. <template>
  2. <LayoutContainer>
  3. <LayoutUITitlePage title="Tout savoir sur nos webinaire en lignes" subtitle="Les questions les plus fréquentes" />
  4. <div class="faq-container">
  5. <div v-for="(item, index) in faqItems" :key="index" class="faq-item">
  6. <div class="question" @click="toggle(index)">
  7. <i class="fa-solid fa-circle question-icon"></i> {{ item.question }}
  8. </div>
  9. <div class="answer" v-if="isActive(index)" v-html="item.answer"></div>
  10. </div>
  11. </div>
  12. </LayoutContainer>
  13. </template>
  14. <script setup>
  15. import { ref } from 'vue';
  16. const faqItems = ref([
  17. {
  18. question: 'Comment s’inscrire à un webinaire?',
  19. answer: 'Pour vous inscrire à un webinaire, suivez le lien "Inscrivez-vous" correspondant au cours qui vous intéresse.',
  20. },
  21. {
  22. question: 'Combien de temps dure nos webinaires ?',
  23. answer: 'Nos webinaires durent en moyenne 1H30. Les sessions de questions/réponses peuvent parfois prolonger la durée prévue de nos webinaires.',
  24. },
  25. {
  26. question: 'Comment se passe un webinaire ?',
  27. answer: 'Inscrivez-vous à l\'un de nos webinaires en choisissant une date sur l\'agenda et renseignez vos informations. ' +
  28. 'Vous recevrez à la suite de votre inscription sur notre site, un email de confirmation avec un rappel de la date et de l\'horaire de participation ainsi que l\'URL de connexion pour le webinaire. ' +
  29. 'Un mail de relance à J-1 vous sera envoyer vous rappelant votre participation au webinaire. ' +
  30. 'Le jour J, cliquez sur l\'URL de connexion. Nous vous encourageons à arriver quelques minutes en avance pour vous assurer de pouvoir accéder au webinaire sans aucun problème technique. ' +
  31. 'Lors du début du webinaire, toutes les instructions nécessaires vous seront fournies.'
  32. },
  33. {
  34. question: 'De quel matériel aurais-je besoin pour suivre le webinaire ?',
  35. answer: 'Pour plus de confort, il est recommandé d\'être équipé d\'un outil (de préférence un ordinateur) disposant d\'un micro et de haut-parleur.',
  36. },
  37. {
  38. question: 'Y-a-t\'il une limite de participants ?',
  39. answer: 'Il n\'y a pas de limite de participants lors de nos webinaires. Cependant, nous nous réservons le droit d\'annuler une session si le nombre de participants est inférieur à 3 personnes.',
  40. },
  41. {
  42. question: 'J\'ai besoin d\'aide...',
  43. answer: 'Notre équipe est là pour vous. <button onclick="window.location.href=\'/contact\'">Contactez-nous</button>'
  44. },
  45. ]);
  46. const activeIndex = ref(-1);
  47. function toggle(index) {
  48. activeIndex.value = activeIndex.value === index ? -1 : index;
  49. }
  50. function isActive(index) {
  51. return activeIndex.value === index;
  52. }
  53. </script>
  54. <style scoped>
  55. .faq-container {
  56. padding: 1rem;
  57. }
  58. .faq-item {
  59. margin-bottom: 0.5rem;
  60. border-radius: 4px;
  61. }
  62. .question {
  63. background-color: #0E2D32;
  64. color: #fff;
  65. padding: 0.75rem 1rem;
  66. cursor: pointer;
  67. border-radius: 4px;
  68. display: flex;
  69. align-items: center;
  70. }
  71. .question:hover {
  72. background-color: #555;
  73. }
  74. .question-icon {
  75. font-size: 10px !important;
  76. color: rgba(161, 225, 249, 0.6);
  77. margin-right: 0.5rem;
  78. }
  79. .answer {
  80. background-color: #C3E5E7;
  81. padding: 0.5rem 1rem;
  82. border: 1px solid #ccc;
  83. border-top: none;
  84. border-radius: 0 0 4px 4px;
  85. }
  86. :deep().subtitle {
  87. font-size: 1.5rem;
  88. font-weight: normal !important;
  89. line-height: 2rem;
  90. letter-spacing: .1rem;
  91. margin-bottom: 1rem;
  92. }
  93. :deep().title {
  94. font-size: 2rem;
  95. line-height: 3.5rem;
  96. letter-spacing: .1rem;
  97. margin-top: 2rem;
  98. margin-bottom: .5rem;
  99. text-transform: uppercase;
  100. }
  101. </style>