1
0
Fork 0
mirror of https://github.com/betagouv/mon-entreprise synced 2025-02-09 02:55:01 +00:00
mon-entreprise/source/components/LegalNotice.js
Johan Girod 29b6536eb3
🐛 Répare les liens dans les modales (overlay)
Les événements de clique à l'intérieur de la modale étaient stoppés et annulé (via preventDefault et stopPropagation). Cela, afin d'éviter de déclencher le onClose de la div parente.

Avec l'ajout du composant FocusTrap, on a plus besoin d'un tel mécanisme (qui a de grosse limites). J'ai donc supprimé les onClick sur les divs concernées

Fix #548
2019-05-23 12:18:46 +02:00

90 lines
2.1 KiB
JavaScript

import Overlay from 'Components/Overlay'
import { ScrollToTop } from 'Components/utils/Scroll'
import React, { Component } from 'react'
import { Trans, withTranslation } from 'react-i18next'
export const LegalNoticeContent = withTranslation()(() => (
<>
<h1>
<Trans i18nKey="legalNotice.title">Mentions légales</Trans>
</h1>
<h2>
<Trans i18nKey="legalNotice.editeur.title">Editeur</Trans>
</h2>
<p>
<Trans i18nKey="legalNotice.editeur.content">
Incubateur des services numériques,
<br />
Direction interministérielle du numérique et du système d'information et
de communication de l'Etat (DINSIC),
<br />
Services du Premier ministre.
</Trans>
</p>
<h2>
<Trans i18nKey="legalNotice.publication.title">
Directeur de la publication
</Trans>
</h2>
<p>
<Trans i18nKey="legalNotice.publication.content">
M. Yann-Gaël Amghar, Directeur de l'Acoss
</Trans>
</p>
<h2>
<Trans i18nKey="legalNotice.hosting.title">
Prestataire d'hébergement
</Trans>
</h2>
<p>
<Trans i18nKey="legalNotice.hosting.content">
Netlify
<br />
610 22nd Street, Suite 315,
<br />
San Francisco, CA 94107 <br />
Site web :&nbsp;
<a href="https://www.netlify.com" target="_blank">
https://www.netlify.com
</a>
</Trans>
</p>
<h2>
<Trans i18nKey="legalNotice.contact.title">Contact</Trans>
</h2>
<p>
<Trans i18nKey="legalNotice.contact.content">
<a target="_blank" href="mailto:contact@mon-entreprise.beta.gouv.fr">
contact@mon-entreprise.beta.gouv.fr
</a>
</Trans>
</p>
</>
))
export default class LegalNotice extends Component {
state = {
opened: false
}
handleClose = () => {
this.setState({ opened: false })
}
handleOpen = () => {
this.setState({ opened: true })
}
render() {
return (
<>
<button onClick={this.handleOpen} className="ui__ link-button">
<Trans i18nKey="legalNotice.title">Mentions légales</Trans>
</button>
{this.state.opened && (
<Overlay onClose={this.handleClose} style={{ textAlign: 'left' }}>
<ScrollToTop />
<LegalNoticeContent />
</Overlay>
)}
</>
)
}
}