Example usage for com.liferay.portal.kernel.theme ThemeDisplay getLocale

List of usage examples for com.liferay.portal.kernel.theme ThemeDisplay getLocale

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.theme ThemeDisplay getLocale.

Prototype

public Locale getLocale() 

Source Link

Document

Returns the locale used for displaying content.

Usage

From source file:com.liferay.frontend.editor.tinymce.web.editor.configuration.TinyMCEEditorConfigContributor.java

License:Open Source License

@Override
public void populateConfigJSONObject(JSONObject jsonObject, Map<String, Object> inputEditorTaglibAttributes,
        ThemeDisplay themeDisplay, RequestBackedPortletURLFactory requestBackedPortletURLFactory) {

    super.populateConfigJSONObject(jsonObject, inputEditorTaglibAttributes, themeDisplay,
            requestBackedPortletURLFactory);

    jsonObject.put("mode", "exact");
    jsonObject.put("plugins", getPluginsJSONArray(inputEditorTaglibAttributes));
    jsonObject.put("style_formats", getStyleFormatsJSONArray(themeDisplay.getLocale()));
    jsonObject.put("toolbar", getToolbarJSONArray(inputEditorTaglibAttributes, themeDisplay));
}

From source file:com.liferay.frontend.js.spa.web.internal.servlet.taglib.SPATopHeadJSPDynamicInclude.java

License:Open Source License

@Override
public void include(HttpServletRequest request, HttpServletResponse response, String key) throws IOException {

    ScriptData scriptData = new ScriptData();

    Map<String, String> values = new HashMap<>();

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

    values.put("cacheExpirationTime",
            String.valueOf(_spaUtil.getCacheExpirationTime(themeDisplay.getCompanyId())));

    values.put("clearScreensCache",
            String.valueOf(_spaUtil.isClearScreensCache(request, request.getSession())));
    values.put("debugEnabled", String.valueOf(_spaUtil.isDebugEnabled()));
    values.put("excludedPaths", _spaUtil.getExcludedPaths());
    values.put("loginRedirect", _html.escapeJS(_spaUtil.getLoginRedirect(request)));
    values.put("message", _language.get(_spaUtil.getLanguageResourceBundle(themeDisplay.getLocale()),
            "it-looks-like-this-is-taking-longer-than-expected"));
    values.put("navigationExceptionSelectors", _spaUtil.getNavigationExceptionSelectors());
    values.put("portletsBlacklist", _spaUtil.getPortletsBlacklist(themeDisplay));
    values.put("requestTimeout", String.valueOf(_spaUtil.getRequestTimeout()));
    values.put("timeout", String.valueOf(_spaUtil.getUserNotificationTimeout()));
    values.put("title", _language.get(_spaUtil.getLanguageResourceBundle(themeDisplay.getLocale()), "oops"));
    values.put("validStatusCodes", _spaUtil.getValidStatusCodes());

    scriptData.append(null,//from www.j  a  v a2 s  .c  o m
            StringUtil.replaceToStringBundler(_TMPL_CONTENT, StringPool.POUND, StringPool.POUND, values),
            "frontend-js-spa-web/liferay/init.es", ScriptData.ModulesType.ES6);

    scriptData.writeTo(response.getWriter());
}

From source file:com.liferay.frontend.taglib.servlet.taglib.soy.TranslationManagerTag.java

License:Open Source License

@Override
public int doStartTag() {
    JSONArray availableLocalesJSONArray = JSONFactoryUtil.createJSONArray();
    JSONObject localesJSONObject = JSONFactoryUtil.createJSONObject();

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

    Set<Locale> locales = LanguageUtil.getAvailableLocales(themeDisplay.getSiteGroupId());

    for (Locale locale : locales) {
        String languageId = LocaleUtil.toLanguageId(locale);

        if (ArrayUtil.contains(_availableLocales, locale)) {
            availableLocalesJSONArray.put(languageId);
        }//from  w  w w  .j  a  va  2s.  c om

        JSONObject localeJSONObject = JSONFactoryUtil.createJSONObject();

        String w3cLanguageId = LocaleUtil.toW3cLanguageId(locale);

        localeJSONObject.put("code", w3cLanguageId);
        localeJSONObject.put("icon", StringUtil.toLowerCase(w3cLanguageId));

        localeJSONObject.put("id", languageId);
        localeJSONObject.put("name", locale.getDisplayName(themeDisplay.getLocale()));

        localesJSONObject.put(languageId, localeJSONObject);
    }

    putValue("availableLocales", availableLocalesJSONArray);
    putValue("locales", localesJSONObject);

    putValue("pathThemeImages", themeDisplay.getPathThemeImages());

    setTemplateNamespace("TranslationManager.render");

    return super.doStartTag();
}

