Automated machine translation
Datasets, Subsets, Articles, etc. support translation of their texts to other languages. This is handled by the abstract LangModel class and the corresponding implementations of TranslationService interface.
Genesys admins now manually update translations using the tools in the Genesys Dashboard. The objective here is to automate the translation for en, es, fr and pt-BR when any of these records are published for types that implement Publishable. It seems that only Crop and MenuItem don't implement Publishable and we ignore them.
Any time a Publishable type is saved and is published, we can generate an event to trigger the generation of its missing translations or update of existing machineTranslated = true translations only for the languages where automated translation is enabled:
AUTO_TRANSLATE = [ "en", "es", "fr", "pt-BR" ]
Please remember that to translate from non-English to other non-English language we translate via en. For example if the originalLanguageTag != "en" && targetLang != "en" then we go: es → en → fr.