33 */
44import React , { useEffect , useState } from 'react' ;
55import PT from 'prop-types' ;
6- import { connect } from 'react-redux' ;
7-
8- import { actions } from 'topcoder-react-lib' ;
96import { isomorphy } from 'topcoder-react-utils' ;
107
11- import VerifiedBadge from 'assets/images/profile/verified-badge.svg' ;
12- import InfoIcon from 'assets/images/profile/ico-info.svg' ;
13- import Tooltip from 'components/Tooltip' ;
14-
158import './styles.scss' ;
169
17- const verifiedBadgeLookerId = '3322' ;
18-
19- const ProfileHeader = ( { getLookerDone, lookerInfo, info } ) => {
10+ const ProfileHeader = ( { info } ) => {
2011 const [ imageUrl , setimageUrl ] = useState ( ) ;
21- const [ isMemberVerified , setIsMemberVerified ] = useState ( false ) ;
2212 const { handle } = info ;
2313
2414 useEffect ( ( ) => {
@@ -31,30 +21,10 @@ const ProfileHeader = ({ getLookerDone, lookerInfo, info }) => {
3121 setimageUrl ( url ) ;
3222 } , [ ] ) ;
3323
34- useEffect ( ( ) => {
35- if ( ! lookerInfo || lookerInfo . error ) {
36- getLookerDone ( verifiedBadgeLookerId ) ;
37- }
38- } , [ ] ) ;
39-
40- useEffect ( ( ) => {
41- if ( ! lookerInfo || lookerInfo . error ) {
42- return ;
43- }
44- const { lookerData } = lookerInfo ;
45- const currentUserData = lookerData . find ( x => x [ 'user.handle' ] === handle ) ;
46- setIsMemberVerified ( currentUserData && currentUserData [ 'member_verification.status' ] === 'Verified' ) ;
47- } , [ lookerInfo ] ) ;
48-
4924 const loadImageError = ( ) => {
5025 setimageUrl ( null ) ;
5126 } ;
5227
53- const tooltipContent = (
54- < div styleName = "tooltip-content" > This member is compliant with Topcoder policies< br /> and is a trusted member of the Topcoder community.</ div >
55- ) ;
56-
57-
5828 return (
5929 < div styleName = "container" >
6030 < div styleName = "curve" />
@@ -73,23 +43,6 @@ const ProfileHeader = ({ getLookerDone, lookerInfo, info }) => {
7343 < div styleName = "member-handle" >
7444 { handle }
7545 </ div >
76-
77- { isMemberVerified && (
78- < div styleName = "verified-member" >
79- < VerifiedBadge />
80-
81- < span > verified member</ span >
82-
83- < div styleName = "info" >
84- < Tooltip
85- content = { tooltipContent }
86- trigger = { [ 'hover' , 'focus' ] }
87- >
88- < InfoIcon />
89- </ Tooltip >
90- </ div >
91- </ div >
92- ) }
9346 </ div >
9447
9548 </ div >
@@ -102,34 +55,8 @@ ProfileHeader.defaultProps = {
10255 info : { } ,
10356} ;
10457
105- function mapStateToProps ( state ) {
106- const {
107- looker : {
108- dataSet,
109- } ,
110- } = state ;
111- return {
112- lookerInfo : dataSet [ verifiedBadgeLookerId ] ,
113- } ;
114- }
115-
116- function mapDispatchToProps ( dispatch ) {
117- return {
118- getLookerDone : ( lookerId ) => {
119- dispatch ( actions . looker . getLookerDone ( lookerId ) ) ;
120- } ,
121- } ;
122- }
123-
12458ProfileHeader . propTypes = {
12559 info : PT . shape ( ) ,
126- lookerInfo : PT . shape ( ) . isRequired ,
127- getLookerDone : PT . func . isRequired ,
12860} ;
12961
130- const Container = connect (
131- mapStateToProps ,
132- mapDispatchToProps ,
133- ) ( ProfileHeader ) ;
134-
135- export default Container ;
62+ export default ProfileHeader ;
0 commit comments