JTranslate Plugin
Description
JTranslate aims to facilitate multi-language conversations by translating content on the fly. A French speaker can thus translate content written in Italian, German, Chinese, and vice versa. When creating or editing content, the WYSIWYG editor is complemented by a translation function that also preserves the structure and styles of paragraphs.
The translation of pages, or sections of pages, is also possible within the text editors (WYSIWYG).
The module integrates with the content present on the platform, including articles, wiki pages, blog posts, activity feeds, comment pages, conversations and calendars.
An application is also available to translate free text.
JTranslate provides a REST API and a reusable tag for embedding translation buttons on third-party pages.
Technical documentation is available at Jalios Doc.
The module has no dependencies as such; however, installation of collaborative modules (such as DB commentaires, ESN) is recommended to take full advantage of integration within JPlatform.
For the providers of the supported services, you can also refer to the separate sheets below:
Installation
Installation and configuration
- Installing the JTranslate module
- Install the provider(s) to support (refer to the provider files specified in the module presentation page).
- Configure the translation services as described in the dedicated section below.
- Define a user group and the rights via the ACL (see Managing access controls)
- Restart the application server (e.g. Tomcat)
- (Optional) If the DB commentaires module is installed and ready to use, make sure that the types of content to be translated are commentable (types must be enabled and configured).
Configuration of translation services
- Go to the module configuration page in the administration area.
The following properties can be defined :
Types allowing translation - List of content types that can be translated, if present. If the field is empty, all types will be translated.
Example: BlogPost WikiPage Article
Accepted languages for detection - Code of languages usually in use on the platform and open for translation. If the field is empty, all languages are detected on the content.
Example: fr en
API Preference - Ordered list of APIs to use for content translationExample
: Microsoft Google DeepL Systran Watson LinguaMachina
API Key DeepL Translator - Key to be used for logging in to this
serviceGoogle TranslateAPI Key - Key to be used for logging in to this
serviceMicrosoft Translator APIKey - Key to be used for logging in to this
serviceSystran Translation APIKey - Key to be used for logging in to this service
IBM Watson Identifiers - Identifiers to be used to connect to this service in JSon format.
Example :
{ "username": "___", "password": "___" }
Features
Click on the applications menu, then the Translation application.
The page loads the translation application, shown below.
Translating via the application
Translation within the application is performed according to the following parameters:
- Original language (Optional) - If not specified, the language of the text will be detected automatically.
- Destination language (Required) - The language targeted for translation.
- Translation Service (Optional) - If not specified, the most appropriate translator according to the priority order of the services, and the context, will be automatically selected.
- Text to be translated (Required) - Enter the text to be translated freely via the WYSIWYG field.
- Translated text (cannot be edited) - The result can be copied and pasted into another application.
The translation is done automatically once the text to be translated has been entered or when the parameters are changed.
Translate a comment
On a page containing comments, you have the ability to translate on the fly content written in a language you don't understand, as shown below.
Translating activity feeds
Translating content placed within certain portlets, for example in the Member Activities portlet, can be useful to facilitate everyday conversation.
Translating microblogging
Translating a Web page
Translate an article 
Translating a conversation
WYSIWYG integration
WYSIWYG type content is present throughout the platform and integrates the JTranslate module.
This makes it possible to translate content on the fly in any WYSIWYG field, as shown below.
Help for writing content
Caching and content protection
The module uses a local cache system to reduce the number of remote queries needed to translate all user content. When a user requests the translation of content, the result is taken from the cache whenever possible. Internal content is protected and not forwarded to departments for translation, also limiting the size of queries
Access control management
The administration interface allows you to enter the keys of the translation services to be used. In addition to this, the module also provides ACL resources to better manage access to certain functionalities such as authorizing the translation of activity flows, translation of comments or content.
Extensibility
JTranslate offers extension points presented in the technical documentation at Jalios Doc.
FAQ
JTranslate connects and can interact with the following services:
The addition of new services is possible by following a documented process.
Each service has its own policy regarding confidentiality and management of personal data.
JTranslate integrates naturally with the publications and types present on the platform
The following modules are directly supported for integration with JTranslate
Other types and plugins can also benefit from translation if they are based on the platform's generic types or if they integrate the dedicated JTranslate tag.