Widget iframe parameters language and currency don't reflect document/account settings

Hi everyone,

I noticed an issue with the parameters that Grist sends to custom widgets: the language and currency query parameters in the iframe URL don’t reflect the document or account settings.

Observed behaviour

Even with the account language set to French and the document currency set to EUR, the Calendar widget (and likely other widgets) always displays in English. This is because those widgets rely on the language parameter to load translations.

Steps to reproduce

  1. Set your Grist account language to French (Account Settings → Language)

  2. Set your document language to French and currency to EUR (Document Settings)

  3. Open a page with the built-in Calendar widget

  4. Inspect the iframe src attribute in browser DevTools

Observed iframe URL

src="https://gristlabs.github.io/grist-widget/calendar/index.html
  ?access=full&readonly=false
  &culture=fr-FR         ← correct
  &language=en-US        ← wrong, should be fr or fr-FR
  &timeZone=Europe/Paris ← correct
  &currency=USD          ← wrong, should be EUR

Note that culture is sent correctly. Only language and currency appear to be hardcoded to US defaults.

Expected behaviour

  • language should reflect the account/document language (e.g. fr)

  • currency should reflect the document currency setting (e.g. EUR)

Environment

  • Grist version: online version on 2026-03-09

  • Browser: Chrome (145.0.7632.160) and Vivaldi (7.8.3925.74 with Chromium 144.0.7559.230)

Thanks for looking into this!

1 Like