mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-08-20 19:59:11 +08:00
feat(embedded-chatbot): support overriding locale via URL params (#18509)
This commit is contained in:
parent
617611ee22
commit
bf031af7b1
@ -80,8 +80,30 @@ export const useEmbeddedChatbot = () => {
|
|||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (appInfo?.site.default_language)
|
const setLanguageFromParams = async () => {
|
||||||
|
// Check URL parameters for language override
|
||||||
|
const urlParams = new URLSearchParams(window.location.search)
|
||||||
|
const localeParam = urlParams.get('locale')
|
||||||
|
|
||||||
|
// Check for encoded system variables
|
||||||
|
const systemVariables = await getProcessedSystemVariablesFromUrlParams()
|
||||||
|
const localeFromSysVar = systemVariables.locale
|
||||||
|
|
||||||
|
if (localeParam) {
|
||||||
|
// If locale parameter exists in URL, use it instead of default
|
||||||
|
changeLanguage(localeParam)
|
||||||
|
}
|
||||||
|
else if (localeFromSysVar) {
|
||||||
|
// If locale is set as a system variable, use that
|
||||||
|
changeLanguage(localeFromSysVar)
|
||||||
|
}
|
||||||
|
else if (appInfo?.site.default_language) {
|
||||||
|
// Otherwise use the default from app config
|
||||||
changeLanguage(appInfo.site.default_language)
|
changeLanguage(appInfo.site.default_language)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
setLanguageFromParams()
|
||||||
}, [appInfo])
|
}, [appInfo])
|
||||||
|
|
||||||
const [conversationIdInfo, setConversationIdInfo] = useLocalStorageState<Record<string, Record<string, string>>>(CONVERSATION_ID_INFO, {
|
const [conversationIdInfo, setConversationIdInfo] = useLocalStorageState<Record<string, Record<string, string>>>(CONVERSATION_ID_INFO, {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user