Skip to content

Translate the sign-in and account pages into every language the device speaks - #28

Open
Ptitlouis6012 wants to merge 1 commit into
TigerTag-Project:mainfrom
Ptitlouis6012:feat/web-pages-six-languages
Open

Ptitlouis6012 wants to merge 1 commit into
TigerTag-Project:mainfrom
Ptitlouis6012:feat/web-pages-six-languages

Conversation

@Ptitlouis6012

Copy link
Copy Markdown
Contributor

What this changes

The pages the QR code opens on a phone — the TigerTag sign-in, the Google pairing wait, the account page and the short replies — read their words from a table in webcfg.cpp that has four columns (PT, EN, ES, FR). German, Italian, Polish and Chinese fall back to English there today, and so would Russian and Dutch once #26 is in.

  • The table gains six columns, DE, IT, PL, ZH, RU and NL, for all fifty rows. They are translated from the English, with the same words as the device screens (Konto, Drucker, 账户, аккаунт, spoel...).
  • wl() maps each language to its column; the two Portuguese still share the first.
  • The five rows that are pasted into a JavaScript string carry no straight apostrophe, so they cannot end the string early.
  • check-i18n.py reads the column count from the declaration, so it checks the new width as is; only its wording and one doc that quoted "four languages" change.

Why: someone who picked their language on the device should not meet an English page on the phone half way through signing in.

Builds on #26

This needs LANG_RU and LANG_NL, which #26 adds, so the branch starts from #26's branch: its first commit is #26's, and the one to review here is the last (Translate the sign-in and account pages...). Once #26 is merged the diff here shrinks to that one commit.

I checked that the two do not conflict, in either merge order: this commit applied to main alone against #26, and #26 squashed onto main and then this branch. They only share webcfg.cpp, in different places (LANG_CODES there, the table and wl() here). If #26 changes before it is merged, I will rebase this one on top.

What you tested it on

Built with pio run -e tigerspool; bash scripts/verify.sh --quick passes except "generated files match their generator", which also fails on a clean main on the machine used. check-i18n.py reports both tables clean (fifty rows, ten columns each, in the enum's order), and I printed a sample of rows per column to check each holds the right language.

Not tested: the pages in a browser on a device. The strings are static data and the portal page was already checked on a device in #26, but nobody has opened the sign-in page in these languages.

Checklist

  • One concern. A rename and a behaviour change in one diff cannot be reviewed.
  • English — comments, identifiers, log messages.
  • No credentials, keys or tokens added anywhere.
  • Any hardware constant carries a comment saying what breaks without it. (n/a, no hardware constant touched)
  • Docs updated if behaviour changed. (the one line that quoted "four languages")
  • CHANGELOG.md updated for anything user-visible. (left to the release ritual)

…e speaks

The pages the QR code opens on a phone - the TigerTag sign-in, the Google
pairing wait, the account page and the short replies - read their words from
a table of four columns (PT, EN, ES, FR). German, Italian, Polish, Chinese
and, with the previous commit, Russian and Dutch all fell back to English.

The table gains six columns, DE, IT, PL, ZH, RU and NL, for all fifty rows,
translated from the English; wl() maps each language to its column. Rows that
are pasted into a JavaScript string carry no straight apostrophe.

check-i18n.py already reads the column count from the declaration, so it
checks the new width on its own; only its wording and the one doc that
quoted "four languages" change.
@Ptitlouis6012
Ptitlouis6012 force-pushed the feat/web-pages-six-languages branch from 480eee4 to 4b89d3a Compare October 15, 2026 05:17

This branch has not been deployed

No deployments
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.

1 participant