-
Type:
New Feature
-
Resolution: Fixed
-
Affects Version/s: None
-
Component/s: InstantTranslate
-
Medium
-
None
-
New configs where admins can configure footer disclaimer in instant-translate.
-
None
-
Emptyshow more show less
Problem
InstantTranslate produces machine translations (MT and AI) without any human review of the generated output. A client requires a liability disclaimer to be shown to every portal user, for example (their wording): "translate5 generiert Übersetzungen mithilfe künstlicher Intelligenz (KI) ohne menschliche Überprüfung von Inhalt oder Qualität des maschinell erstellten Outputs. Wir übernehmen keinerlei Haftung für die Korrektheit oder Vollständigkeit der Übersetzungen."
Currently there is no place for such a text: the InstantTranslate portal page has no footer at all, neither in the current portal UI nor in the new React portal from TRANSLATE-5644, and there is no configuration to define such a text. Comparable portals show this kind of disclaimer at the bottom of the page.
Solution
Add a footer area at the bottom of the InstantTranslate portal (visible on both the text and the file translation tab) that shows a configurable disclaimer text.
- New configuration runtimeOptions.plugins.InstantTranslate.footerDisclaimer, type string, level 2 (instance level, editable in the system configuration UI), guiGroup InstantTranslate, default empty. When the value is empty (the default), no footer is rendered at all, so the change is fully backward compatible.
The configured value is localized on the backend before it is printed, analog to the other portal strings: the PHP side passes it through $translate>_(), so translations for other portal locales can be supplied via the normal translation process. The config holds the source text.-- If the disclaimer is needed in more then one language, admins of an instance must care for this within the given config, e.g. use a bilingual text (custom texts cannot be handled in the localization process).
- The value is treated as plain text; line breaks in the value are preserved in the rendered footer (no HTML support).
- Current portal UI: render the footer below the translation area in the portal view when the localized value is non-empty, styled as small muted text like in comparable portals; styling goes into the plugin's instanttranslate.css.
- New React portal (TRANSLATE-5644): on the portal rework branch, inject the localized value into the page bootstrap (Editor.data, key apps.instanttranslate.footerDisclaimer) and render the footer in the app layout below the content area, in both standalone and embedded mode. This part ships together with the portal cutover of TRANSLATE-5644.