From source file:com.liferay.image.uploader.web.internal.portlet.action.UploadImageMVCActionCommand.java

License:Open Source License

protected void handleUploadException(ActionRequest actionRequest, ActionResponse actionResponse, String cmd,
        long maxFileSize, Exception e) throws Exception {

    if (e instanceof PrincipalException) {
        SessionErrors.add(actionRequest, e.getClass());

        actionResponse.setRenderParameter("mvcPath", "/error.jsp");
    } else if (e instanceof AntivirusScannerException || e instanceof FileExtensionException
            || e instanceof FileSizeException || e instanceof ImageTypeException
            || e instanceof NoSuchFileException || e instanceof UploadException
            || e instanceof UploadRequestSizeException) {

        if (cmd.equals(Constants.ADD_TEMP)) {
            hideDefaultErrorMessage(actionRequest);

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

            String errorMessage = StringPool.BLANK;

            if (e instanceof AntivirusScannerException) {
                AntivirusScannerException ase = (AntivirusScannerException) e;

                errorMessage = themeDisplay.translate(ase.getMessageKey());
            } else if (e instanceof FileExtensionException) {
                errorMessage = themeDisplay.translate("please-enter-a-file-with-a-valid-extension-x",
                        StringUtil.merge(_dlConfiguration.fileExtensions()));
            } else if (e instanceof FileSizeException) {
                if (maxFileSize == 0) {
                    maxFileSize = _uploadServletRequestConfigurationHelper.getMaxSize();
                }/*  ww  w  .  ja va2  s  . c o m*/

                errorMessage = themeDisplay.translate(
                        "please-enter-a-file-with-a-valid-file-size-no-" + "larger-than-x",
                        TextFormatter.formatStorageSize(maxFileSize, themeDisplay.getLocale()));
            } else if (e instanceof ImageTypeException) {
                errorMessage = themeDisplay.translate("please-enter-a-file-with-a-valid-file-type");
            } else if (e instanceof NoSuchFileException || e instanceof UploadException) {

                errorMessage = themeDisplay
                        .translate("an-unexpected-error-occurred-while-uploading-your-" + "file");
            }

            JSONObject jsonObject = JSONFactoryUtil.createJSONObject();

            jsonObject.put("errorMessage", errorMessage);

            JSONPortletResponseUtil.writeJSON(actionRequest, actionResponse, jsonObject);
        } else {
            SessionErrors.add(actionRequest, e.getClass(), e);
        }
    } else {
        throw e;
    }
}

From source file:com.liferay.item.selector.web.internal.ItemSelectorImpl.java

License:Open Source License

