Logiciels.vue 4.0 KB

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