Example usage for com.liferay.portal.kernel.util WebKeys THEME_DISPLAY

List of usage examples for com.liferay.portal.kernel.util WebKeys THEME_DISPLAY

Introduction

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

Prototype

String THEME_DISPLAY

To view the source code for com.liferay.portal.kernel.util WebKeys THEME_DISPLAY.

Click Source Link

Usage

From source file:com.liferay.akismet.moderation.portlet.ModerationPortlet.java

License:Open Source License

public void markNotSpamMBMessages(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

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

    checkMBMessagePermission(themeDisplay.getScopeGroupId());

    long[] mbMessageIds = ParamUtil.getLongValues(actionRequest, "notSpamMBMessageIds");

    ServiceContext serviceContext = ServiceContextFactory.getInstance(actionRequest);

    for (long mbMessageId : mbMessageIds) {
        MBMessage mbMessage = MBMessageLocalServiceUtil.updateStatus(themeDisplay.getUserId(), mbMessageId,
                WorkflowConstants.STATUS_APPROVED, serviceContext);

        if (AkismetUtil.isMessageBoardsEnabled(mbMessage.getCompanyId())) {
            AkismetUtil.submitHam(mbMessage);
        }/*from  w w w.j av a 2s . c om*/
    }
}

From source file:com.liferay.akismet.moderation.portlet.ModerationPortlet.java

License:Open Source License

public void markNotSpamWikiPages(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

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

    checkWikiPagePermission(themeDisplay.getScopeGroupId());

    long[] wikiPageIds = ParamUtil.getLongValues(actionRequest, "notSpamWikiPageIds");

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

    for (long wikiPageId : wikiPageIds) {
        WikiPage wikiPage = WikiPageLocalServiceUtil.getPageByPageId(wikiPageId);

        WikiPage latestVersionWikiPage = AkismetUtil.getWikiPage(wikiPage.getNodeId(), wikiPage.getTitle(),
                wikiPage.getVersion(), false);

        String latestContent = null;

        if (latestVersionWikiPage != null) {
            latestContent = latestVersionWikiPage.getContent();
        }/*from  w  ww. jav a 2  s.c  o m*/

        WikiPage previousVersionWikiPage = AkismetUtil.getWikiPage(wikiPage.getNodeId(), wikiPage.getTitle(),
                wikiPage.getVersion(), true);

        String previousContent = null;

        if (previousVersionWikiPage != null) {
            previousContent = previousVersionWikiPage.getContent();
        }

        // Selected version

        wikiPage.setStatus(WorkflowConstants.STATUS_APPROVED);
        wikiPage.setSummary(StringPool.BLANK);

        wikiPage = WikiPageLocalServiceUtil.updateWikiPage(wikiPage);

        // Latest version

        if ((latestContent != null) && ((previousContent == null) || latestContent.equals(previousContent))) {

            ServiceContext serviceContext = ServiceContextFactory.getInstance(actionRequest);

            WikiPageLocalServiceUtil.revertPage(themeDisplay.getUserId(), wikiPage.getNodeId(),
                    wikiPage.getTitle(), wikiPage.getVersion(), serviceContext);
        } else {
            StringBundler sb = new StringBundler(5);

            sb.append("<a href=\"");

            long plid = PortalUtil.getPlidFromPortletId(wikiPage.getGroupId(), PortletKeys.WIKI);

            LiferayPortletURL liferayPortletURL = PortletURLFactoryUtil.create(actionRequest, PortletKeys.WIKI,
                    plid, PortletRequest.RENDER_PHASE);

            WikiNode wikiNode = wikiPage.getNode();

            liferayPortletURL.setParameter("struts_action", "/wiki/view");
            liferayPortletURL.setParameter("nodeName", wikiNode.getName());
            liferayPortletURL.setParameter("title", wikiPage.getTitle());
            liferayPortletURL.setParameter("version", String.valueOf(wikiPage.getVersion()));

            sb.append(liferayPortletURL.toString());
            sb.append("\" target=\"_blank\">");
            sb.append(HtmlUtil.escape(wikiPage.getTitle()));
            sb.append("</a>");

            wikiPageLinks.add(sb.toString());
        }

        // Akismet

        if (AkismetUtil.isWikiEnabled(wikiPage.getCompanyId())) {
            AkismetUtil.submitHam(wikiPage);
        }
    }

    if (!wikiPageLinks.isEmpty()) {
        SessionMessages.add(actionRequest, "anotherUserHasMadeChangesToThesePages",
                StringUtil.merge(wikiPageLinks, "<br />"));

        addSuccessMessage(actionRequest, actionResponse);

        super.sendRedirect(actionRequest, actionResponse);
    }
}

