Rev 4540 | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
/* eslint-disable react/prop-types */
import React from 'react'
import parse from 'html-react-parser'
import { axios } from '../../../../../utils';
import { useDispatch } from 'react-redux'
import { addNotification } from '../../../../../redux/notification/notification.actions';
import Avatar from '../../../../../shared/Avatar/Avatar';
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>
{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