Example usage for com.liferay.portal.kernel.language LanguageUtil getAvailableLocales

List of usage examples for com.liferay.portal.kernel.language LanguageUtil getAvailableLocales

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.language LanguageUtil getAvailableLocales.

Prototype

public static Set<Locale> getAvailableLocales() 

Source Link

Usage

From source file:com.liferay.content.targeting.util.UserSegmentUtil.java

License:Open Source License

public static Map<Locale, String> getAssetVocabularyTitle() {
    Map<Locale, String> titleMap = new HashMap<Locale, String>();

    Locale[] locales = LanguageUtil.getAvailableLocales();

    for (Locale locale : locales) {
        titleMap.put(locale, LanguageUtil.get(locale, UserSegmentConstants.VOCABULARY_NAME));
    }//from w  w w  .  j  a va  2  s  . c  om

    return titleMap;
}

From source file:com.liferay.document.library.jaxrs.DocumentLibraryRootResource.java

License:Open Source License

@ApiOperation(value = "List groups", responseContainer = "List", response = GroupRepr.class)
@GET//  ww  w .  j av a 2s  .c  om
@Produces({ "application/json", "application/xml" })
public PageContainer<List<GroupRepr>> listGroups(@Context Company company,
        @Context OrderBySelector orderBySelector, @Context Pagination pagination, @Context Request request,
        @Context UriInfo uriInfo) throws PortalException {

    Variant.VariantListBuilder variantListBuilder = Variant.VariantListBuilder.newInstance();

    variantListBuilder = variantListBuilder.languages(LanguageUtil.getAvailableLocales().toArray(new Locale[0]))
            .add();

    List<Variant> variants = variantListBuilder.build();

    Locale locale = VariantUtil.safeSelectVariant(request, variants).map(Variant::getLanguage)
            .orElse(LocaleUtil.getDefault());

    OrderByComparator<Group> groupOrderByComparator = OrderByComparatorSelectorUtil
            .select(orderBySelector, COMPARATORS).orElseGet(GroupIdComparator::new);

    List<Group> userSitesGroups = groupService.getUserSitesGroups();

    int maxSize = pagination.getEndPosition() - pagination.getStartPosition();

    UriBuilder uriBuilder = uriInfo.getBaseUriBuilder().path("{groupId}");

    return pagination.createContainer(
            userSitesGroups.stream().skip(pagination.getStartPosition()).limit(maxSize)
                    .sorted(groupOrderByComparator)
                    .map(group -> new GroupRepr(group.getGroupId(),
                            uriBuilder.build(group.getGroupId()).toString(), group.getName(locale, true),
                            group.getFriendlyURL(), group.getType()))
                    .collect(Collectors.toList()),
            userSitesGroups.size());
}

From source file:com.liferay.dynamic.data.mapping.service.impl.DDMStructureLocalServiceImpl.java

License:Open Source License

protected void validate(Map<Locale, String> nameMap, Locale contentDefaultLocale) throws PortalException {

    String name = nameMap.get(contentDefaultLocale);

    if (Validator.isNull(name)) {
        throw new StructureNameException("Name is null for locale " + contentDefaultLocale.getDisplayName());
    }/*from w  w  w . j  a v a  2  s.  c  o m*/

    if (!LanguageUtil.isAvailableLocale(contentDefaultLocale)) {
        Long companyId = CompanyThreadLocal.getCompanyId();

        LocaleException le = new LocaleException(LocaleException.TYPE_CONTENT,
                StringBundler.concat("The locale ", String.valueOf(contentDefaultLocale),
                        " is not available in company ", String.valueOf(companyId)));

        le.setSourceAvailableLocales(Collections.singleton(contentDefaultLocale));
        le.setTargetAvailableLocales(LanguageUtil.getAvailableLocales());

        throw le;
    }
}

From source file:com.liferay.journal.util.test.JournalTestUtilTest.java

License:Open Source License

@Test(expected = LocaleException.class)
public void testAddDDMStructureWithNonexistingLocale() throws Exception {
    Set<Locale> availableLocales = LanguageUtil.getAvailableLocales();
    Locale defaultLocale = LocaleUtil.getDefault();

    try {//from w w  w.j av a  2 s  . c  o m
        CompanyTestUtil.resetCompanyLocales(PortalUtil.getDefaultCompanyId(), Arrays.asList(LocaleUtil.US),
                LocaleUtil.US);

        DDMStructureTestUtil.addStructure(JournalArticle.class.getName(), LocaleUtil.CANADA);
    } finally {
        CompanyTestUtil.resetCompanyLocales(PortalUtil.getDefaultCompanyId(), availableLocales, defaultLocale);
    }
}

