Rev 1989 | Rev 1991 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { useState, useMemo } from 'react';import Spinner from '../../../shared/loading-spinner/Spinner';import styled from 'styled-components';import axios from '../../../utils/axios';const StyledSpinnerContainer = styled.div`position: absolute;left: 0;top: 0;width: 100%;height: 100%;background: rgba(255, 255, 255, 0.4);display: flex;justify-content: center;align-items: center;z-index: 300;`;function CloseAccount() {const [showInputCode, setShowInputCode] = useState(false);const [loading, setLoading] = useState(false);const handleGetCode = async (changeState = true) => {try {setLoading(true)const res = await axios.get('/account-settings/delete-account');console.log('>>: res > ', res)console.log('>>: get code')if(changeState)setShowInputCode(true)} catch (error) {console.log('>>: error > ', error)}finally{setLoading(false)}}const handleSubmit = async (e) => {try {e.preventDefault()setLoading(true)const res = await axios.post('/account-settings/delete-account');console.log('>>: res > ', res)} catch (error) {console.log('>>: error > ', error)}finally{setLoading(false)}}const CloseAccountContent = () => {if(showInputCode){return <form onSubmit={handleSubmit}><div className="form-group"><label htmlFor="exampleInputEmail1">Ingrese el codigo</label><input type="email" className="form-control" id="exampleInputEmail1" /><small id="emailHelp" className="form-text text-muted">Este codigo fue enviado a tu correo electrónico.</small><button className="btn btn-secondary btn-sm" onClick={handleGetCode(false)}>¿No ha recibido su correo?, solicitue un codigo nuevo</button></div><button type="submit" className="btn btn-primary">Enviar</button></form>}else{return <><h1 className="text-center">¿Esta seguro de eliminar su cuenta?</h1><div className="row"><div className='col-md col-sm-12 text-right'><button className="btn btn-primary" onClick={handleGetCode} disabled={showInputCode}>Si, estoy seguro</button></div><div className='col-md col-sm-12 text-left'><button className="btn btn-primary" disabled={showInputCode}>No estoy seguro</button></div></div></>}}return (<div className="acc-setting h-100 d-flex justify-content-center align-items-center" style={{ position: "relative" }}><div className="container"><div className="">{CloseAccountContent()}</div></div>{loading && (<StyledSpinnerContainer><Spinner /></StyledSpinnerContainer>)}</div>)}export default CloseAccount