import {connect} from 'react-redux'; import {compose} from 'react-apollo'; import React, {Component} from 'react'; import I18n from 'coral-framework/modules/i18n/i18n'; import {bindActionCreators} from 'redux'; import {myCommentHistory, myIgnoredUsers} from 'coral-framework/graphql/queries'; import {stopIgnoringUser} from 'coral-framework/graphql/mutations'; import {link} from 'coral-framework/services/PymConnection'; import NotLoggedIn from '../components/NotLoggedIn'; import IgnoredUsers from '../components/IgnoredUsers'; import {Spinner} from 'coral-ui'; import CommentHistory from 'coral-plugin-history/CommentHistory'; import {showSignInDialog, checkLogin} from 'coral-framework/actions/auth'; import translations from '../translations'; const lang = new I18n(translations); class ProfileContainer extends Component { constructor (props) { super(props); this.state = { activeTab: 0, }; this.handleTabChange = this.handleTabChange.bind(this); } handleTabChange(tab) { this.setState({ activeTab: tab }); } render() { const {asset, data, showSignInDialog, myIgnoredUsersData, stopIgnoringUser} = this.props; const {me} = this.props.data; if (data.loading) { return ; } if (!me) { return ; } const localProfile = this.props.user.profiles.find(p => p.provider === 'local'); const emailAddress = localProfile && localProfile.id; return (

{this.props.user.username}

{ emailAddress ?

{ emailAddress }

: null } { myIgnoredUsersData.myIgnoredUsers && myIgnoredUsersData.myIgnoredUsers.length ? (

Ignored users

) : null }

My comments

{ me.comments.length ? :

{lang.t('userNoComment')}

}
); } } const mapStateToProps = state => ({ user: state.user.toJS(), asset: state.asset.toJS(), auth: state.auth.toJS() }); const mapDispatchToProps = dispatch => bindActionCreators({showSignInDialog, checkLogin}, dispatch); export default compose( connect(mapStateToProps, mapDispatchToProps), myCommentHistory, myIgnoredUsers, stopIgnoringUser, )(ProfileContainer);