I'm working on a TMS WEB Core app where I need to display values to the user in their preferred language. Currently, I'm using the FormatSettings
to handle formatting, but I'm struggling with getting the correct language configuration.
I know how to change some values of the current FormatSettings
and how it works with respect to the Web Browser.
In my app, I use FormatSettings
to introduce data and display the user-selected configuration.
When communicating with the backend, I force a concrete format momentarily, which works well.
However, sometimes the backend returns values that must be shown to the user in their browser's language.
Question Details:
How can I retrieve the Web Browser's language configuration (e.g., "en-US", "en-UK", "es-US", "es-ES", etc.) and store it in a variable within my TMS WEB Core app?
Are there any specific APIs or methods I should use to achieve this?
You can get it using either one of these two methods as they both return the same values.
GetBrowserLocale
function from the WEBLib.Tools
unit:uses
WEBLib.WebTools;
...
procedure TForm1.WebButton1Click(Sender: TObject);
begin
ShowMessage(GetBrowserLocale);
end;
window.navigator.language
function from the Web
unit:uses
Web;
...
procedure TForm1.WebButton1Click(Sender: TObject);
begin
ShowMessage(window.navigator.language);
end;