11import React , { Component } from "react" ;
22import { Modal , Button , Row , Col , Image , Form } from "react-bootstrap" ;
3+ import { connect } from 'react-redux' ;
4+ import { removeUser } from '../../../actions/usersAction'
35import logo from "../../../svgs/logo-image.jpg" ;
46
57class Members extends Component {
@@ -11,17 +13,20 @@ class Members extends Component {
1113 }
1214 }
1315
14- onRemoveClick = ( index ) => {
15- console . log ( 'Blocking !' , index ) ;
16+ onRemoveClick = ( userId ) => {
17+ console . log ( 'Removing !' , userId ) ;
1618 // SEND REQUEST TO REMOVE USER WITH ID = INDEX
19+ this . props . removeUser ( userId )
1720 }
1821
1922 componentWillReceiveProps ( nextProps ) {
2023 let membersInfo = [ ]
2124 nextProps . members . forEach ( ( member ) => {
22- membersInfo . push ( { name : member . name . firstName + ' ' + member . name . lastName , desc : member . info . about . designation || 'UI/UX' , _id : member . _id } )
25+ membersInfo . push ( { name : member . name . firstName + ' ' + member . name . lastName , desc : member . info . about . designation || 'UI/UX' , _id : member . _id , isRemoved : member ?. isRemoved || false } )
26+ } )
27+ this . setState ( { members : membersInfo } , ( ) => {
28+ console . log ( 'members ' , this . state )
2329 } )
24- this . setState ( { members : membersInfo } )
2530 }
2631
2732 render ( ) {
@@ -37,10 +42,15 @@ class Members extends Component {
3742 </ div >
3843 < div className = "member__btn__container" >
3944 < Button
40- className = "btn-danger modal__remove__followButton"
45+ className = {
46+ Boolean ( item . isRemoved === true ) ? 'modal__removed__followButton' :
47+ 'modal__remove__followButton'
48+ }
4149 onClick = { this . onRemoveClick . bind ( this , item . _id ) }
4250 >
43- < span className = "remove_followText" > Remove</ span >
51+ < span className = "remove_followText" >
52+ { Boolean ( item . isRemoved === true ) ? ( < span > Removed</ span > ) : ( < span > Remove</ span > ) }
53+ </ span >
4454 </ Button >
4555 </ div >
4656 </ Row >
@@ -88,4 +98,12 @@ class Members extends Component {
8898 ) ;
8999 }
90100}
91- export default Members ;
101+ // map state to props
102+ const mapStateToProps = ( state ) => ( {
103+ auth : state . auth ,
104+ error : state . error ,
105+ user : state . user ,
106+ status : state . status
107+ } )
108+
109+ export default connect ( mapStateToProps , { removeUser } ) ( Members ) ;
0 commit comments