Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 3895 | Rev 3897 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 3895 Rev 3896
Línea 1... Línea 1...
1
/* eslint-disable react/prop-types */
1
/* eslint-disable react/prop-types */
2
import React from "react";
2
import React from "react";
3
import { useEffect, useState } from "react";
3
import { useEffect, useState } from "react";
4
import { axios } from "../../../utils";
4
import { axios } from "../../../utils";
Línea 5... Línea 5...
5
 
5
 
Línea 6... Línea 6...
6
const CompanyFollowers = ({ companyId }) => {
6
const CompanyFollowersHelper = ({ companyId }) => {
7
 
-
 
8
  const [companyFollowers, setCompanyFollowers] = useState([]);
7
 
Línea 9... Línea 8...
9
  const [showFollowersModal, setShowFollowersModal] = useState(false);
8
  const [companyFollowers, setCompanyFollowers] = useState([]);
10
  const [lookMore, setLookMore] = useState(false);
9
  const [lookMore, setLookMore] = useState(false);
11
 
10
 
Línea 23... Línea 22...
23
    }
22
    }
24
    return infoFollows
23
    return infoFollows
25
  }
24
  }
Línea 26... Línea 25...
26
 
25
 
27
  return (
-
 
28
    <>
26
  return (
29
      <div className="peopleYouMayKnow">
27
    <div className="peopleYouMayKnow">
30
        <div className="sd-title d-flex align-items-center justify-content-between">
28
      <div className="sd-title d-flex align-items-center justify-content-between">
31
          <h3>Seguidores:</h3>
-
 
32
          <span onClick={() => setLookMore(!lookMore)}>
-
 
33
            {lookMore ? 'Ver menos' : 'Ver mas'}
29
        <h3>Seguidores:</h3>
34
          </span>
-
 
35
        </div>
-
 
36
        <div className="suggest-list">
30
        <a href="#"
37
          {companyFollowers.length
-
 
38
            ? getData().map((follower) =>
-
 
39
              <CompanyFollowers.Template
31
          onClick={(e) => {
40
                key={follower.id}
32
            e.preventDefault()
41
                follower={follower}
-
 
42
              />
-
 
43
            )
-
 
44
            : <div className="view-more">Sin seguidores</div>
33
            setLookMore(!lookMore)
45
          }
-
 
46
        </div>
-
 
47
      </div>
-
 
48
      <button
-
 
49
        onClick={() => setShowFollowersModal(!showFollowersModal)}
-
 
50
        className="btn btn-primary btn-sm w-100 d-md-none"
-
 
51
      >
-
 
52
        Ver seguidores
-
 
53
      </button>
-
 
54
      <CompanyFollowers.Modal
-
 
55
        isShow={showFollowersModal}
-
 
56
        companyFollowers={() => getData()}
-
 
57
        handleClose={() => setShowFollowersModal(false)}
-
 
58
      />
-
 
59
    </>
-
 
60
  );
-
 
61
};
-
 
62
 
-
 
63
 
-
 
64
const Template = ({ follower }) => {
-
 
65
  const { name, image, profile } = follower
-
 
66
 
-
 
67
  return (
-
 
68
    <div className='user'>
-
 
69
      <div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
-
 
70
        <a href={profile} target="_blank" rel="noreferrer">
-
 
71
          <img src={image} alt={`${name} profile image`} />
-
 
72
        </a>
-
 
73
        <h4>{name}</h4>
-
 
74
      </div>
-
 
75
      <div className="w-100 d-flex align-items-center justify-content-start" style={{ gap: '.5rem' }}>
-
 
76
        <a
-
 
77
          href={profile}
-
 
78
          className="btn btn-primary"
-
 
79
          target='_blank'
-
 
80
          rel="noreferrer"
34
          }}
81
        >
35
        >
82
          Ver perfil
36
          {lookMore ? 'Ver menos' : 'Ver mas'}
83
        </a>
37
        </a>
84
      </div>
-
 
85
    </div>
-
 
86
  )
-
 
87
}
-
 
88
 
-
 
89
const Modal = ({
-
 
90
  isShow = false,
-
 
91
  handleClose = function () { },
-
 
92
  companyFollowers = []
-
 
93
}) => {
-
 
94
  return (
-
 
95
    <Modal show={isShow} onHide={handleClose}>
38
      </div>
96
      <Modal.Header closeButton>
-
 
97
        <h3>Seguidores</h3>
-
 
98
      </Modal.Header>
-
 
99
      <Modal.Body>
39
      <div className="suggest-list">
100
        {companyFollowers.length
40
        {companyFollowers.length
101
          ? companyFollowers.map((follower) =>
41
          ? getData().map(({ id, name, image, profile }) => (
-
 
42
            <div className='user' key={id}>
-
 
43
              <div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
-
 
44
                <a href={profile} target="_blank" rel="noreferrer">
-
 
45
                  <img src={image} alt={`${name} profile image`} />
102
            <CompanyFollowers.Template
46
                </a>
-
 
47
                <h4>{name}</h4>
-
 
48
              </div>
-
 
49
              <div className="w-100 d-flex align-items-center justify-content-start" style={{ gap: '.5rem' }}>
103
              key={follower.id}
50
                <a
-
 
51
                  href={profile}
-
 
52
                  className="btn btn-primary"
-
 
53
                  target='_blank'
-
 
54
                  rel="noreferrer"
-
 
55
                >
-
 
56
                  Ver perfil
-
 
57
                </a>
104
              follower={follower}
58
              </div>
105
            />
59
            </div>
106
          )
60
          ))
107
          : <div className="view-more">Sin seguidores</div>
61
          : <div className="view-more">Sin seguidores</div>
108
        }
62
        }
109
      </Modal.Body>
63
      </div>
110
    </Modal>
64
    </div>
111
  )
65
  );
112
}
-
 
113
 
-
 
114
CompanyFollowers.Template = Template
-
 
Línea 115... Línea 66...
115
CompanyFollowers.Modal = Modal
66
};