@Override
public ItemSelectorRendering getItemSelectorRendering(
        RequestBackedPortletURLFactory requestBackedPortletURLFactory, Map<String, String[]> parameters,
        ThemeDisplay themeDisplay) {

    String itemSelectedEventName = getValue(parameters, PARAMETER_ITEM_SELECTED_EVENT_NAME);
    String selectedTab = getValue(parameters, PARAMETER_SELECTED_TAB);

    List<ItemSelectorViewRenderer> itemSelectorViewRenderers = new ArrayList<>();

    List<ItemSelectorCriterion> itemSelectorCriteria = getItemSelectorCriteria(parameters);

    ItemSelectorCriterion[] itemSelectorCriteriaArray = itemSelectorCriteria
            .toArray(new ItemSelectorCriterion[itemSelectorCriteria.size()]);

    for (ItemSelectorCriterion itemSelectorCriterion : itemSelectorCriteria) {

        Class<? extends ItemSelectorCriterion> itemSelectorCriterionClass = itemSelectorCriterion.getClass();

        ItemSelectorCriterionHandler<ItemSelectorCriterion> itemSelectorCriterionHandler = _itemSelectionCriterionHandlers
                .get(itemSelectorCriterionClass.getName());

        List<ItemSelectorView<ItemSelectorCriterion>> itemSelectorViews = itemSelectorCriterionHandler
                .getItemSelectorViews(itemSelectorCriterion);

        for (ItemSelectorView<ItemSelectorCriterion> itemSelectorView : itemSelectorViews) {

            if (!itemSelectorView.isVisible(themeDisplay)) {
                continue;
            }//  w ww  .ja va  2 s .  c om

            PortletURL portletURL = getPortletURL(requestBackedPortletURLFactory,
                    itemSelectorView.getTitle(themeDisplay.getLocale()), selectedTab, itemSelectedEventName,
                    itemSelectorCriteriaArray, themeDisplay);

            itemSelectorViewRenderers.add(new ItemSelectorViewRendererImpl(itemSelectorView,
                    itemSelectorCriterion, portletURL, itemSelectedEventName, isSearch(parameters)));
        }
    }

    return new ItemSelectorRenderingImpl(itemSelectedEventName, selectedTab, itemSelectorViewRenderers);
}

From source file:com.liferay.journal.content.search.web.internal.display.context.JournalContentSearchDisplayContext.java

License:Open Source License

public Summary getSummary(Document document) throws Exception {
    if (_summary != null) {
        return _summary;
    }/*from  w ww.  j a  v a 2s. co m*/

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

    Indexer<JournalArticle> indexer = IndexerRegistryUtil.getIndexer(JournalArticle.class);

    com.liferay.portal.kernel.search.Summary summary = indexer.getSummary(document, StringPool.BLANK,
            _liferayPortletRequest, _liferayPortletResponse);

    SummaryBuilder summaryBuilder = _summaryBuilderFactory.newInstance();

    summaryBuilder.setContent(summary.getContent());
    summaryBuilder.setHighlight(_journalContentSearchPortletInstanceConfiguration.enableHighlighting());
    summaryBuilder.setLocale(themeDisplay.getLocale());
    summaryBuilder.setMaxContentLength(summary.getMaxContentLength());
    summaryBuilder.setTitle(summary.getTitle());

    _summary = summaryBuilder.build();

    return _summary;
}

From source file:com.liferay.journal.content.web.internal.portlet.toolbar.contributor.JournalContentPortletToolbarContributor.java

License:Open Source License

protected void addPortletTitleAddJournalArticleMenuItems(List<MenuItem> menuItems, ThemeDisplay themeDisplay,
        PortletRequest portletRequest) throws Exception {

    long plid = themeDisplay.getPlid();
    PortletDisplay portletDisplay = themeDisplay.getPortletDisplay();
    long scopeGroupId = themeDisplay.getScopeGroupId();

    PortletURL portletURL = _portal.getControlPanelPortletURL(portletRequest, JournalPortletKeys.JOURNAL,
            PortletRequest.RENDER_PHASE);

    portletURL.setParameter("hideDefaultSuccessMessage", Boolean.TRUE.toString());
    portletURL.setParameter("groupId", String.valueOf(scopeGroupId));
    portletURL.setParameter("mvcPath", "/edit_article.jsp");
    portletURL.setParameter("portletResource", portletDisplay.getId());
    portletURL.setParameter("redirect", _getAddJournalArticleRedirectURL(themeDisplay, portletRequest));
    portletURL.setParameter("referringPlid", String.valueOf(plid));
    portletURL.setParameter("showHeader", Boolean.FALSE.toString());

    portletURL.setWindowState(LiferayWindowState.POP_UP);

    List<DDMStructure> ddmStructures = _journalFolderService.getDDMStructures(
            _portal.getCurrentAndAncestorSiteGroupIds(scopeGroupId),
            JournalFolderConstants.DEFAULT_PARENT_FOLDER_ID, JournalFolderConstants.RESTRICTION_TYPE_INHERIT);

    for (DDMStructure ddmStructure : ddmStructures) {
        portletURL.setParameter("ddmStructureId", String.valueOf(ddmStructure.getStructureId()));

        URLMenuItem urlMenuItem = new URLMenuItem();

        String ddmStructureName = ddmStructure.getName(themeDisplay.getLocale());

        String title = LanguageUtil.format(themeDisplay.getLocale(), "new-x", ddmStructureName);

        Map<String, Object> data = new HashMap<>();

        data.put("id", HtmlUtil.escape(portletDisplay.getNamespace()) + "editAsset");

        data.put("title", HtmlUtil.escape(title));

        urlMenuItem.setData(data);/*from  www  . ja v  a  2s . c  om*/

        String label = ddmStructure.getUnambiguousName(ddmStructures, themeDisplay.getScopeGroupId(),
                themeDisplay.getLocale());

        urlMenuItem.setLabel(label);

        urlMenuItem.setURL(portletURL.toString());
        urlMenuItem.setUseDialog(true);

        menuItems.add(urlMenuItem);
    }
}

