import React, { useState } from "react" import PropTypes from "prop-types" import { connect } from "react-redux" import { List } from "immutable" import { updateUser, deleteUser } from "../../actions/admins" import Toggle from "react-bootstrap-toggle"; import { PolochonSelect } from "../polochons/select" import { FormModal } from "../forms/modal" import { FormInput } from "../forms/input" const UserEditConnect = ({ id, name, admin: initAdmin, activated: initActivated, polochonToken, polochonId: initPolochonId, polochonActivated: initPolochonActivated, updateUser, deleteUser, publicPolochons, }) => { const [modal, setModal] = useState(false); const [admin, setAdmin] = useState(initAdmin); const [activated, setActivated] = useState(initActivated); const [token, setToken] = useState(polochonToken); const [polochonId, setPolochonId] = useState(initPolochonId); const [polochonActivated, setPolochonActivated] = useState(initPolochonActivated); const [password, setPassword] = useState(""); const [confirmDelete, setConfirmDelete] = useState(false); const handleSubmit = (e) => { if (e) { e.preventDefault(); } updateUser({ userId: id, polochonToken: token, admin, activated, polochonId, polochonActivated, password, }); setModal(false); }; const handleDeleteUser = (e) => { if (e) { e.preventDefault(); } if (confirmDelete) { deleteUser(name) setModal(false) } else { setConfirmDelete(true) } } return ( setModal(true)} />
setActivated(!activated)} />
setAdmin(!admin)} />
setPolochonActivated(!polochonActivated)} />
); } UserEditConnect.propTypes = { id: PropTypes.string, name: PropTypes.string, activated: PropTypes.bool, admin: PropTypes.bool, updateUser: PropTypes.func, deleteUser: PropTypes.func, polochonToken: PropTypes.string, polochonId: PropTypes.string, polochonActivated: PropTypes.bool, publicPolochons: PropTypes.instanceOf(List), }; const mapStateToProps = (state) => ({ publicPolochons: state.polochon.get("public"), }); export const UserEdit = connect(mapStateToProps, {updateUser, deleteUser})(UserEditConnect);