Proyectos de Subversion LeadersLinked - SPA

Rev

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

Rev Autor Línea Nro. Línea
5 stevensc 1
import React from 'react'
2
import { Modal } from 'react-bootstrap'
3
import parse from 'html-react-parser'
4
import { axios } from '../../utils'
5
import { addNotification } from '../../redux/notification/notification.actions'
6
import { useDispatch } from 'react-redux'
7
 
8
const EventModal = ({ event, show, onClose }) => {
9
  const dispatch = useDispatch()
10
 
11
  const getBackendVarUrl = (url = '') => {
12
    if (!url) {
13
      return
14
    }
15
 
16
    axios
17
      .get(url)
18
      .then((response) => {
19
        const { data, success } = response.data
20
 
21
        if (!success) {
22
          dispatch(
23
            addNotification({
24
              style: 'danger',
655 stevensc 25
              msg: 'Error interno. Por favor, intente más tarde.'
5 stevensc 26
            })
27
          )
28
          return
29
        }
30
 
31
        window.open(data, '_blank')
32
      })
655 stevensc 33
      .catch((err) => {
34
        dispatch(addNotification({ style: 'danger', message: err.message }))
5 stevensc 35
      })
36
  }
37
 
38
  return (
39
    <Modal show={show} onHide={onClose}>
655 stevensc 40
      <Modal.Header className='pb-0' closeButton>
5 stevensc 41
        <Modal.Title>{event?.title}</Modal.Title>
42
      </Modal.Header>
43
      <Modal.Body>
44
        <div
45
          className={event?.url && 'cursor-pointer'}
46
          onClick={() => getBackendVarUrl(event?.url)}
47
        >
48
          {event && parse(event?.agenda)}
49
        </div>
50
      </Modal.Body>
51
    </Modal>
52
  )
53
}
54
 
55
export default EventModal