import React from 'react' import { translate } from 'react-i18next' import { Delimiter, PageWrapper, PageTitle, PageContent, BtnSwitch } from 'tracim_frontend_lib' import AddMemberForm from './AddMemberForm.jsx' // import { translate } from 'react-i18next' export class AdminUser extends React.Component { constructor (props) { super(props) this.state = { displayAddMember: false } } handleToggleAddMember = () => this.setState(prevState => ({ displayAddMember: !prevState.displayAddMember })) handleToggleUser = (e, idUser, toggle) => { e.preventDefault() e.stopPropagation() this.props.onClickToggleUserBtn(idUser, toggle) } handleToggleProfileManager = (e, idUser, toggle) => { e.preventDefault() e.stopPropagation() const { props } = this if (props.userList.find(u => u.user_id === idUser).profile === 'administrators') { GLOBAL_dispatchEvent({ type: 'addFlashMsg', data: { msg: props.t('An administrator can always create workspaces'), type: 'warning', delay: undefined } }) return } if (toggle) props.onChangeProfile(idUser, 'managers') else props.onChangeProfile(idUser, 'users') } handleToggleProfileAdministrator = (e, idUser, toggle) => { e.preventDefault() e.stopPropagation() if (toggle) this.props.onChangeProfile(idUser, 'administrators') else this.props.onChangeProfile(idUser, 'managers') } handleClickAddUser = (email, profile) => { this.props.onClickAddUser(email, profile) this.handleToggleAddMember() } render () { const { props } = this return (
{props.t('On this page you can manage the members of your Tracim instance.')}
{this.state.displayAddMember && }
{props.userList.map(u => )}
{props.t('Active')} {props.t('Member')} {props.t('Email')} {props.t('Can create workspace')} {props.t('Administrator')}
this.handleToggleUser(e, u.user_id, !u.is_active)} /> {u.public_name} {u.email} this.handleToggleProfileManager(e, u.user_id, !(u.profile === 'managers' || u.profile === 'administrators'))} /> this.handleToggleProfileAdministrator(e, u.user_id, !(u.profile === 'administrators'))} />
) } } export default translate()(AdminUser)