Example usage for com.liferay.portal.kernel.portlet RequestBackedPortletURLFactory createResourceURL

List of usage examples for com.liferay.portal.kernel.portlet RequestBackedPortletURLFactory createResourceURL

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.portlet RequestBackedPortletURLFactory createResourceURL.

Prototype

public PortletURL createResourceURL(String portletId);

Source Link

Usage

From source file:com.liferay.mentions.web.editor.configuration.BaseMentionsEditorConfigContributor.java

License:Open Source License

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

    JSONObject autoCompleteConfigJSONObject = JSONFactoryUtil.createJSONObject();

    autoCompleteConfigJSONObject.put("requestTemplate", "query={query}");

    JSONArray triggerJSONArray = JSONFactoryUtil.createJSONArray();

    JSONObject triggerJSONObject = JSONFactoryUtil.createJSONObject();

    triggerJSONObject.put("resultFilters", "function(query, results) {return results;}");
    triggerJSONObject.put("resultTextLocator", "screenName");
    triggerJSONObject.put("term", "@");
    triggerJSONObject.put("tplReplace", "{mention}");

    StringBundler sb = new StringBundler(5);

    sb.append("<div class=\"nameplate\"><div class=\"nameplate-field\">");
    sb.append("<div class=\"user-icon\"><img class=\"img-circle\" ");
    sb.append("src=\"{portraitURL}\" height=\"32px\" width=\"32px\">");
    sb.append("</img></div></div><div class=\"nameplate-content\"><h4>");
    sb.append("{fullName}<small>@{screenName}</small></h4></div></div>");

    triggerJSONObject.put("tplResults", sb.toString());

    PortletURL autoCompleteUserURL = requestBackedPortletURLFactory
            .createResourceURL(MentionsPortletKeys.MENTIONS);

    String source = autoCompleteUserURL.toString() + "&"
            + PortalUtil.getPortletNamespace(MentionsPortletKeys.MENTIONS);

    triggerJSONObject.put("source", source);

    triggerJSONArray.put(triggerJSONObject);

    autoCompleteConfigJSONObject.put("trigger", triggerJSONArray);

    jsonObject.put("autocomplete", autoCompleteConfigJSONObject);

    String extraPlugins = jsonObject.getString("extraPlugins");

    if (Validator.isNotNull(extraPlugins)) {
        extraPlugins += ",autocomplete";
    } else {/* www  . j a v a2  s.  com*/
        extraPlugins = "autocomplete,ae_placeholder,ae_selectionregion,ae_uicore";
    }

    jsonObject.put("extraPlugins", extraPlugins);
}

From source file:com.liferay.mentions.web.internal.editor.configuration.BaseMentionsEditorConfigContributor.java

License:Open Source License

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

    JSONObject autoCompleteConfigJSONObject = JSONFactoryUtil.createJSONObject();

    autoCompleteConfigJSONObject.put("requestTemplate", "query={query}");

    JSONArray triggerJSONArray = JSONFactoryUtil.createJSONArray();

    JSONObject triggerJSONObject = JSONFactoryUtil.createJSONObject();

    triggerJSONObject.put("regExp",
            "(?:\\strigger|^trigger)(" + MentionsMatcherUtil.getScreenNameRegularExpression() + ")");
    triggerJSONObject.put("resultFilters", "function(query, results) {return results;}");
    triggerJSONObject.put("resultTextLocator", "screenName");
    triggerJSONObject.put("term", "@");
    triggerJSONObject.put("tplReplace", "{mention}");

    StringBundler sb = new StringBundler(5);

    sb.append("<div class=\"nameplate\"><div class=\"nameplate-field\">");
    sb.append("<div class=\"user-icon\"><img class=\"img-circle\" ");
    sb.append("src=\"{portraitURL}\" height=\"32px\" width=\"32px\">");
    sb.append("</img></div></div><div class=\"nameplate-content\"><h4>");
    sb.append("{fullName} <small>@{screenName}</small></h4></div></div>");

    triggerJSONObject.put("tplResults", sb.toString());

    PortletURL autoCompleteUserURL = requestBackedPortletURLFactory
            .createResourceURL(MentionsPortletKeys.MENTIONS);

    String source = autoCompleteUserURL.toString() + "&"
            + PortalUtil.getPortletNamespace(MentionsPortletKeys.MENTIONS);

    triggerJSONObject.put("source", source);

    triggerJSONArray.put(triggerJSONObject);

    autoCompleteConfigJSONObject.put("trigger", triggerJSONArray);

    jsonObject.put("autocomplete", autoCompleteConfigJSONObject);

    String extraPlugins = jsonObject.getString("extraPlugins");

    if (Validator.isNotNull(extraPlugins)) {
        extraPlugins += ",autocomplete";
    } else {/*w  w w  .  j  a va2  s .  c o  m*/
        extraPlugins = "autocomplete,ae_placeholder,ae_selectionregion,ae_uicore";
    }

    jsonObject.put("extraPlugins", extraPlugins);
}

From source file:com.liferay.wiki.editor.configuration.internal.WikiCreoleAutoCompleteEditorConfigContributor.java

License:Open Source License

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

    JSONObject autoCompleteConfigJSONObject = JSONFactoryUtil.createJSONObject();

    autoCompleteConfigJSONObject.put("requestTemplate", "query={query}");

    JSONArray triggerJSONArray = JSONFactoryUtil.createJSONArray();

    JSONObject triggerJSONObject = JSONFactoryUtil.createJSONObject();

    triggerJSONObject.put("resultFilters", "function(query, results) {return results;}");
    triggerJSONObject.put("resultTextLocator", "title");

    PortletDisplay portletDisplay = themeDisplay.getPortletDisplay();

    ResourceURL autoCompletePageTitleURL = (ResourceURL) requestBackedPortletURLFactory
            .createResourceURL(portletDisplay.getId());

    Map<String, String> fileBrowserParams = (Map<String, String>) inputEditorTaglibAttributes
            .get("liferay-ui:input-editor:fileBrowserParams");

    autoCompletePageTitleURL.setParameter("nodeId", fileBrowserParams.get("nodeId"));

    autoCompletePageTitleURL.setResourceID("/wiki/autocomplete_page_title");

    String source = autoCompletePageTitleURL.toString() + "&"
            + PortalUtil.getPortletNamespace(portletDisplay.getId());

    triggerJSONObject.put("source", source);

    triggerJSONObject.put("term", "[");
    triggerJSONObject.put("tplReplace", "<a href=\"{title}\">{title}</a>");
    triggerJSONObject.put("tplResults", "<span class=\"h5 truncate-text\">{title}</span>");

    triggerJSONArray.put(triggerJSONObject);

    autoCompleteConfigJSONObject.put("trigger", triggerJSONArray);

    jsonObject.put("autocomplete", autoCompleteConfigJSONObject);

    String extraPlugins = jsonObject.getString("extraPlugins");

    if (Validator.isNotNull(extraPlugins)) {
        extraPlugins += ",autocomplete";
    } else {//from  w  w w  . j  ava2 s . c om
        extraPlugins = "autocomplete,ae_placeholder,ae_selectionregion,ae_uicore";
    }

    jsonObject.put("extraPlugins", extraPlugins);
}