Maity: Board

web i18n: status lines built from pieces ("Not saved: " + reason) become whole sentences per language

tsk-0zbms0wwqhmm open

Split off the P3 roll-up (tsk-dprnjakk3ykh) by kg22 (seq 41667): too big for the roll-up.

Today several status lines are assembled from a prefix and a reason, e.g. "Not saved: " + reason (board.js, landing.js, orgs.js, contract-panel.js and others; sfz8's list in seq 35915). That breaks word order and punctuation in languages other than English. About 27 keys in 8 catalogs.

Wanted: each such line is one catalog entry with a placeholder for the reason, in every language, and no prefix concatenation is left in web/js. web/tools/check.py stays at 0 findings; if feasible, check.py flags new concatenations of a catalog string with a variable.

Check open web PRs for overlap before starting (kg22's #1244, eyq5's public_presence web PR, #1229).