Example usage for com.liferay.portal.kernel.service.permission PortletPermissionUtil hasControlPanelAccessPermission

List of usage examples for com.liferay.portal.kernel.service.permission PortletPermissionUtil hasControlPanelAccessPermission

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.service.permission PortletPermissionUtil hasControlPanelAccessPermission.

Prototype

public static boolean hasControlPanelAccessPermission(PermissionChecker permissionChecker, long scopeGroupId,
            String portletId) throws PortalException 

Source Link

Usage

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

License:Open Source License

@Override
public boolean isTabs1Visible() {
    String portletName = _announcementsRequestHelper.getPortletName();

    ThemeDisplay themeDisplay = _announcementsRequestHelper.getThemeDisplay();

    try {//w w  w . ja  va2s  .  c  om
        if (!portletName.equals(AnnouncementsPortletKeys.ALERTS)
                || (portletName.equals(AnnouncementsPortletKeys.ALERTS) && PortletPermissionUtil
                        .hasControlPanelAccessPermission(_announcementsRequestHelper.getPermissionChecker(),
                                themeDisplay.getScopeGroupId(),
                                AnnouncementsPortletKeys.ANNOUNCEMENTS_ADMIN))) {

            return true;
        }
    } catch (PortalException pe) {
        _log.error(pe, pe);
    }

    return false;
}

From source file:com.liferay.layout.type.controller.control.panel.internal.model.ControlPanelLayoutTypeAccessPolicy.java

License:Open Source License

@Override
public void checkAccessAllowedToPortlet(HttpServletRequest request, Layout layout, Portlet portlet)
        throws PortalException {

    PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker();

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

    if (PortletPermissionUtil.hasControlPanelAccessPermission(permissionChecker, themeDisplay.getScopeGroupId(),
            portlet)) {//from w  w w  . j a va  2  s .  co  m

        return;
    }

    if (isAccessGrantedByRuntimePortlet(request)) {
        return;
    }

    if (isAccessGrantedByPortletAuthenticationToken(request, layout, portlet)) {

        return;
    }

    throw new PrincipalException(
            "User does not have permission to access Control Panel portlet " + portlet.getPortletId());
}

From source file:com.liferay.trash.web.internal.portlet.TrashViewPortletProvider.java

License:Open Source License

@Override
public PortletURL getPortletURL(HttpServletRequest request) throws PortalException {

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

    String portletId = PortletProviderUtil.getPortletId(TrashEntry.class.getName(),
            PortletProvider.Action.VIEW);

    if (!themeDisplay.isSignedIn() || !_trashHelper.isTrashEnabled(themeDisplay.getScopeGroupId())
            || !PortletPermissionUtil.hasControlPanelAccessPermission(themeDisplay.getPermissionChecker(),
                    themeDisplay.getScopeGroupId(), portletId)) {

        return null;
    }//from  www. j a v a  2  s  .  co  m

    PortletURL portletURL = _portal.getControlPanelPortletURL(request, portletId, PortletRequest.RENDER_PHASE);

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

    return portletURL;
}