From source file:com.liferay.journal.transformer.JournalTransformer.java

License:Open Source License

protected List<TemplateNode> getTemplateNodes(ThemeDisplay themeDisplay, Element element, long ddmStructureId)
        throws Exception {

    DDMStructure ddmStructure = DDMStructureLocalServiceUtil.getStructure(ddmStructureId);

    DDMForm ddmForm = ddmStructure.getDDMForm();

    Map<String, DDMFormField> ddmFormFieldsMap = ddmForm.getDDMFormFieldsMap(true);

    List<TemplateNode> templateNodes = new ArrayList<>();

    Map<String, TemplateNode> prototypeTemplateNodes = new HashMap<>();

    List<Element> dynamicElementElements = element.elements("dynamic-element");

    for (Element dynamicElementElement : dynamicElementElements) {
        Element dynamicContentElement = dynamicElementElement.element("dynamic-content");

        String data = StringPool.BLANK;

        if (dynamicContentElement != null) {
            data = dynamicContentElement.getText();
        }// ww w. j a  v a  2s .  c  om

        String name = dynamicElementElement.attributeValue("name", StringPool.BLANK);

        if (name.length() == 0) {
            throw new TransformException("Element missing \"name\" attribute");
        }

        String type = dynamicElementElement.attributeValue("type", StringPool.BLANK);

        Map<String, String> attributes = new HashMap<>();

        if (type.equals("image")) {
            JSONObject dataJSONObject = JSONFactoryUtil.createJSONObject(data);

            Iterator<String> itr = dataJSONObject.keys();

            while (itr.hasNext()) {
                String key = itr.next();

                String value = dataJSONObject.getString(key);

                attributes.put(key, value);
            }
        }

        if (dynamicContentElement != null) {
            for (Attribute attribute : dynamicContentElement.attributes()) {
                attributes.put(attribute.getName(), attribute.getValue());
            }
        }

        TemplateNode templateNode = new TemplateNode(themeDisplay, name, StringUtil.stripCDATA(data), type,
                attributes);

        if (dynamicElementElement.element("dynamic-element") != null) {
            templateNode.appendChildren(getTemplateNodes(themeDisplay, dynamicElementElement, ddmStructureId));
        } else if ((dynamicContentElement != null) && (dynamicContentElement.element("option") != null)) {

            List<Element> optionElements = dynamicContentElement.elements("option");

            for (Element optionElement : optionElements) {
                templateNode.appendOption(StringUtil.stripCDATA(optionElement.getText()));
            }
        }

        DDMFormField ddmFormField = ddmFormFieldsMap.get(name);

        if (ddmFormField != null) {
            DDMFormFieldOptions ddmFormFieldOptions = ddmFormField.getDDMFormFieldOptions();

            Map<String, LocalizedValue> options = ddmFormFieldOptions.getOptions();

            for (Entry<String, LocalizedValue> entry : options.entrySet()) {
                String optionValue = StringUtil.stripCDATA(entry.getKey());

                LocalizedValue localizedLabel = entry.getValue();

                String optionLabel = localizedLabel.getString(themeDisplay.getLocale());

                templateNode.appendOptionMap(optionValue, optionLabel);
            }
        }

        TemplateNode prototypeTemplateNode = prototypeTemplateNodes.get(name);

        if (prototypeTemplateNode == null) {
            prototypeTemplateNode = templateNode;

            prototypeTemplateNodes.put(name, prototypeTemplateNode);

            templateNodes.add(templateNode);
        }

        prototypeTemplateNode.appendSibling(templateNode);
    }

    return templateNodes;
}

