Files
pawol.nu/components/cgu/cgu-dialog.js
T

76 lines
1.9 KiB
JavaScript
Raw Normal View History

2021-09-21 21:28:04 +02:00
import {useRef, useEffect} from 'react'
2021-06-14 23:28:37 +02:00
import PropTypes from 'prop-types'
import {Button, Dialog, DialogActions, DialogContent, DialogTitle, makeStyles, Typography} from '@material-ui/core'
import {useRouter} from 'next/router'
2021-09-21 21:28:04 +02:00
import Cgu from '.'
2021-06-14 23:28:37 +02:00
const CGU_DOWNLOAD_LINK = process.env.NEXT_PUBLIC_CGU_DOWNLOAD_LINK
const useStyles = makeStyles(() => ({
dialog: {
zIndex: 9999
}
}))
export default function CGUDialog({open, setOpen}) {
const classes = useStyles()
const router = useRouter()
const handleClose = () => {
setOpen(false)
}
2021-06-15 20:19:34 +02:00
const handleClick = event => {
2021-06-14 23:28:37 +02:00
event.preventDefault()
router.push(CGU_DOWNLOAD_LINK)
}
2021-09-21 21:28:04 +02:00
const descriptionElementRef = useRef(null)
useEffect(() => {
2021-06-14 23:28:37 +02:00
if (open) {
const {current: descriptionElement} = descriptionElementRef
if (descriptionElement !== null) {
descriptionElement.focus()
}
}
}, [open])
return (
<div>
<Dialog
open={open}
scroll='paper'
aria-labelledby='scroll-dialog-title'
aria-describedby='scroll-dialog-description'
className={classes.dialog}
onClose={handleClose}
>
<DialogTitle id='scroll-dialog-title'>CGU et politique de confidentialité</DialogTitle>
<DialogContent dividers>
<Typography
ref={descriptionElementRef}
variant='inherit'
id='scroll-dialog-description'
tabIndex={-1}
>
<Cgu />
</Typography>
</DialogContent>
<DialogActions>
2021-06-15 20:19:34 +02:00
<Button color='primary' onClick={handleClick}>
Voir au format pdf
2021-06-14 23:28:37 +02:00
</Button>
<Button color='primary' onClick={handleClose}>
Fermer
</Button>
</DialogActions>
</Dialog>
</div>
)
}
CGUDialog.propTypes = {
open: PropTypes.bool.isRequired,
setOpen: PropTypes.func.isRequired
}