Bläddra i källkod

lint and update video source

Olivier Massot 1 år sedan
förälder
incheckning
2fe295ddc2

+ 3 - 4
components/About/Chronologie.client.vue

@@ -111,7 +111,7 @@ const slides: Array<ChronologyItem> = [
     year: '2005',
     year: '2005',
     title: "L'origine d'Opentalent",
     title: "L'origine d'Opentalent",
     description:
     description:
-      "Sous une pleine lune, face à la démobilisation des bénévoles concernant la gestion administrative, Guillaume imagine un outil collaboratif en ligne pour le secteur culturel. Cette idée émerge alors qu’il préside l’orchestre d’harmonie, membre du conseil d’administration de l’école de musique et de la Fédération des musiques du Faucigny, marquant le début du concept Openassos.",
+      'Sous une pleine lune, face à la démobilisation des bénévoles concernant la gestion administrative, Guillaume imagine un outil collaboratif en ligne pour le secteur culturel. Cette idée émerge alors qu’il préside l’orchestre d’harmonie, membre du conseil d’administration de l’école de musique et de la Fédération des musiques du Faucigny, marquant le début du concept Openassos.',
     imageUrl:
     imageUrl:
       '/images/pages/qui-sommes-nous/chronologie/1-Origine_Opentalent-outil_collaboratif_pour_la_culture.min.jpg',
       '/images/pages/qui-sommes-nous/chronologie/1-Origine_Opentalent-outil_collaboratif_pour_la_culture.min.jpg',
   },
   },
