mirror of
https://github.com/arthur-pbty/contact.git
synced 2026-06-03 15:07:21 +02:00
feat: ajouter des sections de contact sur plusieurs pages et mettre à jour les informations de contact
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
Copyright (c) 2026 Arthur
|
||||
|
||||
Licence pour tous les projets Arthur
|
||||
|
||||
1. Définition
|
||||
Cette licence définit les droits et obligations concernant l'utilisation, la modification et la redistribution du code fourni par l'auteur.
|
||||
|
||||
2. Autorisation d'utilisation
|
||||
Vous êtes libre d'utiliser ce code pour vos projets personnels ou commerciaux. L'utilisation doit inclure une mention de l'auteur d’une manière libre (ex: "inspiré de ArthurP").
|
||||
|
||||
3. Modification
|
||||
Vous pouvez modifier, adapter ou améliorer le code pour vos besoins. Les modifications doivent être identifiées comme telles et ne doivent pas être présentées comme l'original.
|
||||
|
||||
4. Redistribution
|
||||
- Le code original **ne peut pas être redistribué tel quel**.
|
||||
- Les versions modifiées peuvent être partagées, sous réserve de mentionner l'auteur original.
|
||||
|
||||
5. Usage commercial
|
||||
L’usage commercial des versions modifiées est autorisé. Vous pouvez générer des revenus avec votre version modifiée.
|
||||
|
||||
6. Attribution
|
||||
L'auteur original doit être cité d’une manière libre, mais visible, sur tout projet utilisant ce code ou ses dérivés.
|
||||
|
||||
7. Responsabilité
|
||||
Le code est fourni "tel quel", sans garantie d’aucune sorte. L’auteur décline toute responsabilité pour tout dommage direct ou indirect résultant de l’utilisation du code.
|
||||
@@ -14,6 +14,10 @@ export default function CguPage() {
|
||||
<h2 className="text-lg font-semibold text-slate-900 dark:text-white">Responsabilite</h2>
|
||||
<p>ArthurP ne peut etre tenu responsable des dommages indirects lies a l'usage des services.</p>
|
||||
</section>
|
||||
<section className="space-y-2">
|
||||
<h2 className="text-lg font-semibold text-slate-900 dark:text-white">Contact</h2>
|
||||
<p>Pour toute demande relative aux CGU: contact.arthurp.fr ou contact@arthurp.fr.</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
}
|
||||
|
||||
+67
-50
@@ -351,13 +351,13 @@ export default function ContactPageClient() {
|
||||
|
||||
<a
|
||||
className="group rounded-2xl border border-slate-200 bg-white p-4 transition hover:border-cyan-300 hover:shadow-md dark:border-slate-800 dark:bg-slate-950/50"
|
||||
href="https://discord.gg/NbMWHh54bp"
|
||||
href="https://contact.arthurp.fr"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<MessageCircle className="mb-2 h-5 w-5 text-slate-700 group-hover:text-cyan-600 dark:text-slate-200 dark:group-hover:text-cyan-300" />
|
||||
<p className="font-medium text-slate-900 dark:text-white">Discord</p>
|
||||
<p className="text-slate-600 dark:text-slate-400">Discussion rapide</p>
|
||||
<p className="font-medium text-slate-900 dark:text-white">contact.arthurp.fr</p>
|
||||
<p className="text-slate-600 dark:text-slate-400">Canal de contact principal</p>
|
||||
</a>
|
||||
</div>
|
||||
</section>
|
||||
@@ -380,28 +380,76 @@ export default function ContactPageClient() {
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<footer className="animate-fade-in w-full border-y border-slate-200 bg-white/90 text-sm text-slate-700 shadow-lg shadow-slate-900/5 dark:border-slate-800 dark:bg-slate-900/70 dark:text-slate-300">
|
||||
<div className="mx-auto w-full max-w-6xl p-6 sm:p-8">
|
||||
<div className="grid gap-6 sm:grid-cols-2">
|
||||
<div>
|
||||
<p className="text-lg font-semibold text-slate-900 dark:text-white">ArthurP</p>
|
||||
<p>Developpeur web & homelab</p>
|
||||
<p className="mt-3 text-xs text-slate-500 dark:text-slate-400">
|
||||
Fait avec ❤️ et auto-heberge sur Proxmox
|
||||
</p>
|
||||
<footer className="animate-fade-in w-full border-y border-slate-200 bg-linear-to-b from-white/95 to-slate-50 text-sm text-slate-700 shadow-lg shadow-slate-900/5 dark:border-slate-800 dark:from-slate-900/80 dark:to-slate-950 dark:text-slate-300">
|
||||
<div className="mx-auto w-full max-w-6xl px-6 py-10 sm:px-8 sm:py-12">
|
||||
<div className="rounded-3xl border border-slate-200 bg-white/80 p-5 shadow-sm dark:border-slate-800 dark:bg-slate-900/70 sm:p-6">
|
||||
<p className="text-base font-semibold text-slate-900 dark:text-white">ArthurP</p>
|
||||
<p className="mt-1 text-slate-600 dark:text-slate-400">Contact rapide et support projets via le hub de contact.</p>
|
||||
<div className="mt-4 flex flex-wrap gap-3">
|
||||
<a
|
||||
className="inline-flex items-center rounded-xl border border-slate-200 bg-white px-3 py-2 text-xs font-medium text-slate-700 transition hover:border-cyan-300 hover:text-cyan-700 dark:border-slate-700 dark:bg-slate-950/50 dark:text-slate-200 dark:hover:border-cyan-500 dark:hover:text-cyan-300"
|
||||
href="https://contact.arthurp.fr"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
contact.arthurp.fr
|
||||
</a>
|
||||
<a
|
||||
className="inline-flex items-center rounded-xl border border-slate-200 bg-white px-3 py-2 text-xs font-medium text-slate-700 transition hover:border-cyan-300 hover:text-cyan-700 dark:border-slate-700 dark:bg-slate-950/50 dark:text-slate-200 dark:hover:border-cyan-500 dark:hover:text-cyan-300"
|
||||
href="mailto:contact@arthurp.fr"
|
||||
>
|
||||
contact@arthurp.fr
|
||||
</a>
|
||||
</div>
|
||||
<div className="grid gap-10 sm:grid-cols-[minmax(180px,0.75fr)_minmax(0,1.25fr)]">
|
||||
</div>
|
||||
|
||||
<div className="mt-8 grid gap-8 md:grid-cols-[minmax(0,0.8fr)_minmax(0,1fr)_minmax(0,1fr)]">
|
||||
<div>
|
||||
<p className="mb-2 font-semibold text-slate-900 dark:text-white">Navigation</p>
|
||||
<ul className="space-y-1">
|
||||
<p className="text-lg font-semibold text-slate-900 dark:text-white">Navigation</p>
|
||||
<ul className="mt-3 space-y-2">
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="https://arthurp.fr" target="_blank" rel="noopener noreferrer">Accueil</a></li>
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="https://portfolio.arthurp.fr" target="_blank" rel="noopener noreferrer">Projets</a></li>
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="mailto:contact@arthurp.fr">Contact</a></li>
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="https://contact.arthurp.fr" target="_blank" rel="noopener noreferrer">Contact</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p className="mb-2 font-semibold text-slate-900 dark:text-white">Sites</p>
|
||||
<ul className="grid grid-cols-1 gap-x-8 gap-y-2 sm:grid-cols-2">
|
||||
<p className="text-lg font-semibold text-slate-900 dark:text-white">Liens</p>
|
||||
<ul className="mt-3 space-y-2">
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="https://arthurp.fr" target="_blank" rel="noopener noreferrer">arthurp.fr</a></li>
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="https://github.com/arthur-pbty" target="_blank" rel="noopener noreferrer">GitHub</a></li>
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="mailto:contact@arthurp.fr">contact@arthurp.fr</a></li>
|
||||
<li><a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="https://contact.arthurp.fr" target="_blank" rel="noopener noreferrer">contact.arthurp.fr</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p className="text-lg font-semibold text-slate-900 dark:text-white">Legal</p>
|
||||
<ul className="mt-3 space-y-2">
|
||||
<li><Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/mentions-legales">Mentions legales</Link></li>
|
||||
<li><Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/politique-confidentialite">Politique de confidentialite</Link></li>
|
||||
<li><Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/cgu">CGU</Link></li>
|
||||
<li><Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/cookies">Cookies</Link></li>
|
||||
<li><Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/admin">Admin</Link></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="mt-8 border-t border-slate-200 pt-5 text-xs text-slate-500 dark:border-slate-800 dark:text-slate-400">
|
||||
<p>© 2026 Arthur P. Tous droits reserves.</p>
|
||||
<p className="mt-1">Fait avec ❤️ et auto-heberge sur Proxmox.</p>
|
||||
</div>
|
||||
|
||||
<div className="mt-6 flex flex-wrap gap-2 text-xs text-slate-500 dark:text-slate-400">
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Docker</span>
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Proxmox</span>
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Next.js</span>
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Node.js</span>
|
||||
</div>
|
||||
|
||||
<details className="mt-6 rounded-2xl border border-slate-200 bg-white/80 p-4 dark:border-slate-800 dark:bg-slate-900/60">
|
||||
<summary className="cursor-pointer text-sm font-medium text-slate-900 dark:text-white">Afficher les autres sites ArthurP</summary>
|
||||
<ul className="mt-4 grid grid-cols-1 gap-x-8 gap-y-2 sm:grid-cols-2">
|
||||
{footerSites.map((site) => (
|
||||
<li key={site.domain}>
|
||||
<a
|
||||
@@ -415,38 +463,7 @@ export default function ContactPageClient() {
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="mt-6 flex flex-wrap gap-2 text-xs text-slate-500 dark:text-slate-400">
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Docker</span>
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Proxmox</span>
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Next.js</span>
|
||||
<span className="rounded-full border border-slate-200 px-2 py-1 dark:border-slate-700">Node.js</span>
|
||||
</div>
|
||||
<div className="mt-4 flex flex-wrap items-center gap-4 text-xs">
|
||||
<a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="https://github.com/arthur-pbty" target="_blank" rel="noopener noreferrer">
|
||||
GitHub
|
||||
</a>
|
||||
<a className="hover:text-cyan-600 dark:hover:text-cyan-300" href="mailto:contact@arthurp.fr">
|
||||
Email
|
||||
</a>
|
||||
<Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/mentions-legales">
|
||||
Mentions legales
|
||||
</Link>
|
||||
<Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/politique-confidentialite">
|
||||
Confidentialite
|
||||
</Link>
|
||||
<Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/cgu">
|
||||
CGU
|
||||
</Link>
|
||||
<Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/cookies">
|
||||
Cookies
|
||||
</Link>
|
||||
<Link className="hover:text-cyan-600 dark:hover:text-cyan-300" href="/admin">
|
||||
Admin
|
||||
</Link>
|
||||
</div>
|
||||
</details>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
@@ -10,6 +10,10 @@ export default function CookiesPage() {
|
||||
<h2 className="text-lg font-semibold text-slate-900 dark:text-white">Session admin</h2>
|
||||
<p>Le cookie admin est HttpOnly, SameSite=Lax et expire automatiquement.</p>
|
||||
</section>
|
||||
<section className="space-y-2">
|
||||
<h2 className="text-lg font-semibold text-slate-900 dark:text-white">Contact</h2>
|
||||
<p>Pour toute question sur les cookies: contact.arthurp.fr ou contact@arthurp.fr.</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ export default function MentionsLegalesPage() {
|
||||
<section className="space-y-2">
|
||||
<h2 className="text-lg font-semibold text-slate-900 dark:text-white">Editeur</h2>
|
||||
<p>ArthurP - Developpeur web & homelab</p>
|
||||
<p>Site de contact: contact.arthurp.fr</p>
|
||||
<p>Email: contact@arthurp.fr</p>
|
||||
</section>
|
||||
<section className="space-y-2">
|
||||
@@ -17,7 +18,7 @@ export default function MentionsLegalesPage() {
|
||||
</section>
|
||||
<section className="space-y-2">
|
||||
<h2 className="text-lg font-semibold text-slate-900 dark:text-white">Contact</h2>
|
||||
<p>Pour toute question legale: contact@arthurp.fr</p>
|
||||
<p>Pour toute question legale: contact.arthurp.fr ou contact@arthurp.fr</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
|
||||
@@ -19,7 +19,7 @@ export default function PolitiqueConfidentialitePage() {
|
||||
</section>
|
||||
<section className="space-y-2">
|
||||
<h2 className="text-lg font-semibold text-slate-900 dark:text-white">Droits</h2>
|
||||
<p>Vous pouvez demander acces, rectification ou suppression via contact@arthurp.fr.</p>
|
||||
<p>Vous pouvez demander acces, rectification ou suppression via contact.arthurp.fr ou contact@arthurp.fr.</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user