Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 4539 | 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 { useDispatch } from 'react-redux';
import { setTimelineUrl } from '../../../../../redux/feed/feed.actions';
import FeedList from '../../../../../dashboard/templates/linkedin/Feed/FeedList';
import GroupInfo from '../../../../../group/view/templates/linkedin/components/GroupInfo'
import AboutCompany from '../components/AboutCompany';
import CompanyFollowers from '../components/CompanyFollowers';
import CompanyActions from '../components/CompanyActions';

const View = ({ backendVars }) => {
    const [authorizedLinks, setAuthorizedLinks] = useState(null);
    const [isFollower, setIsFollower] = useState(false);
    const dispatch = useDispatch()

    useEffect(() => {
        dispatch(setTimelineUrl(backendVars.timeline))
        fetchAuthorizedLinks();
    }, []);

    const fetchAuthorizedLinks = async () => {
        const { data: response } = await axios.get(`/company/view/${backendVars.companyId}`);
        if (response.success) {
            setAuthorizedLinks(response.data);
            if (response.data.link_unfollow) {
                setIsFollower(true);
            } else {
                setIsFollower(false);
            }
        }
    };

    return (
        <main className="w-100">
            <div className="container p-0 app__body layout__content">
                <div className="d-flex flex-column">
                    <GroupInfo
                        cover={backendVars.cover}
                        image={backendVars.image}
                        name={backendVars.companyName}
                        overview={backendVars.overview}
                        groupId={backendVars.companyId}
                        totalMembers={backendVars.totalFollowers}
                        groupType={backendVars.companySize}
                        accessibility={backendVars.industry}
                        type='company'
                    />
                </div>
                <div className="d-flex flex-column" style={{ gap: '.5rem' }}>
                    <CompanyActions
                        name={backendVars.companyName}
                        image={backendVars.image}
                        companyId={backendVars.companyId}
                        cover={backendVars.cover}
                        overview={backendVars.overview}
                        refetch={() => fetchAuthorizedLinks()}
                        actionLinks={authorizedLinks}
                    />
                    {!isFollower
                        ? <AboutCompany {...backendVars} />
                        : <FeedList image={`/storage/type/company/code/${backendVars.companyId}/${backendVars.image ? `filename/${backendVars.image}` : ""}`} />
                    }
                </div>
                <div className="d-flex flex-column" style={{ gap: '.5rem' }}>
                    <CompanyFollowers companyId={backendVars.companyId} />
                    <AboutCompany {...backendVars} />
                </div>
            </div>
        </main>
    )
}

export default View