Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.
SOLVED

sightly with ACS-Commons (generic list)

Avatar

Level 1

I am new to AEM. I have used ACS commons generic list for populating the drop down values. I have added the titles for french and english under localisation part of generic list for each item.consider my js(js based approach in sightly) would return itemList (for ex: var itemList = list.getItems();).    
         how can I get the locale based title available in generic list(for ex, how can i get the french title which i have included under localisation part), in place of ${list.title} mentioned in the below HTML code:           
         <select data-sly-use.frm="sample_form.js"   data-sly-list.list="${frm}">
                                <option value="${list.value}">${list.title}

Could anyone help me on this. Thanks in advance :-)

1 Accepted Solution

Avatar

Correct answer by
Level 10

have you implemented I18N for your titles, if so you need to get I18N for the title. refer [1] for the same

[1] https://docs.adobe.com/docs/en/aem/6-0/develop/components/i18n/i18n-dev.html

View solution in original post

6 Replies

Avatar

Level 10

list.title should get the title of your language

Avatar

Level 1

Thanks for your reply. But that returns me the title in English. Please check my code if I have missed any.

sample.js

"use strict";

use(function () {
    var resolver = sling.getRequest().getResource().getResourceResolver();
var pageManager = resolver.adaptTo(Packages.com.day.cq.wcm.api.PageManager);
var listPage = pageManager.getPage("/etc/acs-commons/lists/sampleoption");
var list = listPage.adaptTo(Packages.com.adobe.acs.commons.genericlists.GenericList);
    var sampList= list.getItems();

return sampList;
});

In my sampForm.html , I have this piece of code:

 <select data-sly-use.reg="sample.js"   data-sly-list.list="${reg}">
                        <option value="${list.title}">${list.title}</option>
 </select>

This prints me the English title only. How can I get the French title (which I have highlighted in the attached screenshot of the ACS-Commons Generic list items)

Avatar

Level 2
By adding this js, adopTo method is throwing an error in pulisher. Is there any alternative method to get the list of items in javascript. If anyone knows the solution ,Kindly post here.

Avatar

Level 2
TypeError: Cannot call method "adaptTo" of null.

Avatar

Correct answer by
Level 10

have you implemented I18N for your titles, if so you need to get I18N for the title. refer [1] for the same

[1] https://docs.adobe.com/docs/en/aem/6-0/develop/components/i18n/i18n-dev.html