diff options
author | rohan09-raj <[email protected]> | 2022-08-25 11:52:33 +0530 |
---|---|---|
committer | rohan09-raj <[email protected]> | 2022-08-25 11:55:12 +0530 |
commit | 54a27fb52551069fa6d40c6f5941c5d49c0f0506 (patch) | |
tree | 8aff7da60822a847ea081c981da904880d6fb807 /admin/src/pages/EnrollmentRequests | |
parent | 772fc663fd31bc247dcc7da31090234b5b89f155 (diff) |
admin UI improvement and back button added
Diffstat (limited to 'admin/src/pages/EnrollmentRequests')
-rw-r--r-- | admin/src/pages/EnrollmentRequests/EnrollmentRequests.jsx | 61 | ||||
-rw-r--r-- | admin/src/pages/EnrollmentRequests/EnrollmentRequests.module.css | 21 |
2 files changed, 82 insertions, 0 deletions
diff --git a/admin/src/pages/EnrollmentRequests/EnrollmentRequests.jsx b/admin/src/pages/EnrollmentRequests/EnrollmentRequests.jsx new file mode 100644 index 0000000..8423fc0 --- /dev/null +++ b/admin/src/pages/EnrollmentRequests/EnrollmentRequests.jsx @@ -0,0 +1,61 @@ +import React from 'react'; +import Accordion from '../../components/Accordion/Accordion'; +import Button from '../../components/Button/Button'; +import Header from '../../components/Header/Header'; +import { + deleteUser, + getUnverifiedUsers, + updateUser, +} from '../../services/apiservice'; +import {useQuery, useMutation} from 'react-query'; +import {useNavigate} from 'react-router-dom'; +import BackButton from '../../components/BackButton/BackButton'; + +import styles from './EnrollmentRequests.module.css'; + +const EnrollmentRequests = () => { + const navigate = useNavigate(); + const {data, refetch} = useQuery('unverified', getUnverifiedUsers); + const deleteUse = useMutation((id) => deleteUser(id), { + onSuccess: () => { + refetch(); + }, + }); + + const updateUse = useMutation((id) => updateUser(id, {verified: true}), { + onSuccess: () => { + refetch(); + }, + }); + + return ( + <div className={styles.unverified_users}> + <Header subheading='Admin' /> + <BackButton onClick={() => navigate('/')} /> + <h1 className={styles.unverified_users__heading}>Unverified Users</h1> + <div className='accordion'> + {data?.data.length !== 0 ? ( + data?.data.map((item) => ( + <div className={styles.unverified_users__accordion} key={item._id}> + <Accordion name={item.name} user={item} /> + <Button + title='Accept' + color='green' + onClick={() => updateUse.mutate(item._id)} + /> + <Button + title='Reject' + color='red' + onClick={() => deleteUse.mutate(item._id)} + /> + </div> + )) + ) : ( + <div className={styles.unverified_users__nodata}>No Data Found</div> + )} + </div> + </div> + ); +}; + +export default EnrollmentRequests; diff --git a/admin/src/pages/EnrollmentRequests/EnrollmentRequests.module.css b/admin/src/pages/EnrollmentRequests/EnrollmentRequests.module.css new file mode 100644 index 0000000..652fe52 --- /dev/null +++ b/admin/src/pages/EnrollmentRequests/EnrollmentRequests.module.css @@ -0,0 +1,21 @@ +.unverified_users { + display: flex; + flex-direction: column; + justify-content: center; +} + +.unverified_users__heading { + text-align: center; +} + +.unverified_users__accordion { + display: flex; + justify-content: center; + align-items: center; + width: 80%; +} + +.unverified_users__nodata { + margin: 20px; + text-align: center; +} |