From source file:com.liferay.lms.model.CompetenceClp.java

License:Open Source License

public void setDiplomaTemplateMap(Map<Locale, String> diplomaTemplateMap, Locale defaultLocale) {
    if (diplomaTemplateMap == null) {
        return;//from  ww w. j a  v a  2s  .  com
    }

    ClassLoader portalClassLoader = PortalClassLoaderUtil.getClassLoader();

    Thread currentThread = Thread.currentThread();

    ClassLoader contextClassLoader = currentThread.getContextClassLoader();

    try {
        if (contextClassLoader != portalClassLoader) {
            currentThread.setContextClassLoader(portalClassLoader);
        }

        Locale[] locales = LanguageUtil.getAvailableLocales();

        for (Locale locale : locales) {
            String diplomaTemplate = diplomaTemplateMap.get(locale);

            setDiplomaTemplate(diplomaTemplate, locale, defaultLocale);
        }
    } finally {
        if (contextClassLoader != portalClassLoader) {
            currentThread.setContextClassLoader(contextClassLoader);
        }
    }
}

From source file:com.liferay.lms.model.impl.CompetenceModelImpl.java

License:Open Source License

public void setDiplomaTemplateMap(Map<Locale, String> diplomaTemplateMap, Locale defaultLocale) {
    if (diplomaTemplateMap == null) {
        return;/*  w  w w.ja  v a  2  s .c om*/
    }

    Locale[] locales = LanguageUtil.getAvailableLocales();

    for (Locale locale : locales) {
        String diplomaTemplate = diplomaTemplateMap.get(locale);

        setDiplomaTemplate(diplomaTemplate, locale, defaultLocale);
    }
}

From source file:com.liferay.mail.mailbox.IMAPMailbox.java

License:Open Source License

protected long getFolderId(String type) {
    Locale[] locales = LanguageUtil.getAvailableLocales();

    List<String> words = new ArrayList<String>();

    for (Locale locale : locales) {
        String translation = StringUtil.toLowerCase(LanguageUtil.get(locale, type));

        words.addAll(ListUtil.toList(translation.split(StringPool.SPACE)));
    }/*from  ww  w  .j  a v a2s  .  c om*/

    List<Folder> folders = FolderLocalServiceUtil.getFolders(account.getAccountId());

    for (String word : words) {
        for (Folder folder : folders) {
            String folderName = StringUtil.toLowerCase(folder.getDisplayName());

            if (folderName.contains(word)) {
                return folder.getFolderId();
            }
        }
    }

    return 0;
}

From source file:com.liferay.portlet.language.action.ViewAction.java

License:Open Source License

@Override
public void processAction(ActionMapping mapping, ActionForm form, PortletConfig portletConfig,
        ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

    HttpServletRequest request = PortalUtil.getHttpServletRequest(actionRequest);
    HttpServletResponse response = PortalUtil.getHttpServletResponse(actionResponse);
    HttpSession session = request.getSession();

    ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);

    Layout layout = themeDisplay.getLayout();

    String languageId = ParamUtil.getString(actionRequest, "languageId");

    Locale locale = LocaleUtil.fromLanguageId(languageId);

    List<Locale> availableLocales = ListUtil.fromArray(LanguageUtil.getAvailableLocales());

    if (availableLocales.contains(locale)) {
        if (themeDisplay.isSignedIn()) {
            User user = themeDisplay.getUser();

            Contact contact = user.getContact();

            AdminUtil.updateUser(actionRequest, user.getUserId(), user.getScreenName(), user.getEmailAddress(),
                    user.getFacebookId(), user.getOpenId(), languageId, user.getTimeZoneId(),
                    user.getGreeting(), user.getComments(), contact.getSmsSn(), contact.getAimSn(),
                    contact.getFacebookSn(), contact.getIcqSn(), contact.getJabberSn(), contact.getMsnSn(),
                    contact.getMySpaceSn(), contact.getSkypeSn(), contact.getTwitterSn(), contact.getYmSn());
        }//from   w ww.ja  v a2s  .c  om

        session.setAttribute(Globals.LOCALE_KEY, locale);

        LanguageUtil.updateCookie(request, response, locale);
    }

    // Send redirect

    String redirect = ParamUtil.getString(actionRequest, "redirect");

    if (PropsValues.LOCALE_PREPEND_FRIENDLY_URL_STYLE == 0) {
        redirect = PortalUtil.getLayoutURL(layout, themeDisplay);

        if (themeDisplay.isI18n()) {
            redirect = layout.getFriendlyURL();
        }
    } else {
        String layoutURL = PortalUtil.getLayoutFriendlyURL(layout, themeDisplay, locale);

        int pos = redirect.indexOf(Portal.FRIENDLY_URL_SEPARATOR);

        if (pos == -1) {
            pos = redirect.indexOf(StringPool.QUESTION);
        }

        if (pos != -1) {
            redirect = layoutURL + redirect.substring(pos);
        } else {
            redirect = layoutURL;
        }
    }

    actionResponse.sendRedirect(redirect);
}

