import { format } from 'date-fns' import React from 'react' import { connect } from 'react-redux' import { Helmet } from 'react-helmet' import { Link } from 'react-router-dom' import Message from '../../Common/Message' import { history } from '../../../index' import { getOrUpdateData } from '../../../actions' import { apiUrl } from '../../../utils' class AdminUsers extends React.Component { componentDidMount() { this.props.loadUsers() } render() { const { message, t, updateUser, authUser, users } = this.props return (
FitTrackee - {t('administration:Administration')} {message && }
{users.map(user => ( ))}
# {t('user:Username')} {t('user:Email')} {t('user:Registration Date')} {t('activities:Activities')} {t('user:Admin')} {t('administration:Actions')}
{user.picture === true && ( Avatar )} {user.username} {user.email} {format( new Date(user.created_at), 'dd/MM/yyyy HH:mm' )} {user.nb_activities} {user.admin ? ( updateUser(user.username, !user.admin) } />
history.push('/admin/')} value={t('common:Back')} />
) } } export default connect( state => ({ message: state.message, authUser: state.user, users: state.users.data, }), dispatch => ({ loadUsers: () => { dispatch(getOrUpdateData('getData', 'users')) }, updateUser: (userName, isAdmin) => { const data = { username: userName, admin: isAdmin } dispatch(getOrUpdateData('updateData', 'users', data, false)) }, }) )(AdminUsers)