Skip to content

[login] Follow-up fixes for OIDC SSO login (i18n + SSO buttons)#2054

Open
frankrousseau wants to merge 2 commits into
cgwire:mainfrom
frankrousseau:fix-oidc-locale-translations
Open

[login] Follow-up fixes for OIDC SSO login (i18n + SSO buttons)#2054
frankrousseau wants to merge 2 commits into
cgwire:mainfrom
frankrousseau:fix-oidc-locale-translations

Conversation

@frankrousseau

@frankrousseau frankrousseau commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Follow-up to #2051 (OIDC SSO login button).

Problems

  • feat: add OIDC SSO login button #2051 added login_with_oidc / login_oidc to all 11 non-English locales with the English text, so non-English users see English and the keys look already translated (never flagged for translation).
  • The SAML button's fallback (no IdP name set) references login.saml, which does not exist — the key is login_saml — so it renders the raw key. Latent: only hit when SAML is enabled without an IdP name.
  • Both SSO buttons bind is-loading to isLoginLoading (the credential-login spinner), but they are <a> full-page redirects, so that state never reflects their own click.

Solutions

  • Translate the OIDC keys in each locale by mirroring that locale's existing SAML strings (saml_idp_nameoidc_idp_name); en.js (source of truth) unchanged.
  • Point the SAML fallback at login.login_saml (OIDC already used the correct login.login_oidc).
  • Drop the inert is-loading binding from both SSO buttons.

PR cgwire#2051 added login_with_oidc / login_oidc to every locale with the
English text, so non-English users saw English and the keys looked already
translated (never flagged for translation). Mirror each locale's existing
SAML strings (saml_idp_name -> oidc_idp_name). en.js is unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@NicoPennec

Copy link
Copy Markdown
Member

de.json is missing

- The SAML button's no-IdP-name fallback called login.saml, a key that does
  not exist (it is login_saml), so it rendered the raw key. Point it at
  login.login_saml. OIDC already used the correct login.login_oidc.
- Both SSO buttons bound is-loading to isLoginLoading (the credential-login
  spinner). They are <a> links doing a full-page redirect, so that state
  never reflects their own click — drop the inert binding.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@frankrousseau frankrousseau changed the title [i18n] Translate OIDC login labels in all locales [login] Follow-up fixes for OIDC SSO login (i18n + SSO buttons) Jun 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants