From 7332d45c0386ba4a7ed17276dc1a4aae8e7d569e Mon Sep 17 00:00:00 2001 From: Timofey Boyko Date: Mon, 12 Aug 2024 15:40:03 +0300 Subject: [PATCH] Shared:Utils:Common: pass culture to handler logo url --- packages/login/src/app/(root)/layout.tsx | 7 ++++++- packages/login/src/components/GreetingContainer.tsx | 12 ++++++++++-- packages/login/src/components/SimpleNav.tsx | 13 ++++++++++--- packages/login/src/types/index.ts | 1 + packages/shared/utils/common.ts | 3 ++- 5 files changed, 29 insertions(+), 7 deletions(-) diff --git a/packages/login/src/app/(root)/layout.tsx b/packages/login/src/app/(root)/layout.tsx index f3de5d58d0..53d1c7ae01 100644 --- a/packages/login/src/app/(root)/layout.tsx +++ b/packages/login/src/app/(root)/layout.tsx @@ -35,6 +35,7 @@ import SimpleNav from "@/components/SimpleNav"; import { LoginContent, LoginFormWrapper } from "@/components/Login"; import GreetingContainer from "@/components/GreetingContainer"; import { getColorTheme, getSettings } from "@/utils/actions"; +import { cookies } from "next/headers"; const LanguageComboboxWrapper = dynamic( () => import("@/components/LanguageCombobox"), @@ -59,9 +60,12 @@ export default async function Layout({ const isRegisterContainerVisible = objectSettings?.enabledJoin; + const culture = + cookies().get("asc_language")?.value ?? objectSettings?.culture; + return (
- +
@@ -73,6 +77,7 @@ export default async function Layout({ > {children} diff --git a/packages/login/src/components/GreetingContainer.tsx b/packages/login/src/components/GreetingContainer.tsx index 1d4e96cf8a..528a97e10e 100644 --- a/packages/login/src/components/GreetingContainer.tsx +++ b/packages/login/src/components/GreetingContainer.tsx @@ -40,11 +40,19 @@ import { GreetingContainersProps } from "@/types"; import { DEFAULT_PORTAL_TEXT, DEFAULT_ROOM_TEXT } from "@/utils/constants"; import { getInvitationLinkData } from "@/utils"; -const GreetingContainer = ({ greetingSettings }: GreetingContainersProps) => { +const GreetingContainer = ({ + greetingSettings, + culture, +}: GreetingContainersProps) => { const { t } = useTranslation(["Login"]); const theme = useTheme(); - const logoUrl = getLogoUrl(WhiteLabelLogoType.LoginPage, !theme.isBase); + const logoUrl = getLogoUrl( + WhiteLabelLogoType.LoginPage, + !theme.isBase, + false, + culture, + ); const searchParams = useSearchParams(); diff --git a/packages/login/src/components/SimpleNav.tsx b/packages/login/src/components/SimpleNav.tsx index 6aa8b78a5a..4d50449a8a 100644 --- a/packages/login/src/components/SimpleNav.tsx +++ b/packages/login/src/components/SimpleNav.tsx @@ -61,14 +61,21 @@ const StyledSimpleNav = styled.div` StyledSimpleNav.defaultProps = { theme: Base }; -interface SimpleNavProps {} +interface SimpleNavProps { + culture?: string; +} -const SimpleNav = ({}: SimpleNavProps) => { +const SimpleNav = ({ culture }: SimpleNavProps) => { const theme = useTheme(); const isDark = !theme.isBase; - const logoUrl = getLogoUrl(WhiteLabelLogoType.LightSmall, isDark); + const logoUrl = getLogoUrl( + WhiteLabelLogoType.LightSmall, + isDark, + false, + culture, + ); return ( diff --git a/packages/login/src/types/index.ts b/packages/login/src/types/index.ts index bb4e03db09..d804405148 100644 --- a/packages/login/src/types/index.ts +++ b/packages/login/src/types/index.ts @@ -43,6 +43,7 @@ export type TDataContext = { export type GreetingContainersProps = { greetingSettings?: string; + culture?: string; }; export type LoginProps = { diff --git a/packages/shared/utils/common.ts b/packages/shared/utils/common.ts index 2a152dd527..45f76ffc1c 100644 --- a/packages/shared/utils/common.ts +++ b/packages/shared/utils/common.ts @@ -1103,8 +1103,9 @@ export function getLogoUrl( logoType: WhiteLabelLogoType, dark: boolean = false, def: boolean = false, + culture?: string, ) { - return `/logo.ashx?logotype=${logoType}&dark=${dark}&default=${def}`; + return `/logo.ashx?logotype=${logoType}&dark=${dark}&default=${def}${culture ? `&culture=${culture}` : ""}`; } export const getUserTypeName = (