Disable i18n translation in dialogs | Community
Skip to main content
gabrielav200407
Level 2
March 7, 2016
Solved

Disable i18n translation in dialogs

  • March 7, 2016
  • 13 replies
  • 4937 views

Hello,

I would like to disable i18n translation in dialogs. I have the situation where I load the options for a dropdown dynamically, from a servlet. The options are exactly how they should appear in the dropdown. However, CQ seems to do some additional translation for the options. Is there a way to disable this?

Thanks

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by smacdonald2008

For 5.6 - overlay that and replace use of that without that logic that translates it. 

Can you post a screenshot too. I have never heard of this happening before. 

13 replies

__96
Level 4
March 7, 2016

Can you explain a little more what CQ is changing because I have worked on a similar scenario but never faced such an issue. A little more detail might help.

Thanks,

Samir

gabrielav200407
Level 2
March 7, 2016

Let's say I have an option text called "change". In case a label called "change" exists, then the translated value of the label "change" will be used in the dropdown. 

Everything is fine as long as labels having the exact same value as the "text" property do not exist.

smacdonald2008
Level 10
March 7, 2016

See this community article: 

https://helpx.adobe.com/experience-manager/using/dialog_fields_servlets.html

The values in the drop down are the same values returned by the servlet. CQ does not attempt to translate these values. 

edubey
Level 10
March 7, 2016

It would be helpful if you tell which code you are using to populate drop down..

gabrielav200407
Level 2
March 7, 2016

This is the dialog:

<?xml version="1.0" encoding="UTF-8"?> <jcr:root xmlns:cq="http://www.day.com/jcr/cq/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" jcr:primaryType="cq:Dialog"> <items jcr:primaryType="cq:Widget" xtype="tabpanel"> <items jcr:primaryType="cq:WidgetCollection"> <app-properties jcr:primaryType="cq:Panel" title="App Properties"> <items jcr:primaryType="cq:WidgetCollection"> <type jcr:primaryType="cq:Widget" fieldLabel="App Version" name="./version" type="select" defaultValue="" xtype="selection" optionsRoot="." optionsTextField="value" optionsValueField="key" options="$PATH.versions.json"/> </items> </app-properties> </items> </items> </jcr:root> 

The results retrieved by $PATH.versions.json are correct. However something happens when they are present in the dialog...

The servlet result is:

[{"key":"","value":"(Empty)"},{"key":"v_1","value":"v_1"}]

However, because there is a label for v_1 with the value test for English, then instead of showing a dropdown with options: (Empty) and v_1, a dropdown with options (Empty) and test will be displayed.

smacdonald2008
Level 10
March 7, 2016

See the community article and the dialog in it - notice the values returned by the servlet - you will never get translated values using that code. 

gabrielav200407
Level 2
March 7, 2016

Thanks for the answer. However, I don't think it's related to the server side code. As I said, the returned results are correct. The problem is somewhere on the front end side.

smacdonald2008
Level 10
March 7, 2016

I have never seen this before - this is not a configurable setting that can be set. Can you post a screen shot of what you are seeing. 

gabrielav200407
Level 2
March 7, 2016

Hmm, I think I'll test this on a fresh project. It might be some custom implementation on our project that I am not aware of. I noticed that in the widgets documentation

https://docs.adobe.com/docs/en/cq/5-6-1/widgets-api/index.html?class=CQ.shared.HTTP it is mentioned that the values will be passed to CQ.Util.formatData (which uses translation) in case optionsRoot does not exist. However, I do have an optionsRoot property. I did some debugging on the widgets.js file and it doesn't call that function, just as it is documented.

I'll do some testing and let you know. Thanks for the quick replies.

smacdonald2008
Level 10
March 7, 2016

Let us know the results of your testing.