Rev 4240 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
/* eslint-disable react/prop-types */
import React, { useEffect, useState } from "react";
import { axios } from "../../../utils";
import Spinner from "../../../shared/loading-spinner/Spinner";
import Profile from "../../../components/Profile";
import SearchList from "../../../components/SearchList";
const InvitationsReceived = () => {
const [companies, setCompanies] = useState([]);
const [loading, setLoading] = useState(true);
let axiosThrottle = null;
useEffect(() => {
fetchCompanies();
return () => {
clearTimeout(axiosThrottle);
};
}, []);
const fetchCompanies = (searchParam = '') => {
setLoading(true);
axios
.get("/company/invitations-received?search=" + searchParam)
.then(({ data: response }) => {
if (response.success) {
setCompanies(response.data)
}
})
.finally(() => setLoading(false))
setLoading(false);
};
return (
<section className="companies-info">
<div className="container">
<SearchList
title={LABELS.invitation_received}
fetchCallback={fetchCompanies}
/>
<div className="companies-list position-relative">
{loading && <Spinner />}
{
companies.length
?
companies.map(({ image, name, link_view, link_reject, link_accept }, id) => (
<Profile
key={id}
image={image}
name={name}
link_view={link_view}
link_reject={link_reject}
link_accept={link_accept}
fetchCallback={fetchCompanies}
btnAcceptTitle='Ver Empresa'
/>
))
:
<div style={{ margin: "auto", textAlign: "center" }}>
{LABELS.not_found}
</div>
}
</div>
</div>
</section >
);
};
export default InvitationsReceived;