From source file:com.liferay.akismet.moderation.portlet.ModerationPortlet.java

License:Open Source License

public void spamWikiPages(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

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

    checkWikiPagePermission(themeDisplay.getScopeGroupId());

    long[] wikiPageIds = ParamUtil.getLongValues(actionRequest, "spamWikiPageIds");

    for (long wikiPageId : wikiPageIds) {
        WikiPage wikiPage = WikiPageLocalServiceUtil.getPageByPageId(wikiPageId);

        wikiPage.setSummary(AkismetConstants.WIKI_PAGE_MARKED_AS_SPAM);

        WikiPageLocalServiceUtil.updateWikiPage(wikiPage);
    }//from   ww  w .ja va 2s  .  c o m
}

From source file:com.liferay.akismet.portlet.AkismetPortlet.java

License:Open Source License

public void updateConfiguration(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

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

    boolean enabled = ParamUtil.getBoolean(actionRequest, "enabled");
    String apiKey = ParamUtil.getString(actionRequest, "apiKey");

    PortletPreferences preferences = PrefsPortletPropsUtil.getPortletPreferences(themeDisplay.getCompanyId());

    preferences.setValue("enabled", String.valueOf(enabled));
    preferences.setValue(PortletPropsKeys.AKISMET_API_KEY, apiKey);

    preferences.store();/*  w ww . j ava2 s. c  o m*/

    if (!AkismetUtil.verifyApiKey(themeDisplay.getCompanyId(), apiKey)) {
        SessionErrors.add(actionRequest, "apiKeyError");
    }
}

From source file:com.liferay.alloy.mvc.BaseAlloyControllerImpl.java

License:Open Source License

protected void initThemeDisplayVariables() {
    themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

    company = themeDisplay.getCompany();
    locale = themeDisplay.getLocale();/*from w w w  . j a  v a 2s .  c o  m*/
    user = themeDisplay.getUser();
}

From source file:com.liferay.alloy.mvc.jsonwebservice.BaseAlloyControllerInvokerImpl.java

License:Open Source License

protected DynamicServletRequest createRequest(String lifecycle, Object... parameters) throws Exception {

    if ((parameters.length % 2) != 0) {
        throw new IllegalArgumentException("Parameters length is not an even number");
    }//from   w w w .  jav  a 2s  . c o  m

    HttpServletRequestWrapper requestWrapper = new HttpServletRequestWrapper(
            new AlloyMockUtil.MockHttpServletRequest());

    DynamicServletRequest request = new DynamicServletRequest(requestWrapper, false);

    for (int i = 0; i < parameters.length; i += 2) {
        request.appendParameter(String.valueOf(parameters[i]), String.valueOf(parameters[i + 1]));
    }

    request.appendParameter("controller", _controller);
    request.appendParameter("format", "json");

    ThemeDisplay themeDisplay = (ThemeDisplay) _themeDisplay.clone();

    PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker();

    User user = UserLocalServiceUtil.getUser(permissionChecker.getUserId());

    themeDisplay.setUser(user);

    request.setAttribute(WebKeys.THEME_DISPLAY, themeDisplay);

    request.setAttribute(WebKeys.LAYOUT, themeDisplay.getLayout());

    LiferayPortletConfig liferayPortletConfig = (LiferayPortletConfig) PortletConfigFactoryUtil.create(_portlet,
            null);

    request.setAttribute(JavaConstants.JAVAX_PORTLET_CONFIG, liferayPortletConfig);

    request.setAttribute(JavaConstants.JAVAX_PORTLET_PORTLET, _alloyPortlet);

    PortletRequest portletRequest = null;
    PortletResponse portletResponse = null;

    if (lifecycle.equals(PortletRequest.ACTION_PHASE)) {
        portletRequest = createActionRequest();
        portletResponse = createActionResponse();
    } else {
        portletRequest = createRenderRequest();
        portletResponse = createRenderResponse(request, _portlet.getRootPortletId(), themeDisplay.getPlid(),
                lifecycle);
    }

    request.setAttribute(JavaConstants.JAVAX_PORTLET_REQUEST, portletRequest);
    request.setAttribute(JavaConstants.JAVAX_PORTLET_RESPONSE, portletResponse);

    request.setAttribute(PortletRequest.LIFECYCLE_PHASE, lifecycle);

    request.setAttribute(BaseAlloyControllerImpl.VIEW_PATH, StringPool.BLANK);

    return request;
}

