Ajouter des textes et fichier pdf pour le règlement du jeu

This commit is contained in:
Alexis SANOGO
2026-08-27 16:28:38 +02:00
parent b1272bd008
commit 4f0b6d22f2
5 changed files with 98 additions and 43 deletions

View File

@@ -7,6 +7,8 @@ Allow: /regles-jeu
Allow: /contact Allow: /contact
Allow: /mentions-legales Allow: /mentions-legales
Allow: /confidentialite Allow: /confidentialite
Allow: /accessibilite
Allow: /cgu
Allow: /sitemap Allow: /sitemap
Allow: /inscription Allow: /inscription
Allow: /connexion Allow: /connexion

View File

@@ -201,7 +201,13 @@ export default function Footer() {
Jeu avec obligation d'achat. Participation réservée aux personnes majeures résidant en Jeu avec obligation d'achat. Participation réservée aux personnes majeures résidant en
France métropolitaine, sur présentation d'un ticket de caisse supérieur à 49 € émis France métropolitaine, sur présentation d'un ticket de caisse supérieur à 49 € émis
dans la boutique Thé Tip Top de Nice. Le nombre de participations n'augmente pas les dans la boutique Thé Tip Top de Nice. Le nombre de participations n'augmente pas les
chances de remporter le gros lot. chances de remporter le gros lot.{' '}
<a
href="/reglement-jeu-concours-100-gagnant.pdf"
className="underline hover:text-white"
>
Télécharger le règlement (PDF)
</a>
</p> </p>
</div> </div>
<div className="max-w-7xl mx-auto px-6 py-5 flex flex-col md:flex-row justify-between items-center gap-3"> <div className="max-w-7xl mx-auto px-6 py-5 flex flex-col md:flex-row justify-between items-center gap-3">

View File

@@ -1,19 +1,80 @@
import { Link } from 'react-router-dom' import { Link } from 'react-router-dom'
import bannerImg from '../assets/img/banner-the-tip-top.webp'
const faqs = [
{
question: 'Comment obtenir un code ?',
answer: "Achetez un produit Thé Tip Top d'une valeur supérieure à 49 € dans notre boutique de Nice : un code unique à 10 caractères figure sur votre ticket de caisse ou votre facture.",
},
{
question: 'Quels sont les lots à gagner ?',
answer: (
<>
Tous les tickets sont gagnants ! Selon votre ticket, vous pouvez remporter :
<ul className="list-disc list-inside space-y-1 mt-2">
<li>Un infuseur à thé</li>
<li>Une boîte de 100 g de thé détox ou d'infusion</li>
<li>Une boîte de 100 g de thé signature</li>
<li>Un coffret découverte d'une valeur de 39 €</li>
<li>Un coffret découverte d'une valeur de 69 €</li>
</ul>
Un tirage au sort désigne en plus un grand gagnant qui remporte une année de thé d'une valeur de 360 €.
</>
),
plainAnswer: "Tous les tickets sont gagnants ! Selon votre ticket, vous pouvez remporter : un infuseur à thé, une boîte de 100 g de thé détox ou d'infusion, une boîte de 100 g de thé signature, un coffret découverte d'une valeur de 39 €, ou un coffret découverte d'une valeur de 69 €. Un tirage au sort désigne en plus un grand gagnant qui remporte une année de thé d'une valeur de 360 €.",
},
{
question: 'Jusqu\'à quand puis-je jouer ?',
answer: 'La participation est possible pendant toute la durée du jeu-concours, soit 30 jours à compter de son ouverture. Consultez la page Règles du jeu pour le détail des dates.',
},
{
question: 'Que faire si mon code n\'est pas reconnu ?',
answer: "Vérifiez que le code a été saisi sans espace ni erreur. Si le problème persiste, contactez-nous depuis la page Contact.",
},
{
question: 'Où retirer mon lot ?',
answer: 'Dans notre boutique de Nice, sur présentation de votre compte utilisateur validé et de la confirmation de gain affichée dans votre espace « Mes gains ».',
},
]
const faqJsonLd = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: faqs.map((faq) => ({
'@type': 'Question',
name: faq.question,
acceptedAnswer: {
'@type': 'Answer',
text: faq.plainAnswer || faq.answer,
},
})),
}
export default function Accueil() { export default function Accueil() {
return ( return (
<div className="bg-gray-50 min-h-screen"> <div className="bg-gray-50 min-h-screen">
<script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify(faqJsonLd) }} />
{/* Bannière */}
<section className="w-full h-48 sm:h-64 md:h-80 lg:h-96 overflow-hidden">
<img
src={bannerImg}
alt="Jeu-concours 100 % Gagnant Thé Tip Top, du 2 au 31 octobre 2026 : tentez de gagner un an de thé d'une valeur de 360 € pour l'ouverture de notre 10e boutique à Nice."
width={2048}
height={1152}
className="w-full h-full object-cover object-center"
/>
</section>
{/* Hero */} {/* Hero */}
<section className="max-w-7xl mx-auto px-4 sm:px-6 py-12 sm:py-16 md:py-24"> <section className="max-w-7xl mx-auto px-4 sm:px-6 py-12 sm:py-16 md:py-24">
<div className="text-center max-w-3xl mx-auto"> <div className="text-center max-w-3xl mx-auto">
<h1 className="text-3xl sm:text-4xl md:text-5xl lg:text-6xl font-bold text-[#006B6B] mb-4 sm:mb-6 leading-tight"> <h1 className="text-3xl sm:text-4xl md:text-5xl lg:text-6xl font-bold text-[#006B6B] mb-4 sm:mb-6 leading-tight">
Bienvenue au jeu-concours Thé Tip Top Bienvenue au jeu-concours Thé Tip Top Nice
</h1> </h1>
<p className="text-base sm:text-lg md:text-xl text-gray-600 mb-8 sm:mb-10"> <p className="text-base sm:text-lg md:text-xl text-gray-600 mb-8 sm:mb-10">
À l'occasion de l'ouverture de notre 10ᵉ boutique à Nice, participez à notre jeu-concours Exclusivement réservé à la boutique Thé Tip Top de Nice. Créez votre compte, saisissez le code de votre ticket et découvrez immédiatement votre lot.
et tentez de gagner des lots exceptionnels ! Tous les tickets sont gagnants, alors n'attendez
plus pour découvrir votre lot.
</p> </p>
<div className="flex flex-col sm:flex-row justify-center gap-3 sm:gap-4"> <div className="flex flex-col sm:flex-row justify-center gap-3 sm:gap-4">
<Link <Link
@@ -37,19 +98,19 @@ export default function Accueil() {
<h2 className="text-2xl sm:text-3xl font-bold text-[#006B6B] mb-6 sm:mb-8 text-center"> <h2 className="text-2xl sm:text-3xl font-bold text-[#006B6B] mb-6 sm:mb-8 text-center">
Comment participer ? Comment participer ?
</h2> </h2>
<div className="grid grid-cols-2 md:grid-cols-4 gap-4"> <ol className="grid grid-cols-2 md:grid-cols-4 gap-4 list-none">
{[ {[
{ num: '1', text: 'Achat de 49 € minimum' }, { num: '1', text: 'Achat de 49 € minimum' },
{ num: '2', text: 'Recevez votre code unique' }, { num: '2', text: 'Recevez votre code unique' },
{ num: '3', text: 'Saisissez le code sur le site' }, { num: '3', text: 'Saisissez le code sur le site' },
{ num: '4', text: 'Découvrez votre lot' }, { num: '4', text: 'Découvrez votre lot' },
].map((step) => ( ].map((step) => (
<div key={step.num} className="bg-white rounded-2xl shadow p-4 sm:p-6 text-center"> <li key={step.num} className="bg-white rounded-2xl shadow p-4 sm:p-6 text-center">
<div className="text-2xl sm:text-3xl font-bold text-[#006B6B] mb-2 sm:mb-3">{step.num}</div> <div className="text-2xl sm:text-3xl font-bold text-[#006B6B] mb-2 sm:mb-3">{step.num}</div>
<p className="text-sm sm:text-base text-gray-700">{step.text}</p> <p className="text-sm sm:text-base text-gray-700">{step.text}</p>
</div> </li>
))} ))}
</div> </ol>
</section> </section>
{/* Questions fréquentes */} {/* Questions fréquentes */}
@@ -58,40 +119,7 @@ export default function Accueil() {
Questions fréquentes Questions fréquentes
</h2> </h2>
<div className="space-y-3"> <div className="space-y-3">
{[ {faqs.map((faq) => (
{
question: 'Comment obtenir un code ?',
answer: "Achetez un produit Thé Tip Top d'une valeur supérieure à 49 € en boutique ou en ligne : un code unique à 10 caractères figure sur votre ticket de caisse ou votre facture.",
},
{
question: 'Quels sont les lots à gagner ?',
answer: (
<>
Tous les tickets sont gagnants ! Selon votre ticket, vous pouvez remporter :
<ul className="list-disc list-inside space-y-1 mt-2">
<li>Un infuseur à thé</li>
<li>Une boîte de 100 g de thé détox ou d'infusion</li>
<li>Une boîte de 100 g de thé signature</li>
<li>Un coffret découverte d'une valeur de 39 €</li>
<li>Un coffret découverte d'une valeur de 69 €</li>
</ul>
Un tirage au sort désigne en plus un grand gagnant qui remporte une année de thé d'une valeur de 360 €.
</>
),
},
{
question: 'Jusqu\'à quand puis-je jouer ?',
answer: 'La participation est possible pendant toute la durée du jeu-concours, soit 30 jours à compter de son ouverture. Consultez la page Règles du jeu pour le détail des dates.',
},
{
question: 'Que faire si mon code n\'est pas reconnu ?',
answer: "Vérifiez que le code a été saisi sans espace ni erreur. Si le problème persiste, contactez-nous depuis la page Contact.",
},
{
question: 'Où retirer mon lot ?',
answer: 'En boutique, sur présentation de votre compte utilisateur validé et de la confirmation de gain affichée dans votre espace « Mes gains ».',
},
].map((faq) => (
<details key={faq.question} className="group bg-white rounded-2xl shadow p-4 sm:p-6"> <details key={faq.question} className="group bg-white rounded-2xl shadow p-4 sm:p-6">
<summary className="flex items-center justify-between gap-3 cursor-pointer list-none font-semibold text-gray-800 text-sm sm:text-base"> <summary className="flex items-center justify-between gap-3 cursor-pointer list-none font-semibold text-gray-800 text-sm sm:text-base">
{faq.question} {faq.question}

View File

@@ -37,6 +37,16 @@ export default function Cgu() {
CGU. En cas de non-acceptation, l'utilisateur est invité à ne pas accéder au Site CGU. En cas de non-acceptation, l'utilisateur est invité à ne pas accéder au Site
ni à utiliser ses services. ni à utiliser ses services.
</p> </p>
<p>
Le règlement complet du jeu-concours, déposé auprès de Maître Arnaud Rick,
Commissaire de Justice, est{' '}
<a
href="/reglement-jeu-concours-100-gagnant.pdf"
className="text-[#006B6B] hover:underline font-medium"
>
téléchargeable au format PDF
</a>.
</p>
</div> </div>
), ),
}, },

View File

@@ -70,6 +70,15 @@ export default function ReglesJeu() {
Le participant tiré au sort remportera une année de thé d'une valeur de 360€ ! Le participant tiré au sort remportera une année de thé d'une valeur de 360€ !
</p> </p>
</div> </div>
<div className="text-center mt-6 sm:mt-8">
<a
href="/reglement-jeu-concours-100-gagnant.pdf"
className="inline-flex items-center justify-center gap-2 border border-[#006B6B] text-[#006B6B] hover:bg-[#006B6B] hover:text-white font-semibold px-6 py-3 rounded-xl transition-colors text-sm sm:text-base"
>
Télécharger le règlement (PDF)
</a>
</div>
</div> </div>
</section> </section>