Rev 1990 | Rev 1992 | 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 () => {
try {
setShowInputCode(true)
setLoading(true)
const res = await axios.get('/account-settings/delete-account');
console.log('>>: res > ', res)
console.log('>>: get code')
} catch (error) {
console.log('>>: error > ', error)
}finally{
setLoading(false)
}
}
const resendCode = async () => {
try {
setLoading(true)
const res = await axios.get('/account-settings/delete-account');
console.log('>>: resend code > ', res)
} 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={() => resendCode()}>
¿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