Example usage for com.liferay.portal.kernel.util LocalizationUtil getAvailableLanguageIds

List of usage examples for com.liferay.portal.kernel.util LocalizationUtil getAvailableLanguageIds

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.util LocalizationUtil getAvailableLanguageIds.

Prototype

public static String[] getAvailableLanguageIds(String xml) 

Source Link

Usage

From source file:com.liferay.calendar.search.CalendarBookingIndexer.java

License:Open Source License

protected String[] getLanguageIds(String defaultLanguageId, String content) {

    String[] languageIds = LocalizationUtil.getAvailableLanguageIds(content);

    if (languageIds.length == 0) {
        languageIds = new String[] { defaultLanguageId };
    }/*from  w  w w  . j  av  a  2 s  . co m*/

    return languageIds;
}

From source file:com.liferay.journal.model.impl.JournalArticleImpl.java

License:Open Source License

@Override
public String[] getAvailableLanguageIds() {
    Set<String> availableLanguageIds = new TreeSet<>();

    availableLanguageIds.addAll(JournalArticleLocalServiceUtil.getArticleLocalizationLanguageIds(getId()));

    Document document = getDocument();

    if (document != null) {
        for (String availableLanguageId : LocalizationUtil.getAvailableLanguageIds(document)) {

            availableLanguageIds.add(availableLanguageId);
        }//w  w  w  .j av  a2 s.  c om
    }

    return availableLanguageIds.toArray(new String[availableLanguageIds.size()]);
}

From source file:com.liferay.journal.search.JournalArticleIndexer.java

License:Open Source License

@Override
protected Document doGetDocument(JournalArticle journalArticle) throws Exception {

    Document document = getBaseModelDocument(CLASS_NAME, journalArticle);

    long classPK = journalArticle.getId();

    if (!isIndexAllArticleVersions()) {
        classPK = journalArticle.getResourcePrimKey();
    }//from w ww  .  jav  a2 s .c om

    document.addUID(CLASS_NAME, classPK);

    String articleDefaultLanguageId = LocalizationUtil.getDefaultLanguageId(journalArticle.getDocument());

    String[] languageIds = LocalizationUtil.getAvailableLanguageIds(journalArticle.getDocument());

    for (String languageId : languageIds) {
        String content = extractDDMContent(journalArticle, languageId);

        String description = journalArticle.getDescription(languageId);

        String title = journalArticle.getTitle(languageId);

        if (languageId.equals(articleDefaultLanguageId)) {
            document.addText(Field.CONTENT, content);
            document.addText(Field.DESCRIPTION, description);
            document.addText("defaultLanguageId", languageId);
        }

        document.addText(LocalizationUtil.getLocalizedName(Field.CONTENT, languageId), content);
        document.addText(LocalizationUtil.getLocalizedName(Field.DESCRIPTION, languageId), description);
        document.addText(LocalizationUtil.getLocalizedName(Field.TITLE, languageId), title);
    }

    document.addKeyword(Field.FOLDER_ID, journalArticle.getFolderId());

    String articleId = journalArticle.getArticleId();

    if (journalArticle.isInTrash()) {
        articleId = TrashUtil.getOriginalTitle(articleId);
    }

    document.addKeywordSortable(Field.ARTICLE_ID, articleId);

    document.addKeyword(Field.LAYOUT_UUID, journalArticle.getLayoutUuid());
    document.addKeyword(Field.TREE_PATH, StringUtil.split(journalArticle.getTreePath(), CharPool.SLASH));
    document.addKeyword(Field.VERSION, journalArticle.getVersion());

    document.addKeyword("ddmStructureKey", journalArticle.getDDMStructureKey());
    document.addKeyword("ddmTemplateKey", journalArticle.getDDMTemplateKey());
    document.addDate("displayDate", journalArticle.getDisplayDate());
    document.addKeyword("head", JournalUtil.isHead(journalArticle));

    boolean headListable = JournalUtil.isHeadListable(journalArticle);

    document.addKeyword("headListable", headListable);

    // Scheduled listable articles should be visible in asset browser

    if (journalArticle.isScheduled() && headListable) {
        boolean visible = GetterUtil.getBoolean(document.get("visible"));

        if (!visible) {
            document.addKeyword("visible", true);
        }
    }

    addDDMStructureAttributes(document, journalArticle);

    return document;
}