diff --git a/next.config.js b/next.config.js index b11b161e..898d4a52 100644 --- a/next.config.js +++ b/next.config.js @@ -11,6 +11,8 @@ const nextConfig = { BACK_API_VERSION: process.env.BACK_API_VERSION, FRONT_APP_HOST: process.env.FRONT_APP_HOST, FRONT_APP_PORT: process.env.FRONT_APP_PORT, + IDNOT_AUTHORIZE_ENDPOINT: process.env.IDNOT_AUTHORIZE_ENDPOINT, + IDNOT_CLIENT_ID: process.env.IDNOT_CLIENT_ID, }, }; diff --git a/src/front/Api/Auth/IdNot/index.ts b/src/front/Api/Auth/IdNot/index.ts index 11b6f7be..989112f1 100644 --- a/src/front/Api/Auth/IdNot/index.ts +++ b/src/front/Api/Auth/IdNot/index.ts @@ -11,28 +11,16 @@ export default class Auth extends BaseApiService { } public static getInstance(): Auth { - return (this.instance = this.instance ?? new Auth()); - } - - public async userSignin() { - const url = new URL( - "https://qual-connexion.idnot.fr/IdPOAuth2/authorize/idnot_idp_v1?client_id=4501646203F3EF67&redirect_uri=http://0.0.0.0:3000/authorized-client&scope=openid,profile,offline_access&response_type=code" - ); - try { - return await this.getRequest(url); - } catch (err) { - this.onError(err); - return Promise.reject(err); - } + return (this.instance = this.instance ?? new this()); } public async getIdnotJwt(autorizationCode: string | string[]): Promise { - const baseBackUrl = FrontendVariables.getInstance().BACK_API_PROTOCOL + - FrontendVariables.getInstance().BACK_API_HOST + - (FrontendVariables.getInstance().BACK_API_PORT ? ":" + FrontendVariables.getInstance().BACK_API_PORT : ""); - const url = new URL( - `${baseBackUrl}/api/v1/idnot-user/${autorizationCode}` - ); + const variables = FrontendVariables.getInstance(); + const baseBackUrl = + variables.BACK_API_PROTOCOL + + variables.BACK_API_HOST + + (variables.BACK_API_PORT ? ":" + variables.BACK_API_PORT : ""); + const url = new URL(`${baseBackUrl}/api/v1/idnot-user/${autorizationCode}`); try { return await this.postRequest(url); } catch (err) { diff --git a/src/front/Components/Layouts/Login/index.tsx b/src/front/Components/Layouts/Login/index.tsx index d0e3b3d9..885bb642 100644 --- a/src/front/Components/Layouts/Login/index.tsx +++ b/src/front/Components/Layouts/Login/index.tsx @@ -3,34 +3,47 @@ import Typography, { ITypo } from "@Front/Components/DesignSystem/Typography"; import BasePage from "../Base"; import classes from "./classes.module.scss"; import CoffreIcon from "@Assets/Icons/coffre.svg"; -import LandingImage from "./landing-connect.png" +import LandingImage from "./landing-connect.png"; import Image from "next/image"; import DefaultDoubleSidePage from "@Front/Components/LayoutTemplates/DefaultDoubleSidePage"; import { FrontendVariables } from "@Front/Config/VariablesFront"; export default class LoginClass extends BasePage { - public override render(): JSX.Element { - return ( - -
- coffre -
Connexion espace professionnel
- -
Vous n’arrivez pas à vous connecter ?
- -
-
- ); - } + public override render(): JSX.Element { + return ( + +
+ coffre + +
+ Connexion espace professionnel +
+
+ + +
+ Vous n’arrivez pas à vous connecter ? +
+
+ +
+
+ ); + } - private redirectUserOnConnection() { - // check variable - const baseFronturl = FrontendVariables.getInstance().BACK_API_PROTOCOL + - FrontendVariables.getInstance().FRONT_APP_HOST + - (FrontendVariables.getInstance().FRONT_APP_PORT ? ":" + FrontendVariables.getInstance().FRONT_APP_PORT : ""); - - const url = `https://qual-connexion.idnot.fr/IdPOAuth2/authorize/idnot_idp_v1?client_id=4501646203F3EF67&redirect_uri=${baseFronturl}/authorized-client&scope=openid,profile,offline_access&response_type=code` - - window.location.assign(url) - } -} \ No newline at end of file + private redirectUserOnConnection() { + const variables = FrontendVariables.getInstance(); + const baseFronturl = + variables.BACK_API_PROTOCOL + + variables.FRONT_APP_HOST + + (variables.FRONT_APP_PORT ? ":" + variables.FRONT_APP_PORT : ""); + const authorizeEndPoint = variables.IDNOT_AUTHORIZE_ENDPOINT; + const clientId = variables.IDNOT_CLIENT_ID; + const url = `${authorizeEndPoint}?client_id=${clientId}&redirect_uri=${baseFronturl}/authorized-client&scope=openid,profile,offline_access&response_type=code`; + window.location.assign(url); + } +} diff --git a/src/front/Components/Layouts/LoginCallback/index.tsx b/src/front/Components/Layouts/LoginCallback/index.tsx index 7f7a1512..f0bf45d3 100644 --- a/src/front/Components/Layouts/LoginCallback/index.tsx +++ b/src/front/Components/Layouts/LoginCallback/index.tsx @@ -81,7 +81,6 @@ export default function LoginCallBack(props: IPropsClass) { await authService.getIdnotJwt(code); } catch (error) { console.error(error); - // Router.push('/login'); } }; getIdNotJwt(); diff --git a/src/front/Config/VariablesFront.ts b/src/front/Config/VariablesFront.ts index 33ddcfda..89678d93 100644 --- a/src/front/Config/VariablesFront.ts +++ b/src/front/Config/VariablesFront.ts @@ -15,6 +15,10 @@ export class FrontendVariables { public FRONT_APP_PORT!: string; + public IDNOT_AUTHORIZE_ENDPOINT!: string; + + public IDNOT_CLIENT_ID!: string; + private constructor() {} public static getInstance(): FrontendVariables { diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 41dd8b44..babb45aa 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -19,9 +19,11 @@ type AppPropsWithLayout = AppProps & { backApiVersion: string, frontAppHost: string, frontAppPort: string, + idNotAuthorizeEndpoint: string; + idNotClientId: string; }; -const MyApp = (({ Component, pageProps, backApiProtocol, backApiHost, backApiPort, backApiRootUrl, backApiVersion, frontAppHost, frontAppPort }: AppPropsWithLayout) => { +const MyApp = (({ Component, pageProps, backApiProtocol, backApiHost, backApiPort, backApiRootUrl, backApiVersion, frontAppHost, frontAppPort, idNotAuthorizeEndpoint, idNotClientId }: AppPropsWithLayout) => { const getLayout = Component.getLayout ?? ((page) => ); FrontendVariables.getInstance().BACK_API_PROTOCOL = backApiProtocol; @@ -31,6 +33,9 @@ const MyApp = (({ Component, pageProps, backApiProtocol, backApiHost, backApiPor FrontendVariables.getInstance().BACK_API_VERSION = backApiVersion; FrontendVariables.getInstance().FRONT_APP_HOST = frontAppHost; FrontendVariables.getInstance().FRONT_APP_PORT = frontAppPort; + FrontendVariables.getInstance().IDNOT_AUTHORIZE_ENDPOINT = idNotAuthorizeEndpoint; + FrontendVariables.getInstance().IDNOT_CLIENT_ID = idNotClientId; + return getLayout(); }) as AppType; @@ -44,6 +49,8 @@ MyApp.getInitialProps = async () => { backApiVersion: process.env["BACK_API_VERSION"], frontAppHost: process.env["FRONT_APP_HOST"], frontAppPort: process.env["FRONT_APP_PORT"], + idNotAuthorizeEndpoint: process.env["IDNOT_AUTHORIZE_ENDPOINT"], + idNotClientId: process.env["IDNOT_CLIENT_ID"], }; }