diff --git a/.env b/.env
index f58ba9f..bb7488f 100644
--- a/.env
+++ b/.env
@@ -18,7 +18,7 @@ REACT_APP_USERS_ENDPOINT="https://apigate.lotus.g1.wrenchboard.com/svs/user"
#"https://devapi.mermsemr.com/en/desktop/api/v2/myfituser"
REACT_APP_SESSION_EXPIRE_MINUTES=300000
-REACT_APP_SESSION_EXPIRE_CHECKER=60000
+REACT_APP_SESSION_EXPIRE_CHECKER=300000
REACT_APP_LOGIN_ERROR_TIMEOUT=7000
REACT_APP_SIGNUP_ERROR_TIMEOUT=7000
diff --git a/src/components/AuthPages/Login/index.jsx b/src/components/AuthPages/Login/index.jsx
index 7d18634..bcb294c 100644
--- a/src/components/AuthPages/Login/index.jsx
+++ b/src/components/AuthPages/Login/index.jsx
@@ -9,7 +9,13 @@ import usersService from "../../../services/UsersService";
import InputCom from "../../Helpers/Inputs/InputCom";
import AuthLayout from "../AuthLayout";
+import { useDispatch, useSelector } from "react-redux";
+import {updateUserDetails} from '../../../store/UserDetails'
+
export default function Login() {
+
+ const dispatch = useDispatch()
+
const [checked, setValue] = useState(false);
const [loginLoading, setLoginLoading] = useState(false);
@@ -51,21 +57,13 @@ export default function Login() {
//debugger;
// if (email === "support@mermsemr.com") {
if (loginResult.data.status > 0 && loginResult.data.internal_return == 100 && loginResult.data.session != '') { // just for a start
- localStorage.setItem("email", `${loginResult.data.email}`);
localStorage.setItem("member_id", `${loginResult.data.member_id}`);
localStorage.setItem("uid", `${loginResult.data.uid}`);
localStorage.setItem("session_token", `${loginResult.data.session}`);
- localStorage.setItem("added", `${loginResult.data.added}`);
- localStorage.setItem("city", `${loginResult.data.city}`);
- localStorage.setItem("country", `${loginResult.data.country}`);
- localStorage.setItem("firstname", `${loginResult.data.firstname}`);
- localStorage.setItem("last_login", `${loginResult.data.last_login}`);
- localStorage.setItem("lastname", `${loginResult.data.lastname}`);
- localStorage.setItem("state", `${loginResult.data.state}`);
- localStorage.setItem("zip_code", `${loginResult.data.zip_code}`);
localStorage.setItem("session", `${loginResult.data.session}`);
setLoginLoading(true);
// userApi.getUserReminders(); //testing
+ dispatch(updateUserDetails(loginResult.data))
setTimeout(() => {
navigate("/", { replace: true });
setLoginLoading(false);
diff --git a/src/components/AuthPages/VerifyLink/index.jsx b/src/components/AuthPages/VerifyLink/index.jsx
index 8d5d8cb..1b28c87 100644
--- a/src/components/AuthPages/VerifyLink/index.jsx
+++ b/src/components/AuthPages/VerifyLink/index.jsx
@@ -1,4 +1,4 @@
-import { useState, useLayoutEffect, useCallback } from "react";
+import { useState, useEffect, useCallback } from "react";
import { useLocation, Link, useNavigate } from "react-router-dom";
import AuthLayout from "../AuthLayout";
import InputCom from "../../Helpers/Inputs/InputCom";
@@ -28,34 +28,6 @@ export default function VerifyLink() {
setPassword(e.target.value);
};
- // for verifying the incoming verification link and render the correct component
- const verifyEmail = useCallback(async (code) => {
- try {
- const verifyRes = await userApi.verifyEmail(code);
- if (verifyRes.status === 200) {
- let { data } = verifyRes;
-
- if (
- data &&
- data.internal_return >= 0 &&
- data.status_text === "Link Verfied"
- ) {
- setPageLoader(false);
- } else {
- setPageLoader(false);
- setLinkSuccess(false);
- }
- }
- } catch (error) {
- setPageLoader(false);
- setLinkSuccess(false);
- throw new Error(error);
- }
- }, []);
-
- // delay verify requests by 10000ms
- const debouncedEmail = debounce(verifyEmail, 1000);
-
// if verification is okay. set a complete signup form
const completeSignup = async () => {
if (email === "" && password === "") {
@@ -85,14 +57,6 @@ export default function VerifyLink() {
localStorage.setItem("email", `${data?.email}`);
localStorage.setItem("member_id", `${data?.member_id}`);
localStorage.setItem("session_token", `${data?.session}`);
- localStorage.setItem("added", `${data?.added}`);
- localStorage.setItem("city", `${data?.city}`);
- localStorage.setItem("country", `${data?.country}`);
- localStorage.setItem("firstname", `${data?.firstname}`);
- localStorage.setItem("last_login", `${data?.last_login}`);
- localStorage.setItem("lastname", `${data?.lastname}`);
- localStorage.setItem("state", `${data?.state}`);
- localStorage.setItem("zip_code", `${data?.zip_code}`);
localStorage.setItem("session", `${data?.session}`);
navigate("/", { replace: true });
@@ -118,9 +82,37 @@ export default function VerifyLink() {
}
};
- useLayoutEffect(() => {
+ // for verifying the incoming verification link and render the correct component
+ const verifyEmail = useCallback(async (code) => {
+ try {
+ const verifyRes = await userApi.verifyEmail(code);
+ if (verifyRes.status === 200) {
+ let { data } = verifyRes;
+
+ if (
+ data &&
+ data.internal_return >= 0 &&
+ data.status_text === "Link Verfied"
+ ) {
+ setPageLoader(false);
+ } else {
+ setPageLoader(false);
+ setLinkSuccess(false);
+ }
+ }
+ } catch (error) {
+ setPageLoader(false);
+ setLinkSuccess(false);
+ throw new Error(error);
+ }
+ }, []);
+
+ // delay verify requests by 10000ms
+ const debouncedEmail = debounce(verifyEmail, 1000);
+
+ useEffect(() => {
debouncedEmail(token);
- });
+ }, []);
return (
<>
diff --git a/src/components/Home/Hero.jsx b/src/components/Home/Hero.jsx
index 06f0859..c4e04b0 100644
--- a/src/components/Home/Hero.jsx
+++ b/src/components/Home/Hero.jsx
@@ -9,6 +9,7 @@ import slider3 from "../../assets/images/slider-3.jpg";
import CountDown from "../Helpers/CountDown";
import SliderCom from "../Helpers/SliderCom";
import HomeSliders from "./HomeSliders";
+import { useSelector } from "react-redux";
export default function Hero({ className }) {
const settings = {
@@ -20,6 +21,8 @@ export default function Hero({ className }) {
};
const sildeData =null;
const [addFavorite, setValue] = useState(false);
+
+ const {userDetails} = useSelector((state) => state?.userDetails)
const favoriteHandler = () => {
if (!addFavorite) {
setValue(true);
@@ -29,6 +32,11 @@ export default function Hero({ className }) {
toast.warn("Remove to Favorite List");
}
};
+
+ let loginDate = userDetails?.last_login.split(' ')[0]
+ let {firstname, lastname, email, profile_pic} = userDetails
+ let userEmail = email.split('@')[0]
+
return (
- Last Login : 10-10-2026
+ Last Login : {loginDate}
{/* user */}
-

+
- Brokln Simons
+ {`${firstname} ${lastname}`}
-
@broklinslam_75
+
@{userEmail}
{/* countdown */}
diff --git a/src/components/Home/index.jsx b/src/components/Home/index.jsx
index d11733a..89c4872 100644
--- a/src/components/Home/index.jsx
+++ b/src/components/Home/index.jsx
@@ -10,6 +10,8 @@ import UpdateTable from "./UpdateTable";
import HomeTaskDisplay from "./HomeTaskDisplay";
import UsersService from "../../services/UsersService";
import usersService from "../../services/UsersService";
+import { useSelector } from "react-redux";
+
export default function Home() {
const trending = datas.datas;
@@ -18,10 +20,12 @@ export default function Home() {
const userApi = new usersService();
const homeData = userApi.getHomeDate();
+ const {userDetails} = useSelector((state) => state?.userDetails)
+
return (
-
+
{/*
*/}
state?.userDetails)
+
const [myWalletList, setMyWalletList] = useState([]);
const api = new usersService();
@@ -87,6 +90,11 @@ export default function Header({ logoutModalHandler, sidebarHandler }) {
const setNotification = ()=> {
setToggleNotification.toggle()
}
+
+ // User Profile
+ let {firstname, lastname, email, profile_pic} = userDetails
+ let userEmail = email.split('@')[0]
+
return (
<>
@@ -463,17 +471,17 @@ export default function Header({ logoutModalHandler, sidebarHandler }) {
{/* profile-image */}
- Brokln Simons
+ {`${firstname} ${lastname}`}
- @broklinslam_75
+ @{userEmail}
diff --git a/src/components/Partials/Layout.jsx b/src/components/Partials/Layout.jsx
index 26e8f5b..3c666d6 100644
--- a/src/components/Partials/Layout.jsx
+++ b/src/components/Partials/Layout.jsx
@@ -22,9 +22,9 @@ export default function Layout({ children }) {
const logOut = () => {
localStorage.removeItem("email");
localStorage.clear();
- toast.success("Come Back Soon", {
- icon: `🙂`,
- });
+ // toast.success("Come Back Soon", {
+ // icon: `🙂`,
+ // });
navigate("/login", { replace: true });
};
diff --git a/src/components/Spinners/LoadingSpinner.jsx b/src/components/Spinners/LoadingSpinner.jsx
index ed48666..13f172f 100644
--- a/src/components/Spinners/LoadingSpinner.jsx
+++ b/src/components/Spinners/LoadingSpinner.jsx
@@ -1,8 +1,8 @@
import React from 'react'
-function LoadingSpinner({size, color}) {
+function LoadingSpinner({size, color, height}) {
return (
-
+