Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 3872 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3730 stevensc 1
/* eslint-disable react/prop-types */
1 www 2
import React from "react";
4599 stevensc 3
import { useState, } from "react";
1 www 4
import { profileTypes } from "../../../Profile.types";
4599 stevensc 5
import ImageModal from './ImageModal'
1 www 6
 
7
 
3730 stevensc 8
const ProfileImg = ({
9
  entityId = '',
10
  profileId = '',
11
  image = '',
12
  imageProfileCover = '',
13
  profileType = ''
14
}) => {
1 www 15
 
16
 
4599 stevensc 17
 
1 www 18
  // states
19
  const [isModalOpen, setIsModalOpen] = useState(false);
4599 stevensc 20
 
1 www 21
  const [profileImg, setProfileImg] = useState(() => {
22
    switch (profileType) {
23
      case profileTypes.USER:
24
        return {
3872 stevensc 25
          path: `/storage/type/user-profile/code/${entityId}/${image ? `filename/${image}` : ''}`,
1 www 26
          uid: Date.now(),
27
        };
28
      case profileTypes.COMPANY:
29
        return {
3872 stevensc 30
          path: `/storage/type/company/code/${entityId}/${image ? `filename/${image}` : ''}`,
1 www 31
          uid: Date.now(),
3730 stevensc 32
        }
1 www 33
      default:
34
        break;
35
    }
36
  });
37
 
38
  const handleModalOpen = (event) => {
39
    event && event.preventDefault();
40
    setIsModalOpen(!isModalOpen);
41
  };
42
 
43
  return (
4599 stevensc 44
    <>
1 www 45
      <div className="user-pro-img">
46
        <img
47
          id="user-profile-img"
48
          src={`${profileImg.path}?${profileImg.uid}`}
49
          alt=""
50
        />
51
        <div className="add-dp" id="OpenImgUpload">
52
          <a href="#" className="btn-image-open" onClick={handleModalOpen}>
53
            <i className="fas fa-camera"></i>
54
          </a>
55
        </div>
56
      </div>
4599 stevensc 57
      <ImageModal
58
        isModalOpen={isModalOpen}
59
        profileId={profileId}
60
        setProfileImg={(newImage) => setProfileImg(newImage)}
61
        imageProfileCover={imageProfileCover}
62
        handleModalOpen={handleModalOpen}
63
        profileType={profileType}
64
      />
65
    </>
1 www 66
  );
67
};
68
 
69
export default ProfileImg;