poc.vue 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. <template>
  2. <div id="Catalogue">
  3. <LayoutContainer>
  4. <div class="grey-container">
  5. <v-row class="custom-row">
  6. <LayoutUISubTitle
  7. :iconSize="6"
  8. :iconClasses="iconClasses"
  9. :titleText="'Des webinaires pour tous'"
  10. />
  11. </v-row>
  12. <v-row class="custom-row">
  13. <LayoutUITitlePage
  14. title="SIMPLIFIEZ LA GESTION ET LA COMMUNICATION DE VOTRE STRUCTURE CULTURELLE"
  15. subtitle="Votre orchestre, école de danse ou votre fédération mérite les outils les plus performants du marché pour briller en toute simplicité. Découvrez comment nos outils peuvent transformer votre quotidien : "
  16. />
  17. </v-row>
  18. <v-row
  19. style="
  20. padding: 2rem;
  21. max-width: 90%;
  22. margin-left: auto;
  23. margin-right: auto;
  24. "
  25. class="custom-row"
  26. >
  27. <v-col v-for="(course, index) in courses" :key="index" cols="4">
  28. <v-card class="mb-4">
  29. <v-card-text>
  30. <div class="title-card-container d-flex align-center">
  31. <v-img class="logo-img mr-2" :src="course.imageUrl"></v-img>
  32. <h4 class="card-title">{{ course.title }}</h4>
  33. </div>
  34. <p class="details-card">{{ course.description }}</p>
  35. <div class="container-blue mt-6">
  36. <h6 class="title-obj">Objectifs</h6>
  37. <ul class="list-obj">
  38. <li
  39. v-for="(objective, objIndex) in course.objectives"
  40. :key="objIndex"
  41. >
  42. {{ objective }}
  43. </li>
  44. </ul>
  45. </div>
  46. <div class="container-blue">
  47. <h6 class="title-obj">Programme</h6>
  48. <v-row>
  49. <v-col
  50. v-for="column in course.additionalObjectives"
  51. :key="column.id"
  52. cols="6"
  53. >
  54. <ul class="list-obj">
  55. <li
  56. v-for="(objective, objIndex) in column.objectives"
  57. :key="objIndex"
  58. >
  59. {{ objective }}
  60. </li>
  61. </ul>
  62. </v-col>
  63. </v-row>
  64. </div>
  65. <v-chip class="badge-time">
  66. <span>Durée : {{ course.duration }}</span></v-chip
  67. >
  68. <v-chip class="badge-time">
  69. <span>{{ course.price }}</span></v-chip
  70. >
  71. <v-chip class="chip-download" @click="toggleDetails(course)">
  72. Inscrivez-vous
  73. </v-chip>
  74. </v-card-text>
  75. </v-card>
  76. </v-col>
  77. </v-row>
  78. </div>
  79. <div v-if="course.showDetails" class="container-inscription">
  80. <div class="container-green">
  81. <LayoutUISubTitle
  82. :titleColor="'#fff'"
  83. :iconSize="6"
  84. :iconClasses="iconClasses"
  85. :titleText="'Inscrivez vous'"
  86. />
  87. <h3 class="title-inscription text-center mt-4">
  88. Vous y êtes presque !
  89. </h3>
  90. <iframe
  91. :src="webinaireCalendars[course.title]"
  92. width="700"
  93. height="700"
  94. ></iframe>
  95. <v-row>
  96. <v-col cols="12">
  97. <v-btn @click="toggleDetails(course)">Fermer</v-btn>
  98. </v-col>
  99. </v-row>
  100. </div>
  101. </div>
  102. </LayoutContainer>
  103. </div>
  104. </template>
  105. <script setup>
  106. import { ref } from "vue";
  107. const currentWebinaire = ref(null);
  108. const webinaireCalendars = {
  109. "Webinaire Artist":
  110. "https://widget.weezevent.com/ticket/E920851/?code=62708&locale=fr-FR&width_auto=1&color_primary=0e2d32",
  111. "Webinaire School":
  112. "https://widget.weezevent.com/ticket/E963899/?code=47365&locale=fr-FR&width_auto=1&color_primary=0e2d32",
  113. "Webinaire Manager":
  114. "https://widget.weezevent.com/ticket/E923624/?code=4857&locale=fr-FR&width_auto=1&color_primary=0e2d32",
  115. };
  116. const showModal = (webinaireTitle) => {
  117. currentWebinaire.value = webinaireTitle.trim();
  118. };
  119. const closeModal = () => {
  120. currentWebinaire.value = null;
  121. };
  122. const downloadPdf = (pdfUrl) => {
  123. window.open(pdfUrl, "_blank");
  124. };
  125. const courses = [
  126. {
  127. imageUrl: "/images/logo/logiciels/&_Jaune.png",
  128. title: "Webinaire Artist ",
  129. description:
  130. "Ce webinaire est destiné aux acteurs culturels tels que les orchestres, les chorales, les compagnies et troupes de danse, théâtre et cirque. Il vous permettra de découvrir les fonctionnalités du logiciels, les avantages et les différentes versions.. ",
  131. objectives: [
  132. "Découvrir le logiciel Opentalent Artist",
  133. "Présentation des principales fonctionnalités",
  134. "Quelles sont les différences entre les versions Standard & Premium ?",
  135. "Qu'est ce que l'Agenda culturel et l'annuaire ? ",
  136. ],
  137. duration: "1H30",
  138. additionalObjectives: [
  139. {
  140. id: 1,
  141. objectives: [
  142. "Accès et interface",
  143. "Configuration",
  144. "Répertoire",
  145. "Agenda",
  146. ],
  147. },
  148. {
  149. id: 2,
  150. objectives: [
  151. "Parc matériel",
  152. "Rapport d’activité",
  153. "Site internet",
  154. "Communication",
  155. ],
  156. },
  157. ],
  158. price: "Gratuit",
  159. downloadLink:
  160. "https://www.opentalent.fr/fileadmin/stockage/stockage/support/programme/PF-School-2023-02_2-jours.pdf",
  161. },
  162. {
  163. // number: "02",
  164. title: "Webinaire School",
  165. imageUrl: "/images/logo/logiciels/&_Bleu.png",
  166. description:
  167. " Rejoignez notre webinaire dédié aux petits comme aux GRANDS établissements d'enseignement artistique et découvrez comment optimiser votre travail grâce à un outil professionnel.",
  168. objectives: [
  169. "Découvrir le logiciel Opentalent School",
  170. "Comprendre l'écosystème de l'outil",
  171. "Présentation des principales fonctionnalités",
  172. "Identifier les avantages de cet outil pour votre structure",
  173. ],
  174. duration: "1h",
  175. additionalObjectives: [
  176. {
  177. id: 1,
  178. objectives: [
  179. "Accès et interface",
  180. "Configuration",
  181. "Répertoire",
  182. "Agenda",
  183. ],
  184. },
  185. {
  186. id: 2,
  187. objectives: [
  188. "Parc matériel",
  189. "Rapport d’activité",
  190. "Site internet",
  191. "Communication",
  192. ],
  193. },
  194. ],
  195. price: "Gratuit",
  196. downloadLink:
  197. "https://www.opentalent.fr/fileadmin/stockage/stockage/support/programme/PF-School-2023-02_1-jour.pdf",
  198. },
  199. {
  200. title: "Webinaire Manager",
  201. imageUrl: "/images/logo/logiciels/&_Rouge.png",
  202. description:
  203. "Ces webinaires sont spécialement conçues pour les utilisateurs du logiciel fédéral de la CMF (Confédération Musicale de France). Gagner en temps administratif, booster vos performances et optimiser l'utilisation du logiciel.",
  204. objectives: [
  205. "Configurer l'appel de cotisation",
  206. "Suivre l'appel de cotisation",
  207. "Gérer votre site internet (débutants)",
  208. "Gérer votre site internet (confirmés)",
  209. ],
  210. duration: "1H30",
  211. additionalObjectives: [
  212. {
  213. id: 1,
  214. objectives: [
  215. "Mieux connaitre votre logiciel",
  216. "Optimiser votre temps administratif",
  217. ],
  218. },
  219. {
  220. id: 2,
  221. objectives: [
  222. "Communiquer avec votre réseau",
  223. "Promouvoir votre organisation",
  224. ],
  225. },
  226. ],
  227. price: "Gratuit",
  228. downloadLink:
  229. " https://www.opentalent.fr/fileadmin/stockage/stockage/support/programme/PF-Typo3-2023-02_1-jour.pdf",
  230. },
  231. ];
  232. courses.forEach(course => course.showDetails = false);
  233. const toggleDetails = (course) => {
  234. course.showDetails = !course.showDetails;
  235. };
  236. </script>
  237. <style scoped>
  238. .custom-row {
  239. width: 90%;
  240. margin-left: auto;
  241. margin-right: auto;
  242. }
  243. .v-card {
  244. border: none !important;
  245. box-shadow: none !important;
  246. background-color: transparent !important;
  247. }
  248. .grey-container {
  249. background-color: #f8f8f8;
  250. }
  251. .chip-download {
  252. border-radius: 3rem;
  253. font-family: "Barlow";
  254. font-style: normal;
  255. font-weight: 500;
  256. font-size: 14px;
  257. line-height: 18px;
  258. margin-top: 1rem;
  259. margin-bottom: 1rem;
  260. display: flex;
  261. justify-content: center;
  262. align-items: center;
  263. }
  264. .badge-time {
  265. color: white;
  266. border: 1px solid #0e2d32;
  267. border-radius: 3rem;
  268. font-family: "Barlow";
  269. font-style: normal;
  270. font-weight: 500;
  271. font-size: 14px;
  272. line-height: 18px;
  273. margin-top: 1rem;
  274. margin-bottom: 1rem;
  275. display: flex;
  276. justify-content: center;
  277. align-items: center;
  278. }
  279. .badge-time span {
  280. color: var(--Vert-90, #0e2d32);
  281. }
  282. .list-obj {
  283. margin-top: 0.5rem;
  284. font-family: "Barlow";
  285. font-style: normal;
  286. font-weight: 300;
  287. font-size: 14px;
  288. line-height: 18px;
  289. color: #000000;
  290. }
  291. .title-obj {
  292. font-family: "Barlow";
  293. font-style: normal;
  294. font-weight: 500;
  295. font-size: 16px;
  296. line-height: 20px;
  297. color: #0e2d32;
  298. }
  299. .container-blue {
  300. justify-content: space-between;
  301. align-items: center;
  302. background: #c3e5e7;
  303. padding: 1rem;
  304. margin-top: 1rem;
  305. margin-bottom: 1rem;
  306. border-radius: 1rem;
  307. padding-left: 1.5rem;
  308. height: 11rem;
  309. }
  310. .details-card {
  311. font-family: "Barlow";
  312. font-style: normal;
  313. font-weight: 300;
  314. font-size: 1rem;
  315. line-height: 1rem;
  316. color: #091d20;
  317. margin-top: 1rem;
  318. margin-bottom: 0.5rem;
  319. height: 5rem;
  320. }
  321. .title-card-container {
  322. border-bottom: 1px solid #0e2d32;
  323. width: 80%;
  324. margin-left: auto;
  325. margin-right: auto;
  326. }
  327. .card-title {
  328. font-weight: 600;
  329. font-size: 1.2rem;
  330. margin-bottom: 0.8rem;
  331. }
  332. .logo-img {
  333. position: absolute;
  334. top: 0;
  335. left: 0;
  336. width: 50px;
  337. height: 50px;
  338. }
  339. :deep().subtitle {
  340. font-size: 1.5rem;
  341. font-weight: normal !important;
  342. line-height: 2rem;
  343. letter-spacing: 0.1rem;
  344. margin-bottom: 1rem;
  345. width: 80%;
  346. margin-left: auto;
  347. margin-right: auto;
  348. }
  349. :deep().title {
  350. font-size: 2rem;
  351. line-height: 3.5rem;
  352. letter-spacing: 0.1rem;
  353. margin-top: 2rem;
  354. margin-bottom: 0.5rem;
  355. text-transform: uppercase;
  356. }
  357. .title-inscription {
  358. font-family: "Barlow";
  359. font-style: normal;
  360. font-weight: 600;
  361. font-size: 2rem;
  362. line-height: 18px;
  363. color: #fff;
  364. margin-bottom: 2rem;
  365. }
  366. .close-button {
  367. background-color: #e34461;
  368. color: #fff;
  369. font-family: "Barlow";
  370. font-style: normal;
  371. font-weight: 500;
  372. font-size: 14px;
  373. line-height: 18px;
  374. margin-top: 1rem;
  375. margin-bottom: 1rem;
  376. display: flex;
  377. justify-content: center;
  378. align-items: center;
  379. }
  380. .calendar-modal {
  381. position: fixed;
  382. top: 0;
  383. left: 0;
  384. width: 100%;
  385. height: 100%;
  386. background-color: rgba(14, 45, 50, 0.8);
  387. z-index: 9999;
  388. display: flex;
  389. justify-content: center;
  390. align-items: center;
  391. }
  392. .container-green {
  393. background-color: #0e2d32;
  394. padding: 4rem;
  395. }
  396. </style>