From source file:com.liferay.announcements.web.internal.display.context.DefaultAnnouncementsAdminViewDisplayContext.java

License:Open Source License

@Override
public Map<String, String> getDistributionScopes() throws Exception {
    Map<String, String> distributionScopes = new LinkedHashMap<>();

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

    PermissionChecker permissionChecker = themeDisplay.getPermissionChecker();

    if (PortalPermissionUtil.contains(permissionChecker, ActionKeys.ADD_GENERAL_ANNOUNCEMENTS)) {

        distributionScopes.put("general", "0,0");
    }//from  ww w . j a  v a  2s.  c o  m

    List<Group> groups = AnnouncementsUtil.getGroups(themeDisplay);

    for (Group group : groups) {
        distributionScopes.put(
                StringBundler.concat(group.getDescriptiveName(themeDisplay.getLocale()), " (",
                        LanguageUtil.get(_request, "site"), ")"),
                PortalUtil.getClassNameId(Group.class) + StringPool.COMMA + group.getGroupId());
    }

    List<Organization> organizations = AnnouncementsUtil.getOrganizations(themeDisplay);

    for (Organization organization : organizations) {
        String name = StringBundler.concat(organization.getName(), " (",
                LanguageUtil.get(_request, "organization"), ")");

        distributionScopes.put(name, PortalUtil.getClassNameId(Organization.class) + StringPool.COMMA
                + organization.getOrganizationId());
    }

    List<Role> roles = AnnouncementsUtil.getRoles(themeDisplay);

    for (Role role : roles) {
        distributionScopes.put(
                StringBundler.concat(role.getDescriptiveName(), " (", LanguageUtil.get(_request, "role"), ")"),
                PortalUtil.getClassNameId(Role.class) + StringPool.COMMA + role.getRoleId());
    }

    List<UserGroup> userGroups = AnnouncementsUtil.getUserGroups(themeDisplay);

    for (UserGroup userGroup : userGroups) {
        distributionScopes.put(
                StringBundler.concat(userGroup.getName(), " (", LanguageUtil.get(_request, "user-group"), ")"),
                PortalUtil.getClassNameId(UserGroup.class) + StringPool.COMMA + userGroup.getUserGroupId());
    }

    return distributionScopes;
}

From source file:com.liferay.announcements.web.internal.portlet.action.EditEntryMVCActionCommand.java

License:Open Source License

