<template>
  <div id="Temoignages">
    <LayoutContainer>
      <div class="container-green">
        <v-row>
          <v-col cols="3">
            <div style="display: flex; flex-direction: column; justify-content: space-between; height: 100%;">
              <h3 class="reviews-title">Ce sont eux qui en parlent le mieux</h3>
              <div class="d-flex justify-center align-center">
                <div class="carousel-button" @click="goPrevious">
                  <i class="fas fa-chevron-left" />
                </div>
                <div class="carousel-button" @click="goNext">
                  <i class="fas fa-chevron-right" />
                </div>
              </div>
            </div>
          </v-col>

          <v-col cols="9">
            <Carousel ref="carousel" :items-to-show="3" :items-to-scroll="1">
              <Slide v-for="(card, index) in cards" :key="index" class="card">
                <v-card>
                  <v-card-item class="card-container">
                    <v-card-text class="review-description">
                      {{ card.description }}
                    </v-card-text>

                    <div class="card-footer">
                      <v-card-actions class="reviewer-name">
                        {{ card.name }}
                      </v-card-actions>

                      <p class="reviewer-status">
                        {{ card.status }}
                      </p>
                      <p class="reviewer-structure">
                        {{ card.structure }}
                      </p>
                    </div>
                  </v-card-item>
                </v-card>
              </Slide>
            </Carousel>
          </v-col>
        </v-row>
      </div>
    </LayoutContainer>
  </div>
</template>

<script setup>
import { ref } from "vue";
import { Carousel, Slide } from "vue3-carousel";
import "vue3-carousel/dist/carousel.css";

const carousel = ref(null);

const goPrevious = () => {
  carousel.value.prev();
};

const goNext = () => {
  carousel.value.next();
};

const cards = [
  {
    description:
      "L'outil répond à toutes les demandes d'une structure de notre taille et la connexion avec le site internet est très pratique.",
    name: "Patrice MONTESSUIT",
    status: "Directeur musical ",
    structure: "Orchestre d'Harmonie de Cluses (74)",
  },
  {
    description:
      "Lorem ipsum dolor sit amet consectetur adipisicing elit.Provident porro fuga incidunt quae, doloremque tenetur aliquam  exercitationem deleniti aspernatur illo rem deserunt sapiente empore dolorem ipsa aliquid vel nihil eius.",
    name: "Laurent Lebon",
    status: "Chef d'orchestre",
    structure: "Conservatoire de Lyon",
  },
  {
    description:
      "C'est un outil de travail très intéressant, complet et intuitif quand on comprend certaines subtilités. Il a très bien évolué aussi bien pour les chorales que les harmonie. Mes remarques ont toujours été prises en compte.",
    name: "Gérard LEFÈBVRE ",
    status: "Président",
    structure: "Le choeur du Brevon (74)",
  },
  {
    description:
      "Lorem ipsum dolor sit amet consectetur adipisicing elit.Provident porro fuga incidunt quae, doloremque tenetur aliquam  exercitationem deleniti aspernatur illo rem deserunt sapiente empore dolorem ipsa aliquid vel nihil eius.",
    name: "Laurent Lebon",
    status: "Chef d'orchestre",
    structure: "Conservatoire de Lyon",
  },
  {
    description:
      "Lorem ipsum dolor sit amet consectetur adipisicing elit.Provident porro fuga incidunt quae, doloremque tenetur aliquam  exercitationem deleniti aspernatur illo rem deserunt sapiente empore dolorem ipsa aliquid vel nihil eius.",
    name: "Laurent Lebon",
    status: "Chef d'orchestre",
    structure: "Conservatoire de Lyon",
  },
];
</script>

<style scoped>
.carousel-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  background-color: transparent;
  border: 2px solid #fff;
  cursor: pointer;
  margin-right: 1rem;
  margin-bottom: 2rem;
}

.carousel-button i {
  color: #fff;
}
.reviewer-name {
  font-weight: 500;
  font-size: 20px;
  line-height: 24px;
  color: #f7d241;
  margin-top: 5rem;
}

.reviewer-status {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  display: flex;
  align-items: center;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.reviewer-structure {
  font-weight: 300;
  font-size: 0.8rem;
  line-height: 14px;
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  color: #071b1f;
}

.review-description {
  text-align: left;
  max-height: 200px;
  overflow: auto;
  font-size: 0.9rem;
}

.card-footer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 1rem;
}

.reviews-title {
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  font-weight: 600;
  font-size: 42px;
  line-height: 42px;
  margin-left: 1rem;
  margin-right: 1rem;
  margin-top: 3rem;
  text-align: center;
}

.card {
  margin-left: 0.5rem;
  border-radius: 1rem;
}

.v-card {
  border-radius: 1rem;
  min-height: 25rem;
  max-height: 25rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.card-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.container-green {
  background-color: #0e2d32;
}
</style>
