From c08296ea6bb819e9464f4f4add5ec65231ebba8e Mon Sep 17 00:00:00 2001 From: Sagar Gupta Date: Fri, 9 Feb 2024 09:40:28 +0530 Subject: [PATCH] Refactor user role label in Profile component --- client/src/pages/Profile/Profile.jsx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/client/src/pages/Profile/Profile.jsx b/client/src/pages/Profile/Profile.jsx index dde1f92..3d7534e 100644 --- a/client/src/pages/Profile/Profile.jsx +++ b/client/src/pages/Profile/Profile.jsx @@ -14,14 +14,16 @@ const Profile = () => { const [isEdited, setIsEdited] = useState(false); const [company, setCompany] = useState([]); const [prevUser, setPrevUser] = useState({}); - const [userDetails, setUserDetails] = useState({}); + const [roleLabel, setRoleLabel] = useState(''); useEffect(() => { const fetchUser = async () => { try { const user = await getUser(); - setUserDetails(user); setUser(user); + if (user.role === 'student') setRoleLabel('Student'); + else if (user.role === 'admin') setRoleLabel('Admin'); + else setRoleLabel('Placement Coordinator'); setPrevUser(user); } catch (err) { console.log(err); @@ -40,10 +42,8 @@ const Profile = () => { console.log(error); } }; - if (userDetails.placedAt && userDetails.placedAt.companyId) { - fetchCompany(userDetails.placedAt.companyId); - } - }, [userDetails.placedAt]); + if (user.placed) fetchCompany(user.placedAt.companyId); + }, [user.placedAt, user.placed]); const handleInputChange = (name, value) => { setUser((prevState) => ({ @@ -56,7 +56,7 @@ const Profile = () => { const handleSubmit = async (e) => { e.preventDefault(); try { - await updateStudent(userDetails.id, user); + await updateStudent(user.id, user); setIsEditing(''); toast.success(); setIsEdited(false); @@ -153,7 +153,7 @@ const Profile = () => { {fieldRenderer(false, 'Name', 'Name', user.name)} {fieldRenderer(false, 'Email', 'email', user.email)} {fieldRenderer(false, 'Roll No', 'rollNo', user.rollNo)} - {fieldRenderer(false, 'Role', 'role', user.role === 'admin' ? 'Admin' : user.role === 'student' ? 'Student' : 'Placement Coordinator')} + {fieldRenderer(false, 'Role', 'role', roleLabel)} {user.placed && (