64 lines
2.4 KiB
TypeScript
64 lines
2.4 KiB
TypeScript
import styles from "./Footer.module.css"
|
|
import { Link } from "react-router";
|
|
import { ReactNode, useState } from "react";
|
|
import Modal from "../ui/Modal/Modal";
|
|
import Button from "../ui/Button/Button";
|
|
import scrollToTop from "../../utils/scrollToTop.js";
|
|
|
|
export default function Footer(): ReactNode{
|
|
const currentYear = new Date().getFullYear();
|
|
const [isCopyrightModal, setIsCopyrightModal] = useState<boolean>(false);
|
|
|
|
|
|
return <>
|
|
<footer className={`${styles.footer} glassCard`}>
|
|
<div className={styles.footerContent}>
|
|
<Button
|
|
variant={"transparent"}
|
|
className={styles.link}
|
|
onClick={() => setIsCopyrightModal(true)}
|
|
>
|
|
Copyright © {currentYear}. Tous droits réservés.
|
|
</Button>
|
|
|
|
<div className={styles.copyright}>
|
|
|
|
</div>
|
|
|
|
<nav className={styles.footerNav}>
|
|
<Link to="/rgpd" className={styles.link} onClick={scrollToTop}>
|
|
Fiche RGPD
|
|
</Link>
|
|
<span className={styles.separator}></span>
|
|
<Link to="/legalNotices" className={styles.link} onClick={scrollToTop}>
|
|
Mentions légales
|
|
</Link>
|
|
<span className={styles.separator}></span>
|
|
<Link to={"https://comite.beaupont.fr/contactez-nous"} className={styles.link}>
|
|
Contact
|
|
</Link>
|
|
<span className={styles.separator}></span>
|
|
<Link to="/" className={styles.link} onClick={scrollToTop}>
|
|
Accueil
|
|
</Link>
|
|
</nav>
|
|
</div>
|
|
</footer>
|
|
|
|
<Modal title={"Réalisé par"} open={isCopyrightModal} onClose={() => setIsCopyrightModal(false)}>
|
|
<section className={styles.section}>
|
|
<div className={styles.inputContainer}>
|
|
<p>Quentin T'JAMPENS</p>
|
|
<p>Antoine ORDONNEAU</p>
|
|
<p>Malo LEBLOND</p>
|
|
<p>
|
|
Giovanni JOSSERAND (
|
|
<Link to={"https://linktree.josserand.ovh/"}>linktree</Link>
|
|
)
|
|
</p>
|
|
</div>
|
|
</section>
|
|
</Modal>
|
|
</>
|
|
}
|