@@ -175,9 +175,8 @@ const slides: Array<ChronologyItem> = [
     year: '2020',
     year: '2020',
     title: 'Cap sur sur les conservatoires',
     title: 'Cap sur sur les conservatoires',
     description:
     description:
-      "La nouvelle gamme Opentalent, représente une étape clé pour l’entreprise, désormais tournée vers les plus grands conservatoires. Des développements spécifiques ont été élaborés pour répondre aux exigences de ce secteur, consolidant ainsi la position d’Opentalent en tant qu’acteur incontournable du domaine culturel.",
-    imageUrl:
-      '/images/pages/qui-sommes-nous/chronologie/Conservatoire.png',
+      'La nouvelle gamme Opentalent, représente une étape clé pour l’entreprise, désormais tournée vers les plus grands conservatoires. Des développements spécifiques ont été élaborés pour répondre aux exigences de ce secteur, consolidant ainsi la position d’Opentalent en tant qu’acteur incontournable du domaine culturel.',
+    imageUrl: '/images/pages/qui-sommes-nous/chronologie/Conservatoire.png',
   },
   },
   {
   {
     year: '2024',
     year: '2024',

+ 186 - 191
components/Common/Table/Comparatif.vue

@@ -1,189 +1,189 @@
 <template>
 <template>
   <LayoutContainer>
   <LayoutContainer>
     <div class="premium-container">
     <div class="premium-container">
-    <v-row class="center-90">
-      <table v-if="mdAndUp">
-        <thead>
-          <tr>
-            <th />
-
-            <th>
-              <p class="standard">Standard</p>
-              <p v-if="showFrom" class="from">À partir de</p>
-              <p class="price">
-                {{ standardPrice }} <span class="ttc">ttc</span>
-              </p>
-              <p class="month">/mois *</p>
-            </th>
-
-            <th class="premium-column">
-              <p class="standard">Premium</p>
-              <p v-if="showFrom" class="from">À partir de</p>
-              <p class="price">
-                {{ premiumPrice }} <span class="ttc">ttc</span>
-              </p>
-              <p class="month">/mois *</p>
-            </th>
-          </tr>
-        </thead>
-
-        <tbody>
-          <tr v-for="item in items" :key="item.label">
-            <td class="label-column">
-              {{ item.label }}
-            </td>
-
-            <td>
-              <v-icon
-                v-if="item.includedInStandard === true"
-                icon="far fa-check-circle"
-                size="18"
-              />
-
-              <v-icon
-                v-else-if="item.includedInStandard === false"
-                icon="far fa-times-circle"
-                size="18"
-                color="red"
-              />
-
-              <span v-else>
-                {{ item.includedInStandard }}
-              </span>
-            </td>
-
-            <td>
-              <v-icon
-                v-if="item.includedInPremium === true"
-                icon="far fa-check-circle"
-                size="18"
-              />
-
-              <v-icon
-                v-else-if="item.includedInPremium === false"
-                icon="far fa-times-circle"
-                size="18"
-                color="red"
-              />
-
-              <span v-else>
-                {{ item.includedInPremium }}
-              </span>
-            </td>
-          </tr>
-        </tbody>
-      </table>
-
-      <div v-else>
-        <div class="d-flex flex-row flex-grow-1 justify-center mt-2">
-          <v-btn
-            :disabled="carouselPos === 0"
-            icon="fas fa-chevron-left"
-            class="mr-6"
-            aria-label="Précédent"
-            @click="goToPrevious"
-          />
-          <v-btn
-            :disabled="carouselPos === 1"
-            icon="fas fa-chevron-right"
-            aria-label="Suivant"
-            @click="goToNext"
-          />
+      <v-row class="center-90">
+        <table v-if="mdAndUp">
+          <thead>
+            <tr>
+              <th />
+
+              <th>
+                <p class="standard">Standard</p>
+                <p v-if="showFrom" class="from">À partir de</p>
+                <p class="price">
+                  {{ standardPrice }} <span class="ttc">ttc</span>
+                </p>
+                <p class="month">/mois *</p>
+              </th>
+
+              <th class="premium-column">
+                <p class="standard">Premium</p>
+                <p v-if="showFrom" class="from">À partir de</p>
+                <p class="price">
+                  {{ premiumPrice }} <span class="ttc">ttc</span>
+                </p>
+                <p class="month">/mois *</p>
+              </th>
+            </tr>
+          </thead>
+
+          <tbody>
+            <tr v-for="item in items" :key="item.label">
+              <td class="label-column">
+                {{ item.label }}
+              </td>
+
+              <td>
+                <v-icon
+                  v-if="item.includedInStandard === true"
+                  icon="far fa-check-circle"
+                  size="18"
+                />
+
+                <v-icon
+                  v-else-if="item.includedInStandard === false"
+                  icon="far fa-times-circle"
+                  size="18"
+                  color="red"
+                />
+
+                <span v-else>
+                  {{ item.includedInStandard }}
+                </span>
+              </td>
+
+              <td>
+                <v-icon
+                  v-if="item.includedInPremium === true"
+                  icon="far fa-check-circle"
+                  size="18"
+                />
+
+                <v-icon
+                  v-else-if="item.includedInPremium === false"
+                  icon="far fa-times-circle"
+                  size="18"
+                  color="red"
+                />
+
+                <span v-else>
+                  {{ item.includedInPremium }}
+                </span>
+              </td>
+            </tr>
+          </tbody>
+        </table>
+
+        <div v-else>
+          <div class="d-flex flex-row flex-grow-1 justify-center mt-2">
+            <v-btn
+              :disabled="carouselPos === 0"
+              icon="fas fa-chevron-left"
+              class="mr-6"
+              aria-label="Précédent"
+              @click="goToPrevious"
+            />
+            <v-btn
+              :disabled="carouselPos === 1"
+              icon="fas fa-chevron-right"
+              aria-label="Suivant"
+              @click="goToNext"
+            />
+          </div>
+
+          <v-carousel
+            v-model="carouselPos"
+            :hide-delimiters="true"
+            :show-arrows="false"
+            :height="height"
+          >
+            <v-carousel-item>
+              <h4>Standard</h4>
+              <div>
+                <p class="from">À partir de</p>
+                <p class="price">
+                  {{ standardPrice }} <span class="ttc">ttc</span>
+                  <span class="month">/mois</span>
+                </p>
+              </div>
+
+              <table>
+                <tbody>
+                  <tr v-for="item in items" :key="item.label">
+                    <td class="label-column">
+                      {{ item.label }}
+                    </td>
+
+                    <td>
+                      <v-icon
+                        v-if="item.includedInStandard === true"
+                        icon="far fa-check-circle"
+                        size="18"
+                      />
+
+                      <v-icon
+                        v-else-if="item.includedInStandard === false"
+                        icon="far fa-times-circle"
+                        size="18"
+                        color="red"
+                      />
+
+                      <span v-else>
+                        {{ item.includedInStandard }}
+                      </span>
+                    </td>
+                  </tr>
+                </tbody>
+              </table>
+            </v-carousel-item>
+
+            <v-carousel-item>
+              <h4>Premium</h4>
+
+              <div>
+                <p class="from">À partir de</p>
+                <p class="price">
+                  {{ premiumPrice }} <span class="ttc">ttc</span>
+                  <span class="month">/mois</span>
+                </p>
+              </div>
+
+              <table>
+                <tbody>
+                  <tr v-for="item in items" :key="item.label">
+                    <td class="label-column">
+                      {{ item.label }}
+                    </td>
+
+                    <td>
+                      <v-icon
+                        v-if="item.includedInPremium === true"
+                        icon="far fa-check-circle"
+                        size="18"
+                      />
+
+                      <v-icon
+                        v-else-if="item.includedInPremium === false"
+                        icon="far fa-times-circle"
+                        size="18"
+                        color="red"
+                      />
+
+                      <span v-else>
+                        {{ item.includedInPremium }}
+                      </span>
+                    </td>
+                  </tr>
+                </tbody>
+              </table>
+            </v-carousel-item>
+          </v-carousel>
         </div>
         </div>
 
 
-        <v-carousel
-          v-model="carouselPos"
-          :hide-delimiters="true"
-          :show-arrows="false"
-          :height="height"
-        >
-          <v-carousel-item>
-            <h4>Standard</h4>
-            <div>
-              <p class="from">À partir de</p>
-              <p class="price">
-                {{ standardPrice }} <span class="ttc">ttc</span>
-                <span class="month">/mois</span>
-              </p>
-            </div>
-
-            <table>
-              <tbody>
-                <tr v-for="item in items" :key="item.label">
-                  <td class="label-column">
-                    {{ item.label }}
-                  </td>
-
-                  <td>
-                    <v-icon
-                      v-if="item.includedInStandard === true"
-                      icon="far fa-check-circle"
-                      size="18"
-                    />
-
-                    <v-icon
-                      v-else-if="item.includedInStandard === false"
-                      icon="far fa-times-circle"
-                      size="18"
-                      color="red"
-                    />
-
-                    <span v-else>
-                      {{ item.includedInStandard }}
-                    </span>
-                  </td>
-                </tr>
-              </tbody>
-            </table>
-          </v-carousel-item>
-
-          <v-carousel-item>
-            <h4>Premium</h4>
-
-            <div>
-              <p class="from">À partir de</p>
-              <p class="price">
-                {{ premiumPrice }} <span class="ttc">ttc</span>
-                <span class="month">/mois</span>
-              </p>
-            </div>
-
-            <table>
-              <tbody>
-                <tr v-for="item in items" :key="item.label">
-                  <td class="label-column">
-                    {{ item.label }}
-                  </td>
-
-                  <td>
-                    <v-icon
-                      v-if="item.includedInPremium === true"
-                      icon="far fa-check-circle"
-                      size="18"
-                    />
-
-                    <v-icon
-                      v-else-if="item.includedInPremium === false"
-                      icon="far fa-times-circle"
-                      size="18"
-                      color="red"
-                    />
-
-                    <span v-else>
-                      {{ item.includedInPremium }}
-                    </span>
-                  </td>
-                </tr>
-              </tbody>
-            </table>
-          </v-carousel-item>
-        </v-carousel>
-      </div>
-
-      <div class="asterisk">
-        <span>* Payable annuellement</span>
-      </div>
-    </v-row>
+        <div class="asterisk">
+          <span>* Payable annuellement</span>
+        </div>
+      </v-row>
     </div>
     </div>
   </LayoutContainer>
   </LayoutContainer>
 </template>
 </template>
@@ -378,34 +378,29 @@ table tr:nth-child(1) th:nth-child(3) {
 .premium-column {
 .premium-column {
   position: relative;
   position: relative;
   z-index: 10;
   z-index: 10;
-  border-radius: 0 15px 15px 0; 
+  border-radius: 0 15px 15px 0;
 }
 }
 
 
 .premium-column p,
 .premium-column p,
 .premium-column .month,
 .premium-column .month,
 .premium-column .price {
 .premium-column .price {
-  border: none !important; 
+  border: none !important;
 }
 }
 
 
 thead th:nth-child(3) {
 thead th:nth-child(3) {
-  border-top: 2px solid black; 
+  border-top: 2px solid black;
 }
 }
 
 
-
 tbody tr:last-child td:nth-child(3) {
 tbody tr:last-child td:nth-child(3) {
   border-bottom: 2px solid black;
   border-bottom: 2px solid black;
-  border-radius: 0 0 15px 0; 
+  border-radius: 0 0 15px 0;
 }
 }
 
 
 .premium-column p,
 .premium-column p,
 .premium-column .month,
 .premium-column .month,
 .premium-column .price,
 .premium-column .price,
-.premium-column .ttc
-
-{
+.premium-column .ttc {
   margin: 0;
   margin: 0;
   padding: 0;
   padding: 0;
 }
 }
-
-
 </style>
 </style>

+ 9 - 5
components/Contact/Form.vue

@@ -187,11 +187,15 @@
       </v-container>
       </v-container>
 
 
       <div class="legal">
       <div class="legal">
-        Les données recueillies par Opentalent sont utilisées pour le traitement de votre demande et pour vous informer sur nos offres. 
-        Elles sont destinées aux services Opentalent et à ses sous-traitants pour l’exécution des contrats. 
-        Conformément à la loi "Informatique et Libertés du 6 Janvier 1978", vous disposez d’un droit d’accès, de modifications, de rectification 
-        et de suppression des données vous concernant. Pour toute demande, adressez-vous à : OPENTALENT, 265 rue de la Grange 74950 SCIONZIER - FRANCE, 
-        opentalent.fr s’engage à la confidentialité et à la protection de vos données.”
+        Les données recueillies par Opentalent sont utilisées pour le traitement
+        de votre demande et pour vous informer sur nos offres. Elles sont
+        destinées aux services Opentalent et à ses sous-traitants pour
+        l’exécution des contrats. Conformément à la loi "Informatique et
+        Libertés du 6 Janvier 1978", vous disposez d’un droit d’accès, de
+        modifications, de rectification et de suppression des données vous
+        concernant. Pour toute demande, adressez-vous à : OPENTALENT, 265 rue de
+        la Grange 74950 SCIONZIER - FRANCE, opentalent.fr s’engage à la
+        confidentialité et à la protection de vos données.”
       </div>
       </div>
     </v-form>
     </v-form>
 
 

+ 1 - 1
components/Contact/Map.client.vue

@@ -71,7 +71,7 @@ import 'leaflet/dist/leaflet.css'
 import { LMap, LTileLayer, LMarker } from '@vue-leaflet/vue-leaflet'
 import { LMap, LTileLayer, LMarker } from '@vue-leaflet/vue-leaflet'
 import L from 'leaflet'
 import L from 'leaflet'
 
 
-const location = [46.055, 6.55];
+const location = [46.055, 6.55]
 
 
 // eslint-disable-next-line import/no-named-as-default-member
 // eslint-disable-next-line import/no-named-as-default-member
 const icon = L.icon({
 const icon = L.icon({

+ 6 - 1
components/Home/Promotion.vue

@@ -66,7 +66,10 @@
           aria-description="Vidéo corporate Opentalent : découvrez l’histoire de l’entreprise, son agenda et ses logiciels culturels"
           aria-description="Vidéo corporate Opentalent : découvrez l’histoire de l’entreprise, son agenda et ses logiciels culturels"
         >
         >
           <source
           <source
-            src="/storage/Video_Corporate_Opentalent-Agenda_et_logiciels_culturels.mp4"
+            :src="
+              runtimeConfig.public.fileStorageBaseUrl +
+              '/Video_Corporate_Opentalent-Agenda_et_logiciels_culturels.mp4'
+            "
             type="video/mp4"
             type="video/mp4"
           />
           />
         </video>
         </video>
@@ -140,6 +143,8 @@
 </template>
 </template>
 
 
 <script setup lang="ts">
 <script setup lang="ts">
+const runtimeConfig = useRuntimeConfig()
+
 const playVideo: Ref<boolean> = ref(false)
 const playVideo: Ref<boolean> = ref(false)
 </script>
 </script>
 
 

+ 1 - 1
components/Home/Reviews.client.vue

@@ -290,7 +290,7 @@ const items: Ref<Array<{ src: string; alt: string }>> = ref([
   }
   }
 }
 }
 
 
-.v-card{
+.v-card {
   height: 100%;
   height: 100%;
 }
 }
 
 

+ 1 - 1
components/Logiciels/Title.vue

@@ -41,7 +41,7 @@ h1 {
   line-height: 77px;
   line-height: 77px;
   color: var(--on-neutral-color);
   color: var(--on-neutral-color);
   text-align: center;
   text-align: center;
-  white-space: nowrap; 
+  white-space: nowrap;
 
 
   @media (max-width: 600px) {
   @media (max-width: 600px) {
     font-size: 42px;
     font-size: 42px;

+ 2 - 2
components/News/List.client.vue

@@ -31,8 +31,8 @@
               <v-col cols="12" lg="9">
               <v-col cols="12" lg="9">
                 <div class="details">
                 <div class="details">
                   <NuxtLink
                   <NuxtLink
-                  :to="`/actualites/${newsItem.id}-${newsItem.slug}`"                    
-                  class="text-decoration-none"
+                    :to="`/actualites/${newsItem.id}-${newsItem.slug}`"
+                    class="text-decoration-none"
                   >
                   >
                     <v-card-title>
                     <v-card-title>
                       {{ newsItem.title }}
                       {{ newsItem.title }}

+ 1 - 1
components/Webinaire/Catalogue.vue

@@ -208,7 +208,7 @@ const courses: Array<Training> = [
       "Ces webinaires sont spécialement conçus pour les utilisateurs du logiciel fédéral de la Confédération Musicale de France. Gagnez en temps administratif, boostez vos performances et optimisez l'utilisation du logiciel.",
       "Ces webinaires sont spécialement conçus pour les utilisateurs du logiciel fédéral de la Confédération Musicale de France. Gagnez en temps administratif, boostez vos performances et optimisez l'utilisation du logiciel.",
     objectives: [
     objectives: [
       "Paramétrer et gérer le suivi l'appel à cotisation (suivi, relance, facture, saisie des règlements)",
       "Paramétrer et gérer le suivi l'appel à cotisation (suivi, relance, facture, saisie des règlements)",
-      "Transmission des sommes à votre fédération parente",
+      'Transmission des sommes à votre fédération parente',
       'Gérer les membres du CA et les structures adhérentes (entrées, sorties, coordonnées, mots de passe ...)',
       'Gérer les membres du CA et les structures adhérentes (entrées, sorties, coordonnées, mots de passe ...)',
       'Communiquer avec son réseau',
       'Communiquer avec son réseau',
     ],
     ],