Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 671 | Rev 674 | 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 { axios } from '../../../utils'
3
import VisibilityOutlinedIcon from '@mui/icons-material/VisibilityOutlined'
4
import MapOutlinedIcon from '@mui/icons-material/MapOutlined'
5
import ShareOutlinedIcon from '@mui/icons-material/ShareOutlined'
671 stevensc 6
import StyledContainer from '../WidgetLayout'
672 stevensc 7
import { Avatar } from '@mui/material'
5 stevensc 8
 
9
export default function ProfileInfo({
10
  image,
11
  name,
12
  description,
13
  visits,
14
  country,
15
  connections,
16
  linkAdmin,
671 stevensc 17
  linkImpersonate
5 stevensc 18
}) {
19
  const getAdminUrl = async () => {
20
    try {
21
      const { data } = await axios.get('/backend/signin-admin')
22
      if (data.success) window.open(data.data)
23
    } catch (error) {
24
      console.log('>>: error > ', error)
25
    }
26
  }
27
 
28
  return (
671 stevensc 29
    <StyledContainer className='p-2'>
672 stevensc 30
      <Avatar
31
        src={image}
32
        alt={`${name} profile-image`}
33
        sx={{ margin: '0 auto', width: 100, height: 100 }}
34
      />
5 stevensc 35
      <h2>{name}</h2>
36
      {description && <p dangerouslySetInnerHTML={{ __html: description }}></p>}
671 stevensc 37
      <div className='user-status'>
38
        <div className='d-flex flex-column align-items-center'>
5 stevensc 39
          <VisibilityOutlinedIcon />
40
          <p>{visits}</p>
41
        </div>
671 stevensc 42
        <div className='d-flex flex-column align-items-center'>
5 stevensc 43
          <MapOutlinedIcon />
44
          <p>{country}</p>
45
        </div>
671 stevensc 46
        <div className='d-flex flex-column align-items-center'>
5 stevensc 47
          <ShareOutlinedIcon />
48
          <p>{connections}</p>
49
        </div>
50
      </div>
51
      <ul>
52
        {linkAdmin && (
53
          <li>
671 stevensc 54
            <a href='#' onClick={() => getAdminUrl()}>
5 stevensc 55
              Administración
56
            </a>
57
          </li>
58
        )}
59
        {linkImpersonate && (
60
          <li>
671 stevensc 61
            <a href='/impersonate'>Personificar otro usuario</a>
5 stevensc 62
          </li>
63
        )}
64
        <li>
671 stevensc 65
          <a href='/account-settings'>Configuración de la cuenta</a>
5 stevensc 66
        </li>
67
        <li>
671 stevensc 68
          <a href='/privacy-policy'>Política de privacidad</a>
5 stevensc 69
        </li>
70
        <li>
671 stevensc 71
          <a href='/cookies'>Política de cookies</a>
5 stevensc 72
        </li>
671 stevensc 73
        <li className='logOutContainer'>
74
          <a className='logOutContainer__a' href='/signout'>
5 stevensc 75
            Cerrar sesión
76
          </a>
77
        </li>
78
      </ul>
671 stevensc 79
    </StyledContainer>
5 stevensc 80
  )
81
}