Rev 6830 | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React from 'react'
import { axios } from '../../utils'
import { useDispatch } from 'react-redux'
import { addNotification } from '../../redux/notification/notification.actions'
import parse from 'html-react-parser'
import Avatar from '../UI/AvatarImage'
const CompanyActions = ({
cover,
companyId,
name,
image,
actionLinks,
overview,
refetch,
}) => {
const dispatch = useDispatch()
const handleButtonAction = async (link) => {
const { data: response } = await axios.post(link)
if (response.success) {
dispatch(addNotification({ style: 'success', msg: response.data }))
refetch()
} else {
dispatch(
addNotification({ style: 'danger', msg: 'ha ocurrido un error' })
)
}
}
return (
<div className="group__actions">
<div className="group__actions-cover">
<img
src={`/storage/type/company-cover/code/${companyId}/${
cover ? `filename/${cover}` : ''
}`}
alt="Profile cover"
className="sidebar__cover"
/>
</div>
<div className="group__actions-body">
<Avatar
imageUrl={`/storage/type/company/code/${companyId}/${
image ? `filename/${image}` : ''
}`}
size="xl"
name={name}
/>
<h1>{name}</h1>
{overview && parse(overview)}
<div className="row" style={{ gap: '.5rem' }}>
{actionLinks?.link_contact && (
<a
href={actionLinks?.link_contact}
className="button btn btn-primary"
>
Mensaje
</a>
)}
{actionLinks?.link_unfollow && (
<button
className="button btn btn-secondary"
onClick={() => handleButtonAction(actionLinks?.link_unfollow)}
>
Dejar de seguir
</button>
)}
{actionLinks?.link_follow && (
<button
className="btn btn-primary"
onClick={() => handleButtonAction(actionLinks?.link_follow)}
>
Seguir
</button>
)}
{actionLinks?.link_request && actionLinks?.link_unfollow && (
<button
className="button btn btn-secondary"
onClick={() => handleButtonAction(actionLinks?.link_request)}
>
¿Trabaja en esta empresa?
</button>
)}
{actionLinks?.link_accept && (
<button
className="button btn btn-primary"
onClick={() => handleButtonAction(actionLinks?.link_accept)}
>
Aceptar
</button>
)}
{actionLinks?.link_cancel && (
<button
title=""
className="button btn btn-secondary"
onClick={() => handleButtonAction(actionLinks?.link_cancel)}
>
Cancelar
</button>
)}
{actionLinks?.link_reject && (
<button
title=""
className="button btn btn-secondary"
onClick={() => handleButtonAction(actionLinks?.link_reject)}
>
Rechazar
</button>
)}
{actionLinks?.link_leave && (
<button
data-link="{{>link_leave}}"
title=""
className="button btn btn-secondary"
onClick={() => handleButtonAction(actionLinks?.link_leave)}
>
Abandonar esta empresa
</button>
)}
</div>
</div>
</div>
)
}
export default CompanyActions