Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
6993 stevensc 1
import React from 'react'
2
import { axios } from '../../utils'
3
import { useSelector } from 'react-redux'
4
 
5
const CapsuleItem = ({ capsule = {}, onComplete = () => null }) => {
6
  const { name, image, status, link_enroll, link_claim } = capsule
7
  const labels = useSelector(({ intl }) => intl.labels)
8
 
9
  const enroll = async (url) => {
10
    try {
11
      await axios.post(url)
12
      onComplete()
13
    } catch (error) {
14
      console.log('>>: error > ', error)
15
    }
16
  }
17
 
18
  const claim = async (url) => {
19
    try {
20
      await axios.post(url)
21
      onComplete()
22
    } catch (error) {
23
      console.log('>>: error > ', error)
24
    }
25
  }
26
 
27
  return (
28
    <div className="marketplace_card">
29
      <img src={image} alt={name} />
30
      <div className="microlearning-up-info">
31
        <h3>{name}</h3>
32
        {status && (
33
          <h4>
34
            {labels.status}: {status}
35
          </h4>
36
        )}
37
        <ul>
38
          {link_claim && (
39
            <li>
40
              <button
41
                onClick={() => claim(link_claim)}
42
                title={'Seleccionar: ' + name}
43
                className="btn btn-primary cursor-pointer"
44
              >
45
                {labels.claim}
46
              </button>
47
            </li>
48
          )}
49
          {link_enroll && (
50
            <li>
51
              <button
52
                onClick={() => enroll(link_enroll)}
53
                title={'Seleccionar: ' + name}
54
                className="btn btn-primary"
55
              >
56
                {labels.enroll}
57
              </button>
58
            </li>
59
          )}
60
        </ul>
61
      </div>
62
    </div>
63
  )
64
}
65
 
66
export default CapsuleItem