From 514cb3bf7bbd027c897a60f81d55968f56abc9e0 Mon Sep 17 00:00:00 2001 From: Danel Kungla Date: Tue, 9 Sep 2025 12:36:19 +0300 Subject: [PATCH 1/3] redirect homepage to website in production. support lang param --- middleware.ts | 12 ++++++++++++ packages/ui/src/makerkit/language-selector.tsx | 1 + 2 files changed, 13 insertions(+) diff --git a/middleware.ts b/middleware.ts index 1507e71..0c0e3b3 100644 --- a/middleware.ts +++ b/middleware.ts @@ -27,6 +27,8 @@ const getUser = (request: NextRequest, response: NextResponse) => { export async function middleware(request: NextRequest) { const secureHeaders = await createResponseWithSecureHeaders(); const response = NextResponse.next(secureHeaders); + const url = new URL(request.url); + const lang = url.searchParams.get('lang'); // set a unique request ID for each request // this helps us log and trace requests @@ -35,6 +37,10 @@ export async function middleware(request: NextRequest) { // apply CSRF protection for mutating requests const csrfResponse = await withCsrfMiddleware(request, response); + if (lang) { + csrfResponse.cookies.set('lang', lang); + } + // handle patterns for specific routes const handlePattern = matchUrlPattern(request.url); @@ -176,6 +182,12 @@ function getPatterns() { return NextResponse.redirect( new URL(pathsConfig.app.home, req.nextUrl.origin).href, ); + } else { + if (process.env.NODE_ENV === 'production') { + return NextResponse.redirect( + new URL('https://medreport.ee', req.nextUrl.origin).href, + ); + } } }, }, diff --git a/packages/ui/src/makerkit/language-selector.tsx b/packages/ui/src/makerkit/language-selector.tsx index f7542f0..6ac5855 100644 --- a/packages/ui/src/makerkit/language-selector.tsx +++ b/packages/ui/src/makerkit/language-selector.tsx @@ -53,6 +53,7 @@ export function LanguageSelector({ } if (!userId) { + localStorage.setItem('lang', locale); return i18n.changeLanguage(locale); } From ebab0556ba465c6eda1906feb6106f2d9f3b3a2c Mon Sep 17 00:00:00 2001 From: Danel Kungla Date: Tue, 9 Sep 2025 12:39:00 +0300 Subject: [PATCH 2/3] change else to else if --- middleware.ts | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/middleware.ts b/middleware.ts index 0c0e3b3..0c04a83 100644 --- a/middleware.ts +++ b/middleware.ts @@ -182,12 +182,10 @@ function getPatterns() { return NextResponse.redirect( new URL(pathsConfig.app.home, req.nextUrl.origin).href, ); - } else { - if (process.env.NODE_ENV === 'production') { - return NextResponse.redirect( - new URL('https://medreport.ee', req.nextUrl.origin).href, - ); - } + } else if (process.env.NODE_ENV === 'production') { + return NextResponse.redirect( + new URL('https://medreport.ee', req.nextUrl.origin).href, + ); } }, }, From 86a5931b66e4a802bec55ff61ffddfbb3bebed21 Mon Sep 17 00:00:00 2001 From: Danel Kungla Date: Tue, 9 Sep 2025 15:25:31 +0300 Subject: [PATCH 3/3] update condition for production redirect --- middleware.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/middleware.ts b/middleware.ts index 0c04a83..b000a1c 100644 --- a/middleware.ts +++ b/middleware.ts @@ -182,7 +182,11 @@ function getPatterns() { return NextResponse.redirect( new URL(pathsConfig.app.home, req.nextUrl.origin).href, ); - } else if (process.env.NODE_ENV === 'production') { + } else if ( + !['test', 'localhost'].some((pathString) => + process.env.NEXT_PUBLIC_SITE_URL?.includes(pathString), + ) + ) { return NextResponse.redirect( new URL('https://medreport.ee', req.nextUrl.origin).href, );