Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 12793 | Rev 12800 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
12793 stevensc 1
import React, { useEffect } from 'react'
12709 stevensc 2
import { Button, Modal } from 'react-bootstrap'
3
import { useForm } from 'react-hook-form'
4
import DescriptionInput from '../../../shared/DescriptionInput'
5
 
6
const SectionModal = ({ show, closeModal, section, onSubmit }) => {
7
 
12793 stevensc 8
	const { handleSubmit, errors, register, setValue } = useForm()
12797 stevensc 9
	const uuid = Math.random() * (9999999999999 - 1000000000000) + 1
12709 stevensc 10
 
12793 stevensc 11
	useEffect(() => {
12
		setValue('name', section.name)
13
	}, [section])
14
 
12738 stevensc 15
	const submit = (data) => {
12797 stevensc 16
		onSubmit({
17
			...section,
18
			name: data.name,
19
			text: data.text,
20
			slug_section: `section${parseInt(uuid)}`
21
		})
12749 stevensc 22
		closeModal()
12738 stevensc 23
	}
24
 
12709 stevensc 25
	return (
26
		<Modal size="md" onHide={closeModal} show={show}>
27
			<Modal.Header closeButton>
28
				<Modal.Title>Nuevo candidato</Modal.Title>
29
			</Modal.Header>
12738 stevensc 30
			<form onSubmit={handleSubmit(submit)}>
12709 stevensc 31
				<Modal.Body>
32
					<div className='form-group'>
33
						<label className="form-label">Nombre</label>
34
						<input type="text" name='name' className='form-control' ref={register({ required: true })} />
35
						{errors.name && <p>{errors.name.message}</p>}
36
					</div>
37
					<div className='form-group'>
38
						<label className="form-label">Texto</label>
12791 stevensc 39
						<DescriptionInput
12793 stevensc 40
							defaultValue={section.text}
12709 stevensc 41
							name='text'
42
							onChange={setValue}
12791 stevensc 43
						/>
12709 stevensc 44
					</div>
45
				</Modal.Body>
46
				<Modal.Footer>
47
					<Button
48
						variant="primary"
49
						type='submit'
50
					>
12791 stevensc 51
						Enviar
12709 stevensc 52
					</Button>
53
					<Button variant="danger" onClick={closeModal}>
12791 stevensc 54
						Cancelar
12709 stevensc 55
					</Button>
56
				</Modal.Footer>
57
			</form>
58
		</Modal >
59
	)
60
}
61
 
62
export default SectionModal