Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 3872 | 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 { useState, } from "react";
import { profileTypes } from "../../../Profile.types";
import ImageModal from './ImageModal'


const ProfileImg = ({
  entityId = '',
  profileId = '',
  image = '',
  imageProfileCover = '',
  profileType = ''
}) => {



  // states
  const [isModalOpen, setIsModalOpen] = useState(false);

  const [profileImg, setProfileImg] = useState(() => {
    switch (profileType) {
      case profileTypes.USER:
        return {
          path: `/storage/type/user-profile/code/${entityId}/${image ? `filename/${image}` : ''}`,
          uid: Date.now(),
        };
      case profileTypes.COMPANY:
        return {
          path: `/storage/type/company/code/${entityId}/${image ? `filename/${image}` : ''}`,
          uid: Date.now(),
        }
      default:
        break;
    }
  });

  const handleModalOpen = (event) => {
    event && event.preventDefault();
    setIsModalOpen(!isModalOpen);
  };

  return (
    <>
      <div className="user-pro-img">
        <img
          id="user-profile-img"
          src={`${profileImg.path}?${profileImg.uid}`}
          alt=""
        />
        <div className="add-dp" id="OpenImgUpload">
          <a href="#" className="btn-image-open" onClick={handleModalOpen}>
            <i className="fas fa-camera"></i>
          </a>
        </div>
      </div>
      <ImageModal
        isModalOpen={isModalOpen}
        profileId={profileId}
        setProfileImg={(newImage) => setProfileImg(newImage)}
        imageProfileCover={imageProfileCover}
        handleModalOpen={handleModalOpen}
        profileType={profileType}
      />
    </>
  );
};

export default ProfileImg;