From source file:com.liferay.portlet.layoutsadmin.util.SitemapImpl.java

License:Open Source License

protected void visitArticles(Element element, Layout layout, ThemeDisplay themeDisplay)
        throws PortalException, SystemException {

    List<JournalArticle> journalArticles = JournalArticleServiceUtil
            .getArticlesByLayoutUuid(layout.getGroupId(), layout.getUuid());

    if (journalArticles.isEmpty()) {
        return;//from ww w .j  a  v  a2s.c  o m
    }

    List<String> processedArticleIds = new ArrayList<String>();

    for (JournalArticle journalArticle : journalArticles) {
        if (processedArticleIds.contains(journalArticle.getArticleId())
                || (journalArticle.getStatus() != WorkflowConstants.STATUS_APPROVED)) {

            continue;
        }

        String portalURL = PortalUtil.getPortalURL(layout, themeDisplay);

        String groupFriendlyURL = PortalUtil.getGroupFriendlyURL(
                GroupLocalServiceUtil.getGroup(journalArticle.getGroupId()), false, themeDisplay);

        StringBundler sb = new StringBundler(4);

        if (!groupFriendlyURL.startsWith(portalURL)) {
            sb.append(portalURL);
        }

        sb.append(groupFriendlyURL);
        sb.append(JournalArticleConstants.CANONICAL_URL_SEPARATOR);
        sb.append(journalArticle.getUrlTitle());

        String articleURL = PortalUtil.getCanonicalURL(sb.toString(), themeDisplay, layout);

        addURLElement(element, articleURL, null, journalArticle.getModifiedDate());

        Locale[] availableLocales = LanguageUtil.getAvailableLocales();

        if (availableLocales.length > 1) {
            Locale defaultLocale = LocaleUtil.getDefault();

            for (Locale availableLocale : availableLocales) {
                if (!availableLocale.equals(defaultLocale)) {
                    String alternateURL = PortalUtil.getAlternateURL(articleURL, themeDisplay, availableLocale);

                    addURLElement(element, alternateURL, null, journalArticle.getModifiedDate());
                }
            }
        }

        processedArticleIds.add(journalArticle.getArticleId());
    }
}

From source file:com.liferay.portlet.messageboards.action.ConfigurationActionImpl.java

License:Open Source License

protected void updateThreadPriorities(ActionRequest actionRequest) throws Exception {

    Locale[] locales = LanguageUtil.getAvailableLocales();

    for (int i = 0; i < locales.length; i++) {
        String languageId = LocaleUtil.toLanguageId(locales[i]);

        List<String> priorities = new ArrayList<String>();

        for (int j = 0; j < 10; j++) {
            String name = ParamUtil.getString(actionRequest, "priorityName" + j + "_" + languageId);
            String image = ParamUtil.getString(actionRequest, "priorityImage" + j + "_" + languageId);
            double value = ParamUtil.getDouble(actionRequest, "priorityValue" + j + "_" + languageId);

            if (Validator.isNotNull(name) || Validator.isNotNull(image) || (value != 0.0)) {

                priorities.add(name + StringPool.COMMA + image + StringPool.COMMA + value);
            }//from  ww  w .  ja v  a  2 s .  com
        }

        String preferenceName = LocalizationUtil.getPreferencesKey("priorities", languageId);

        setPreference(actionRequest, preferenceName, priorities.toArray(new String[priorities.size()]));
    }
}