protected void updateEntry(ActionRequest actionRequest) throws Exception {
    ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long entryId = ParamUtil.getLong(actionRequest, "entryId");

    String[] distributionScopeParts = StringUtil.split(ParamUtil.getString(actionRequest, "distributionScope"));

    long classNameId = 0;
    long classPK = 0;

    if (distributionScopeParts.length == 2) {
        classNameId = GetterUtil.getLong(distributionScopeParts[0]);

        if (classNameId > 0) {
            classPK = GetterUtil.getLong(distributionScopeParts[1]);
        }// w  ww .j a v  a2s.c  o m
    }

    String title = ParamUtil.getString(actionRequest, "title");
    String content = ParamUtil.getString(actionRequest, "content");
    String url = ParamUtil.getString(actionRequest, "url");
    String type = ParamUtil.getString(actionRequest, "type");

    Date displayDate = new Date();

    boolean displayImmediately = ParamUtil.getBoolean(actionRequest, "displayImmediately");

    if (!displayImmediately) {
        int displayDateMonth = ParamUtil.getInteger(actionRequest, "displayDateMonth");
        int displayDateDay = ParamUtil.getInteger(actionRequest, "displayDateDay");
        int displayDateYear = ParamUtil.getInteger(actionRequest, "displayDateYear");
        int displayDateHour = ParamUtil.getInteger(actionRequest, "displayDateHour");
        int displayDateMinute = ParamUtil.getInteger(actionRequest, "displayDateMinute");
        int displayDateAmPm = ParamUtil.getInteger(actionRequest, "displayDateAmPm");

        if (displayDateAmPm == Calendar.PM) {
            displayDateHour += 12;
        }

        displayDate = _portal.getDate(displayDateMonth, displayDateDay, displayDateYear, displayDateHour,
                displayDateMinute, themeDisplay.getTimeZone(), EntryDisplayDateException.class);
    }

    int expirationDateMonth = ParamUtil.getInteger(actionRequest, "expirationDateMonth");
    int expirationDateDay = ParamUtil.getInteger(actionRequest, "expirationDateDay");
    int expirationDateYear = ParamUtil.getInteger(actionRequest, "expirationDateYear");
    int expirationDateHour = ParamUtil.getInteger(actionRequest, "expirationDateHour");
    int expirationDateMinute = ParamUtil.getInteger(actionRequest, "expirationDateMinute");
    int expirationDateAmPm = ParamUtil.getInteger(actionRequest, "expirationDateAmPm");

    if (expirationDateAmPm == Calendar.PM) {
        expirationDateHour += 12;
    }

    Date expirationDate = _portal.getDate(expirationDateMonth, expirationDateDay, expirationDateYear,
            expirationDateHour, expirationDateMinute, themeDisplay.getTimeZone(),
            EntryExpirationDateException.class);

    int priority = ParamUtil.getInteger(actionRequest, "priority");
    boolean alert = ParamUtil.getBoolean(actionRequest, "alert");

    if (entryId <= 0) {
        _announcementsEntryService.addEntry(classNameId, classPK, title, content, url, type, displayDate,
                expirationDate, priority, alert);
    } else {
        _announcementsEntryService.updateEntry(entryId, title, content, url, type, displayDate, expirationDate,
                priority);
    }
}

From source file:com.liferay.announcements.web.internal.portlet.configuration.icon.DeleteEntryPortletConfigurationIcon.java

License:Open Source License

@Override
public boolean isShow(PortletRequest portletRequest) {
    try {/* w w w.j a  v  a  2  s . co m*/
        ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY);

        AnnouncementsEntry entry = ActionUtil.getEntry(portletRequest);

        return AnnouncementsEntryPermission.contains(themeDisplay.getPermissionChecker(), entry,
                ActionKeys.DELETE);
    } catch (PortalException pe) {
        throw new RuntimeException(pe);
    }
}

From source file:com.liferay.announcements.web.internal.portlet.configuration.icon.EditEntryPortletConfigurationIcon.java

License:Open Source License

@Override
public String getURL(PortletRequest portletRequest, PortletResponse portletResponse) {

    PortletURL portletURL = _portal.getControlPanelPortletURL(portletRequest,
            AnnouncementsPortletKeys.ANNOUNCEMENTS_ADMIN, PortletRequest.RENDER_PHASE);

    portletURL.setParameter("mvcRenderCommandName", "/announcements/edit_entry");

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

    portletURL.setParameter("redirect", themeDisplay.getURLCurrent());

    try {//  ww  w. j a v  a  2s . c om
        AnnouncementsEntry entry = ActionUtil.getEntry(portletRequest);

        portletURL.setParameter("entryId", String.valueOf(entry.getEntryId()));
    } catch (Exception e) {
        return null;
    }

    return portletURL.toString();
}