Rev 3837 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
/* eslint-disable react/prop-types */
import React from "react";
import { useEffect, useState } from "react";
import { axios } from "../../../utils";
const SuggestedGroupsHelper = ({ suggestedClassname }) => {
const [suggestedGroups, setSuggestedGroups] = useState([]);
const [lookMore, setLookMore] = useState(false);
useEffect(() => {
const url = '/helpers/groups-suggestion'
axios.get(url)
.then(({ data }) =>
data.success &&
setSuggestedGroups(data.data.sort((a, b) => parseInt(a.priority) - parseInt(b.priority)).reverse())
)
}, []);
const getData = () => {
let infoFollows = [...suggestedGroups]
if (!lookMore) {
infoFollows = infoFollows.slice(0, 3);
}
return infoFollows
}
return (
<div className={`${suggestedClassname || ''} peopleYouMayKnow`}>
<div className="sd-title d-flex align-items-center justify-content-between">
<h3>Grupos:</h3>
{suggestedGroups.length >= 3 &&
<a
href="#"
onClick={(e) => {
e.preventDefault()
setLookMore(!lookMore)
}}
>
{lookMore ? 'Ver menos' : 'Ver mas'}
</a>
}
</div>
<div className="suggest-list">
{suggestedGroups.length
? getData().map(({ id, name, image, profile }) =>
<div className='user' key={id}>
<div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
<a href={profile} target="_blank" rel="noreferrer">
<img src={image} alt={`${name} profile image`} />
</a>
<h4>{name}</h4>
</div>
<div className="w-100 d-flex align-items-center justify-content-end" style={{ gap: '.5rem' }}>
<a
className="btn btn-primary"
href={profile}
>
Ver Grupo
</a>
</div>
</div>
)
: <div className="view-more">Sin sugerencias</div>
}
</div>
</div>
);
};
export default SuggestedGroupsHelper;