Two check-in messages appear in English on a French site. They are shown to a door operator whose browser cannot open the camera, which is exactly the moment the operator needs to understand what to do instead.
The current source strings are:
Camera scanning is not available in this browser. Open the ticket QR with your device camera app instead.Camera unavailable. Open the ticket QR with your device camera app instead.
The translation file instead carries the pre-rework wording, Camera scanning is not available here; scan or type the code into the field. and Camera unavailable; scan or type the code into the field. Those msgids no longer match anything in the source, so both messages fall through untranslated, and they also describe a field the operator can no longer type into.
Two further msgids in the same cluster are dead for the same reason. Ticket code and Point the camera at the ticket QR, or type / scan the code and submit. both labelled the visible code field that #3613083: Replace the check-in QR's signed token with a compact, indexed ticket hash replaced with an opaque hash nobody types.
Proposed resolution. Update the two camera entries in place to the current source wording with a refreshed French translation, and drop the two dead msgids.
Worth noting why this went unnoticed: the translation coverage checks run so far only extracted from PHP and YAML. Adding JavaScript (Drupal.t()) and Twig (the t filter) to the extraction is what surfaced it. With this fixed, every extractable string across PHP, YAML, Twig and JavaScript has a French entry.
Issue fork yoyaku-3614048
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #4
mably commented