From source file:com.liferay.journal.util.impl.JournalUtil.java

License:Open Source License

public static Map<String, String> getEmailDefinitionTerms(PortletRequest portletRequest,
        String emailFromAddress, String emailFromName, String emailType) {

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

    String fromAddress = HtmlUtil.escape(emailFromAddress);
    String fromName = HtmlUtil.escape(emailFromName);
    String toAddress = LanguageUtil.get(themeDisplay.getLocale(), "the-address-of-the-email-recipient");
    String toName = LanguageUtil.get(themeDisplay.getLocale(), "the-name-of-the-email-recipient");

    if (emailType.equals("requested")) {
        toName = fromName;//from   ww  w.  ja  v  a 2s .co m
        toAddress = fromAddress;

        fromName = LanguageUtil.get(themeDisplay.getLocale(), "the-name-of-the-email-sender");
        fromAddress = LanguageUtil.get(themeDisplay.getLocale(), "the-address-of-the-email-sender");
    }

    Map<String, String> definitionTerms = new LinkedHashMap<>();

    definitionTerms.put("[$ARTICLE_CONTENT]", LanguageUtil.get(themeDisplay.getLocale(), "the-web-content"));
    definitionTerms.put("[$ARTICLE_DIFFS$]", LanguageUtil.get(themeDisplay.getLocale(),
            "the-web-content-compared-with-the-previous-version-web-" + "content"));
    definitionTerms.put("[$ARTICLE_ID$]", LanguageUtil.get(themeDisplay.getLocale(), "the-web-content-id"));
    definitionTerms.put("[$ARTICLE_TITLE$]",
            LanguageUtil.get(themeDisplay.getLocale(), "the-web-content-title"));
    definitionTerms.put("[$ARTICLE_URL$]", LanguageUtil.get(themeDisplay.getLocale(), "the-web-content-url"));
    definitionTerms.put("[$ARTICLE_VERSION$]",
            LanguageUtil.get(themeDisplay.getLocale(), "the-web-content-version"));
    definitionTerms.put("[$FROM_ADDRESS$]", fromAddress);
    definitionTerms.put("[$FROM_NAME$]", fromName);

    Company company = themeDisplay.getCompany();

    definitionTerms.put("[$PORTAL_URL$]", company.getVirtualHostname());

    PortletDisplay portletDisplay = themeDisplay.getPortletDisplay();

    definitionTerms.put("[$PORTLET_NAME$]", HtmlUtil.escape(portletDisplay.getTitle()));

    definitionTerms.put("[$TO_ADDRESS$]", toAddress);
    definitionTerms.put("[$TO_NAME$]", toName);

    return definitionTerms;
}

From source file:com.liferay.journal.web.internal.display.context.JournalDisplayContext.java

License:Open Source License

public String getDDMStructureName() throws PortalException {
    if (_ddmStructureName != null) {
        return _ddmStructureName;
    }/*from  w  ww.  j av a 2s .co  m*/

    _ddmStructureName = LanguageUtil.get(_request, "basic-web-content");

    if (Validator.isNull(getDDMStructureKey())) {
        return _ddmStructureName;
    }

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

    DDMStructure ddmStructure = DDMStructureLocalServiceUtil.fetchStructure(themeDisplay.getSiteGroupId(),
            PortalUtil.getClassNameId(JournalArticle.class), getDDMStructureKey(), true);

    if (ddmStructure != null) {
        _ddmStructureName = ddmStructure.getName(themeDisplay.getLocale());
    }

    return _ddmStructureName;
}