Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 6461 | Rev 14843 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 6461 Rev 11152
Línea 1... Línea 1...
1
import axios from 'axios'
1
import axios from 'axios'
2
import React, { useEffect, useState } from 'react'
2
import React, { useEffect, useState } from 'react'
3
import { Modal, Button } from 'react-bootstrap'
3
import { Modal, Button } from 'react-bootstrap'
4
import { getData } from '../../../helpers/fetchHelpers'
4
import { getData } from '../../../helpers/fetchHelpers'
5
import Datetime from 'react-datetime'
5
import Datetime from 'react-datetime'
6
import "react-datetime/css/react-datetime.css";
6
import 'react-datetime/css/react-datetime.css'
Línea 7... Línea 7...
7
 
7
 
8
const FoundationsYearModal = ({
8
const FoundationsYearModal = ({
9
    isOpen,
9
	isOpen,
10
    closeModal,
10
	closeModal,
11
    foundationYearUrl,
11
	foundationYearUrl,
12
    action
12
	action
Línea 13... Línea 13...
13
}) => {
13
}) => {
14
 
14
 
Línea 15... Línea 15...
15
    const [year, setYear] = useState(0);
15
	const [year, setYear] = useState(0)
16
    const [error, setError] = useState(null);
16
	const [error, setError] = useState(null)
Línea 17... Línea 17...
17
 
17
 
18
    const onSubmit = (e) => {
18
	const onSubmit = (e) => {
Línea 19... Línea 19...
19
        e.preventDefault()
19
		e.preventDefault()
20
 
20
 
21
        const data = new FormData()
21
		const data = new FormData()
22
        data.append("foundation_year", year)
22
		data.append('foundation_year', year)
23
 
23
 
24
        axios.post(foundationYearUrl, data)
24
		axios.post(foundationYearUrl, data)
25
            .then(({ data }) => {
25
			.then(({ data }) => {
26
                if (!data.success) {
26
				if (!data.success) {
27
                    return setError(data.data)
27
					return setError(data.data)
28
                }
28
				}
29
                action(data.data)
29
				action(data.data)
30
            })
30
			})
31
            .then(() => {
31
			.then(() => {
32
                setError(null)
32
				setError(null)
33
                closeModal()
33
				closeModal()
34
            })
34
			})
35
            .catch((err) => console.log(err))
35
			.catch((err) => console.log(err))
36
    }
36
	}
37
 
37
 
38
    useEffect(() => {
38
	useEffect(() => {
39
        getData(foundationYearUrl)
39
		getData(foundationYearUrl)
40
            .then(({ foundation_year }) => setYear(parseInt(foundation_year)))
40
			.then(({ foundation_year }) => setYear(parseInt(foundation_year)))
41
            .catch(err => console.log(err))
41
			.catch(err => console.log(err))
42
    }, [isOpen]);
42
	}, [isOpen])
43
 
43
 
44
    return (
44
	return (
45
        <Modal
45
		<Modal
46
            size="md"
46
			size="md"
47
            show={isOpen}
47
			show={isOpen}
48
            onHide={closeModal}
48
			onHide={closeModal}
49
            autoFocus={false}
49
			autoFocus={false}
50
        >
50
		>
51
            <Modal.Header closeButton>
51
			<Modal.Header closeButton>
52
                <Modal.Title>Cambiar</Modal.Title>
52
				<Modal.Title>Cambiar</Modal.Title>
53
            </Modal.Header>
53
			</Modal.Header>
54
            <form onSubmit={(e) => onSubmit(e)}>
54
			<form onSubmit={(e) => onSubmit(e)}>
55
                <Modal.Body>
55
				<Modal.Body>
56
                    <div className="mb-3">
56
					<div className="mb-3">
57
                        <label className="form-label">Año de fundación</label>
57
						<label className="form-label">Año de fundación</label>
58
                        <Datetime
58
						<Datetime
59
                            dateFormat="YYYY"
59
							dateFormat="YYYY"
60
                            timeFormat={false}
60
							timeFormat={false}
61
                            onChange={(e) => setYear(e.year())}
61
							onChange={(e) => setYear(e.year())}
62
                            initialValue={new Date(`${year + 1}`).getFullYear().toString()}
62
							initialValue={new Date(`${year + 1}`).getFullYear().toString()}
63
                            inputProps={{ className: 'form-control' }}
63
							inputProps={{ className: 'form-control' }}
64
                            closeOnSelect
64
							closeOnSelect
65
                        />
65
						/>
66
                    </div>
66
					</div>
67
                    {error && <p>{error}</p>}
67
					{error && <p>{error}</p>}
68
                </Modal.Body>
68
				</Modal.Body>
69
                <Modal.Footer>
69
				<Modal.Footer>
70
                    <Button
70
					<Button
71
                        variant="primary"
71
						variant="primary"
72
                        type="submit"
72
						type="submit"
73
                    >
73
					>
74
                        Enviar
74
                        Enviar
75
                    </Button>
75
					</Button>
76
                    <Button
76
					<Button
77
                        variant="default"
77
						className='btn-tertiary'
78
                        onClick={closeModal}
78
						onClick={closeModal}
79
                    >
79
					>
80
                        Cancelar
80
                        Cancelar
81
                    </Button>
81
					</Button>
Línea 82... Línea 82...
82
                </Modal.Footer>
82
				</Modal.Footer>
83
            </form>
83
			</form>