From 4480f2d62865a585f8bbf0cd7122a25d0413bf2b Mon Sep 17 00:00:00 2001 From: rohan09-raj Date: Sun, 21 Aug 2022 01:46:36 +0530 Subject: fixed update components --- client/src/pages/Update/Agreement/Agreement.jsx | 122 +++++++++++++++------ .../pages/Update/Agreement/Agreement.module.css | 13 ++- 2 files changed, 98 insertions(+), 37 deletions(-) (limited to 'client/src/pages/Update/Agreement') diff --git a/client/src/pages/Update/Agreement/Agreement.jsx b/client/src/pages/Update/Agreement/Agreement.jsx index 804561b..2d1361d 100644 --- a/client/src/pages/Update/Agreement/Agreement.jsx +++ b/client/src/pages/Update/Agreement/Agreement.jsx @@ -1,57 +1,111 @@ -import React from 'react' +import React, { useState } from 'react' import Header from '../../../components/Header/Header' import CardAgreement from '../../../components/Card/CardAgreement' import styles from './Agreement.module.css' import Input from '../../../components/Input/Input' -import { Grid, Button } from '@mui/material' import { Link } from 'react-router-dom' import SubmitButton from '../../../components/SubmitButton/SubmitButton' +import { Button, Typography } from '@mui/material' import { useTranslation } from 'react-i18next' +import { sendOTP, updateUser } from '../../../services/apiservice' import { userContext } from '../../../context/User' import { useMutation } from 'react-query' -import { updateUser } from '../../../services/apiservice' +import { ToastContainer, toast } from 'react-toastify' +import 'react-toastify/dist/ReactToastify.css' -const Agreement = () => { +const Agreement = ({ unverified, setUnverified }) => { + const { t } = useTranslation() + const [otp, setOtp] = useState() + const [disabled, setDisabled] = useState(false) + const [finalDisable, setFinalDisable] = useState(false) + const [show, setShow] = useState(false) const { userData } = userContext() + const updateUse = useMutation(() => updateUser(userData._id, { ...userData })) - const { t } = useTranslation() + const { data, mutate } = useMutation(() => + sendOTP({ mobile: `+91${userData?.mobile}` }) + ) + + console.log('Disabled: ', disabled, 'Final Disable: ', finalDisable) + + const verifyOTP = () => { + if (data?.data?.otpCode === Number(otp)) { + console.log('Disabled: ', disabled, 'Final Disable: ', finalDisable) + setFinalDisable(true) + setDisabled(true) + setShow(false) + setUnverified(false) + toast.success(t('OTP_VERIFIED!')) + } else { + toast.error(t('INCORRECT_OTP!')) + } + } + + const sendResendOTP = () => { + setTimeout(() => { + if (finalDisable === false) { + console.log('Disabled: ', disabled, 'Final Disable: ', finalDisable) + setDisabled(false) + } + }, 30000) + } + return ( <> -
+ +
- - - - - - - - - +
+ {t('PLEASE_VERIFY_YOUR_IDENTITY')} + + {show && ( + <> + setOtp(e.target.value)} + maxLength="6" + placeholder="XXXXXX" + /> + + + )} +
updateUse.mutate()} /> diff --git a/client/src/pages/Update/Agreement/Agreement.module.css b/client/src/pages/Update/Agreement/Agreement.module.css index c618a4d..2580d47 100644 --- a/client/src/pages/Update/Agreement/Agreement.module.css +++ b/client/src/pages/Update/Agreement/Agreement.module.css @@ -1,4 +1,11 @@ .card__container { - display: flex; - justify-content: center; - } \ No newline at end of file + display: flex; + justify-content: center; +} + +.card__elements { + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} -- cgit