modmore / ClientConfig

ClientConfig is a MODX Revolution Extra to allow clients to maintain settings in a user friendly way.
https://docs.modmore.com/en/Open_Source/ClientConfig/index.html
MIT License
28 stars 27 forks source link

[BOUNTY] Multi-language support / i18n of labels, descriptions and display-values #201

Open sebastian-marinescu opened 1 year ago

sebastian-marinescu commented 1 year ago

Summary

Currently all my ClientConfig-settings have German labels. As I'm probably getting international clients soon, I'd need to make it dynamic.

Step to reproduce

On the setting's label I tried using: [[%website.form.name]], %website.form.name and website.form.name.

Observed behavior

I see the string, and not a translated lexicon-value.

Expected behavior

A way for internationalization on the labels and descriptions fields.

Environment

MODX Revolution 2.8.4-pl, ClientConfig 2.3.3-pl

sebastian-marinescu commented 1 year ago

As I wasn't to sure, that my lexicon would be loaded in the ClientConfig-CMP, I also tried: [[%clientconfig.label]], %clientconfig.label and clientconfig.label - which also doesn't work.

It should be possible on settings and groups.

sebastian-marinescu commented 1 year ago

I started a bounty of 50,- $ on this: https://app.bountysource.com/issues/117206875-multi-language-support-i18n-of-labels-and-descriptions

Mark-H commented 1 year ago

Should that follow the language of the context (in multi context mode) or of the user?

sebastian-marinescu commented 1 year ago

I think it should follow the manager-language that the manager chooses.

There could be an international editorial staff, where one uses the CMS in EN, another one in DE, and another one in CZ. Each one should feel comfortable using/editing stuff, hence it should be in the manager-user's language.

sebastian-marinescu commented 1 year ago

I just noticed, that ideally this would also work for values - consider this: Normal==normal||Kursiv==italic as options on a selectbox.

Would be beautiful, if I could do something like this: %website.settings.fonts.normal==normal||%website.settings.fonts.italic==italic