The untranslated strings ended up as an empty string in a localized angular client

Bug #1968041 reported by Eva Cerninakova
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Confirmed
Undecided
Unassigned

Bug Description

Some strings that have not been translated in POEditor are displayed as empty space in the EG2 interface (instead of an English phrase that should be displayed if no translation is available), particularly in the Acquisition Administration splash page (see the attachment).

I guess that this applies to items labeling links to Acquisition setting interfaces that were present in previous Evergreen versions and later have been merged and renamed.

Revision history for this message
Eva Cerninakova (ece) wrote :
tags: added: acq-admin
Revision history for this message
Eva Cerninakova (ece) wrote :

The issue is stil relevant in Evergreen 3.9.0.

It also applies to the Simple Reports interface (see the attachment)

Revision history for this message
Eva Cerninakova (ece) wrote :

Strings that are missing in Evergreen staff client interface, are currently available and translated in Launchpad.

Revision history for this message
Linda Jansova (skolkova-s) wrote :

It still appears to be the case now; e.g., the following page confirms it: https://bugsquash3.mobiusconsortium.org/eg2/cs-CZ/staff/admin/local/splash.

Revision history for this message
Linda Jansova (skolkova-s) wrote :
Revision history for this message
Linda Jansova (skolkova-s) wrote :

There is a related bug which focuses on missing translations in the main menu: https://bugs.launchpad.net/evergreen/+bug/2032753.

Changed in evergreen:
status: New → Confirmed
Revision history for this message
Eva Cerninakova (ece) wrote :

Still issue in Evergreen 3.11+.

I would say it is a much more serious problem than it was in previous versions. In some Angularized interfaces, button descriptions, menu items and other strings are missing. This makes these interfaces to be  completely unusable in the localized version
See the attachments comparing Blake's test server https://bugsquash3.mobiusconsortium.org with Czech localization on and the Terran's test server https://terran-main.gapines.org in English.

Revision history for this message
Eva Cerninakova (ece) wrote :
Revision history for this message
Eva Cerninakova (ece) wrote :
Revision history for this message
Eva Cerninakova (ece) wrote :
Revision history for this message
Eva Cerninakova (ece) wrote :
Eva Cerninakova (ece)
tags: added: bootstrap-blocker i18n
removed: acq-admin
Revision history for this message
Eva Cerninakova (ece) wrote :

I went through the above interfaces where the problem had previously occurred using Blake's bugsqash3 test server (https://bugsquash3.mobiusconsortium.org/eg2/staff/) and didn't find any empty string. This means the problem seems to be solved.

However, as currently there are no angular strings untranslated to Czech in the POEditor, I am not 100 % sure, what would happen in such a case.

Changed in evergreen:
assignee: nobody → Jane Sandberg (sandbergja)
Revision history for this message
Jane Sandberg (sandbergja) wrote (last edit ):

I edited the "Export Empty Translations from" setting in PoEditor here: https://poeditor.com/projects/settings?id=218177

It should now export English strings if there is no Czech translation yet. Maybe not so useful for the Czech translation, but helpful for languages that aren't as fully translated. It won't help in cases where:
* the string hasn't yet been uploaded to PoEditor
* in a backport branch, the needed strings differ from what is in PoEditor.

I think we should have a script that:
1. Downloads relevant translations from PoEditor's API
2. Runs `npm run export-strings` to catch any new strings that have not yet been uploaded to PoEditor
3. Augments the translated XTB file from PoEditor with the new strings from the export-strings XMB file, so that no string in the Angular client is without a value.

We could run this script as part of the release process, but also could run it any time we want.

Revision history for this message
Linda Jansova (skolkova-s) wrote :

Given comments #12 and #13, it should be mostly solved :-)! Thank you!

Actually, I have managed to find 25 untranslated strings in POEditor:

https://poeditor.com/projects/po_edit?per_page=20&id=218177&id_language=38&filter=ut&order=&search=

These are mostly strings from fixed fields coming from this file:

https://git.evergreen-ils.org/?p=Evergreen.git;a=blob;f=Open-ILS/src/eg2/src/app/staff/share/marc-edit/fixed-fields-editor.component.html;hb=8481ad5e6c8b20c5158b67e964ea479040e86a9a

These would probably be visible in the MARC editor only under rather specific circumstances, so I can't say for sure what would happen if such a string pops up.

However, I have been able to find the untranslated banner text "SVF Record Attribute Coded Value Map Configuration" (from https://git.evergreen-ils.org/?p=Evergreen.git;a=blob;f=Open-ILS/src/eg2/src/app/staff/admin/server/coded-value-maps/coded-value-maps.component.html;hb=8481ad5e6c8b20c5158b67e964ea479040e86a9a).

This one is visible on Terran's server (https://terran-testbox.gapines.org/eg2/en-US/staff/admin/server/config/coded_value_map) in English (which is okay as the staff client as a whole is in English) but no text (just a pale blue rectangle background) can be seen on Blake's server (https://bugsquash3.mobiusconsortium.org/eg2/cs-CZ/staff/admin/server/config/coded_value_map).

So this string could be something to check when the translations from POEditor (when the new setting takes effect) are loaded back to Evergreen. If no translation is added in the meantime, we could then check whether this English string is visible in the Czech staff client.

Revision history for this message
Eva Cerninakova (ece) wrote :

I am not sure whether something has changed in the meantime, but I can see the text both on Terran's and Blake's server (see the attachment).

Revision history for this message
Eva Cerninakova (ece) wrote :

I'm sorry, I had set the Czech language, but I didn't notice that the Czech language was not applied for the interface some reason. When the interface is displayed in Czech, I also do not see the text "SVF Record Attribute Coded Value Map Configuration" (I only seea blue rectangle - see the attachment).

Revision history for this message
Linda Jansova (skolkova-s) wrote :

Well, in the English interface it is correct on both servers but when the staff client on Blake's server is switched to Czech, it seems that the banner text is not there anymore. Anyway, it is something worth checking after translation strings are loaded back to Evergreen.

Revision history for this message
Jane Sandberg (sandbergja) wrote :

A note that I opened a pull request with a script like the one I described in comment #13, which can be found on bug 2037106.

Changed in evergreen:
assignee: Jane Sandberg (sandbergja) → nobody
tags: added: release-process
Revision history for this message
Linda Jansova (skolkova-s) wrote :

Thank you very much, Jane!

tags: removed: bootstrap-blocker
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.