Logiciels.vue 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. <template>
  2. <AnchoredSection id="softwares">
  3. <LayoutContainer>
  4. <v-row class="mb-6 center-90">
  5. <LayoutUISubTitle>
  6. Nos logiciels
  7. </LayoutUISubTitle>
  8. <LayoutUITitle>
  9. Nos logiciels dédiés à chaque acteur culturel
  10. </LayoutUITitle>
  11. </v-row>
  12. <v-row class="mb-12 center-90">
  13. <v-col cols="3">
  14. <p class="text-justify mr-4 ml-6 mb-6">
  15. Découvrez notre gamme de logiciels de gestion & de communication
  16. adapté au secteur culturel. <br />
  17. Des fonctionnalités complètes:
  18. </p>
  19. <ul class="ml-6">
  20. <li
  21. v-for="(feature, index) in features"
  22. :key="index"
  23. >
  24. {{ feature }}
  25. </li>
  26. </ul>
  27. <p class="text-justify mr-4 ml-6 mt-6">
  28. À chaque logiciel sa spécificité !
  29. </p>
  30. </v-col>
  31. <v-col
  32. cols="3"
  33. v-for="(item, index) in items"
  34. :key="index"
  35. :class="item.class"
  36. >
  37. <v-img
  38. :src="item.imageUrl"
  39. cover
  40. class="container-image"
  41. >
  42. <footer>
  43. <v-img :src="item.logoUrl" class="logo" />
  44. <v-btn
  45. :to="item.link"
  46. class="plus-button"
  47. >
  48. <v-icon>fas fa-plus</v-icon>
  49. </v-btn>
  50. </footer>
  51. </v-img>
  52. </v-col>
  53. </v-row>
  54. </LayoutContainer>
  55. </AnchoredSection>
  56. </template>
  57. <script setup lang="ts">
  58. import AnchoredSection from "~/components/Layout/AnchoredSection.vue";
  59. const features: Array<string> = [
  60. "Une gestion de vos contacts",
  61. "un agenda collaboratif et interactif",
  62. "Une gestion du matériel et du stock",
  63. "Une communication simplifiée",
  64. "Un rapport d'activité complet",
  65. "Un site internet intégré",
  66. "Et bien plus encore...",
  67. ];
  68. const items: Array<{imageUrl: string, logoUrl: string, class: string, link: string}> = [
  69. {
  70. imageUrl: "/images/solutions/artist.jpg",
  71. logoUrl: "/images/logo/logiciels/Artist-Blanc.png",
  72. class: "artist",
  73. link: "/opentalent_artist",
  74. },
  75. {
  76. imageUrl: "/images/solutions/school.jpg",
  77. logoUrl: "/images/logo/logiciels/School-Blanc.png",
  78. class: "school",
  79. link: "/opentalent_school",
  80. },
  81. {
  82. imageUrl: "/images/solutions/manager.png",
  83. logoUrl: "/images/logo/logiciels/Manager-Blanc.png",
  84. class: "manager",
  85. link: "/opentalent_manager",
  86. },
  87. ];
  88. </script>
  89. <style scoped lang="scss">
  90. .container {
  91. padding: 0 !important;
  92. margin-top: 1rem;
  93. background: var(--neutral-color);
  94. }
  95. ul {
  96. list-style: none;
  97. padding-left: 0;
  98. }
  99. li {
  100. margin-left: 0.8rem;
  101. position: relative;
  102. margin-bottom: 10px;
  103. }
  104. li:before {
  105. content: "";
  106. position: absolute;
  107. left: -10px;
  108. top: 50%;
  109. transform: translateY(-50%);
  110. width: 3px;
  111. height: 3px;
  112. background-color: var(--on-neutral-color);
  113. border-radius: 50%;
  114. }
  115. .container-image {
  116. position: relative;
  117. background-repeat: no-repeat;
  118. background-size: cover;
  119. background-position: center;
  120. width: 100%;
  121. height: 370px;
  122. z-index: 0;
  123. footer {
  124. position: absolute;
  125. bottom: 0;
  126. left: 0;
  127. width: 100%;
  128. height: 100px;
  129. display: flex;
  130. align-items: center;
  131. justify-content: space-between;
  132. padding: 0 10px;
  133. }
  134. .logo {
  135. width: 100px;
  136. z-index: 2;
  137. margin-right: 10px;
  138. }
  139. .plus-button {
  140. width: 80px;
  141. height: 80px;
  142. border-radius: 50% 0 0 0;
  143. background: var(--primary-color);
  144. color: var(--on-primary-color);
  145. box-shadow: none !important;
  146. border-top-left-radius: 10% !important;
  147. .v-icon {
  148. color: var(--on-primary-color);
  149. font-size: 2rem;
  150. }
  151. }
  152. :hover .plus-button {
  153. transform: scale(1.2);
  154. transition: all 0.3s ease-in-out;
  155. }
  156. }
  157. .artist .plus-button {
  158. background: var(--artist-color);
  159. }
  160. .school .plus-button {
  161. background: var(--school-color);
  162. }
  163. .manager .plus-button {
  164. background: var(--manager-color);
  165. }
  166. </style>