You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 25 Next »

Role required: admin.

Choice list translation


To localize a choice list, please complete the steps below:

  1. Navigate to System Definition → Choice Options.
  2. Click New and fill in the form.
  3. Click Save or Save and Exit to apply changes.

Translated choice option form fields

FieldDescription
Table

Specify the table to which this choice option is related to.

Select the same table for the translated version as for the original one.

Column

Specify the column to which this choice option is related to.

Select the same column for the translated version as for the original one.

TitleType the translation of the source field there.
LanguageIn there, specify the two-symbol name of the language (ru, en, and so on). Generally, references to languages are stored in the Languages (sys_language) table.
ValueType the same value as specified for the source field.
OrderEnter the number to define the option order in the choice list.
HintText hint. This field is not mandatory.

Repeat this step for the rest options of the list.

If some of the choice options were not localized (for example, some added choice options in English but didn't add their translations), then in user locale other than English, choice lists containing untranslated options will display them in English by default, regardless of the current user locale.

To avoid this, please be careful when adding options to your choice lists.  

Localizing other interface elements


Please check before started that all necessary languages are created in the Languages (sys_language) table.

To localize any field of the Translated Text type (except for the choice list option whose translation was described above, or special interface elements like flash messages or Condition Operators), please complete the steps below:

  1. Navigate to System Localization → System Translations.
  2. Click New and fill in the form.
  3. Click Save or Save and Exit to apply changes.

Translated text form fields

FieldDescription
LanguageIn this reference field, specify the language of the translation (ru, en, and so on). Generally, references to languages are stored in the Languages (sys_language) table.
ValueType the translation of the source field there.
ColumnIn this reference field, specify the column containing the field being translating.
RecordType the ID of the record which should be translated.


Localizing static interface elements


To localize static interface elements, such as welcome messages, informational or warning messages, some other kind of messages, there are two tables implemented containing source messages and their translations,

  • the Source Messages (source_message) table - this table contains original messages in English;
  • the Messages (message) table - this table contains localized messages in the user's languages (Russian, Hindi, etc).

source_message


Field

Type

Description

idBig IntegerThe ID of the message.
categoryStringThe category of the message (for example, app).
messageTextThe text of the message.

message


Field

Type

Description

idReferenceReference to the Source Messages (source_message) table.
languageStringTwo-symbol name of the language (ru, en, etc).
translationTextThe translated message.

These two tables are bound by ID; it means that every message in the Source Messages (source_message) table has a unique ID, and its translated version in the Messages (message) table has the same ID.

For example, the "Login" record in the Source Messages (source_message) table has ID 15596431050000002. Moreover, the "Логин" record has the following prerequisites in the Messages (message) table:

ID15596431050000002
languageru

So, if you want to add some new records, you have to add them to both tables as well, in compliance with IDs order and in all the languages you need.

To do this, please complete the steps below:

  1. Navigate to System Localization → Messages
  2. Click New and fill in the form, and click Save.
  3. Click Save or Save and Exit to apply changes.

Please keep in mind that the IDs of the original message in the Source Messages (source_message) table and the localized message in the Messages (message) table must be the same to prevent malfunction.

Also, the language field must be populated, as well.


Please do not change original messages in the Source Messages (source_message) table, it can cause malfunction on the instance. If you need to make changes in any source message, then create a copy of it in the Messages (message) table with the desired text and fill in the Language field with the 'en' value.

Localization API


In SimpleOne, we have the SimpleMessage API class with the getMessage() message in it which is taking in an original message from the Source Message (source_message) table and returns a message in the user's language that is set as default in the system. To read more, please refer to the relevant article: SimpleMessage.

Also, you can use the s_i18n client-side class that intended to work with translated messages. It has two methods: getMessage() and getMessages(), that allow to get one or many messages in user language, respectively. For more information, please refer to our API reference containing information about this class.


  • No labels