+
+
+ Veuillez vous reconnecter.
+
+
+
);
}
diff --git a/src/front/Components/Layouts/LoginCallback/index.tsx b/src/front/Components/Layouts/LoginCallback/index.tsx
index 5079e38b..44e1ba60 100644
--- a/src/front/Components/Layouts/LoginCallback/index.tsx
+++ b/src/front/Components/Layouts/LoginCallback/index.tsx
@@ -13,6 +13,7 @@ import Loader from "@Front/Components/DesignSystem/Loader";
import UserStore from "@Front/Stores/UserStore";
import Link from "next/link";
import JwtService from "@Front/Services/JwtService/JwtService";
+import CookieService from "@Front/Services/CookieService/CookieService";
export default function LoginCallBack() {
const router = useRouter();
@@ -20,10 +21,6 @@ export default function LoginCallBack() {
useEffect(() => {
async function getUser() {
const code = router.query["code"];
- const refreshedTokens = await JwtService.getInstance().refreshToken();
- if (refreshedTokens) {
- return router.push(Module.getInstance().get().modules.pages.Folder.props.path);
- }
if (code) {
try {
const token = await Auth.getInstance().getIdnotJwt(code as string);
@@ -35,7 +32,13 @@ export default function LoginCallBack() {
return;
}
}
- return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=1");
+ const refreshToken = CookieService.getInstance().getCookie("leCoffreRefreshToken");
+ if(!refreshToken) return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=1");
+ const isTokenRefreshed = await JwtService.getInstance().refreshToken(refreshToken);
+ if (isTokenRefreshed) {
+ return router.push(Module.getInstance().get().modules.pages.Folder.props.path);
+ }
+ return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=2");
}
getUser();
}),
diff --git a/src/front/Components/Layouts/LoginCallbackCustomer/index.tsx b/src/front/Components/Layouts/LoginCallbackCustomer/index.tsx
index 214bfca6..1db7b577 100644
--- a/src/front/Components/Layouts/LoginCallbackCustomer/index.tsx
+++ b/src/front/Components/Layouts/LoginCallbackCustomer/index.tsx
@@ -13,6 +13,7 @@ import CustomerStore from "@Front/Stores/CustomerStore";
import Module from "@Front/Config/Module";
import Link from "next/link";
import JwtService from "@Front/Services/JwtService/JwtService";
+import CookieService from "@Front/Services/CookieService/CookieService";
export default function LoginCallBackCustomer() {
const router = useRouter();
@@ -20,10 +21,6 @@ export default function LoginCallBackCustomer() {
useEffect(() => {
const getReport = async () => {
const tokenid360 = router.query["token"];
- const refreshedTokens = await JwtService.getInstance().refreshToken();
- if (refreshedTokens) {
- return router.push(Module.getInstance().get().modules.pages.Folder.pages.Select.props.path);
- }
if (tokenid360) {
let token: ICustomerTokens | undefined;
try {
@@ -36,7 +33,13 @@ export default function LoginCallBackCustomer() {
CustomerStore.instance.connect(token.accessToken, token.refreshToken);
router.push(Module.getInstance().get().modules.pages.Folder.pages.Select.props.path);
}
- return router.push(Module.getInstance().get().modules.pages.CustomersLogin.props.path + "?error=1");
+ const refreshToken = CookieService.getInstance().getCookie("leCoffreRefreshToken");
+ if(!refreshToken) return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=1");
+ const isTokenRefreshed = await JwtService.getInstance().refreshToken(refreshToken);
+ if (isTokenRefreshed) {
+ return router.push(Module.getInstance().get().modules.pages.Folder.pages.Select.props.path);
+ }
+ return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=2");
};
getReport();
}),
diff --git a/src/front/Services/JwtService/JwtService.ts b/src/front/Services/JwtService/JwtService.ts
index dbe8ca4d..dc2e30fe 100644
--- a/src/front/Services/JwtService/JwtService.ts
+++ b/src/front/Services/JwtService/JwtService.ts
@@ -35,6 +35,19 @@ export default class JwtService {
return (this.instance ??= new this());
}
+ public getUserJwtPayload(): IUserJwtPayload | undefined {
+ const accessToken = CookieService.getInstance().getCookie("leCoffreAccessToken");
+ if (!accessToken) return;
+ return jwt_decode(accessToken);
+ }
+
+ public getCustomerJwtPayload(): ICustomerJwtPayload | undefined {
+ const accessToken = CookieService.getInstance().getCookie("leCoffreAccessToken");
+ if (!accessToken) return;
+ return jwt_decode(accessToken);
+ }
+
+
public decodeJwt(): IUserJwtPayload | undefined {
const accessToken = CookieService.getInstance().getCookie("leCoffreAccessToken");
if (!accessToken) return;
@@ -51,14 +64,12 @@ export default class JwtService {
* @description : set a cookie with a name and a value that expire in 7 days
* @throws {Error} If the name or the value is empty
*/
- public async refreshToken() {
- const refreshToken = CookieService.getInstance().getCookie("leCoffreRefreshToken");
- const variables = await FrontendVariables.getInstance();
- if (!refreshToken) return false;
+ public async refreshToken(refreshToken: string): Promise