001
014
015 package com.liferay.portlet.grouppages;
016
017 import com.liferay.portal.model.Group;
018 import com.liferay.portal.model.Portlet;
019 import com.liferay.portal.security.permission.ActionKeys;
020 import com.liferay.portal.security.permission.PermissionChecker;
021 import com.liferay.portal.service.permission.GroupPermissionUtil;
022 import com.liferay.portal.theme.ThemeDisplay;
023 import com.liferay.portal.util.PortletCategoryKeys;
024 import com.liferay.portlet.BaseControlPanelEntry;
025
026
030 public class GroupPagesControlPanelEntry extends BaseControlPanelEntry {
031
032 public boolean isVisible(
033 PermissionChecker permissionChecker, Portlet portlet)
034 throws Exception {
035
036 return false;
037 }
038
039 @Override
040 public boolean isVisible(
041 Portlet portlet, String category, ThemeDisplay themeDisplay)
042 throws Exception {
043
044 String controlPanelCategory = themeDisplay.getControlPanelCategory();
045
046 if (controlPanelCategory.equals(PortletCategoryKeys.CONTENT)) {
047 return false;
048 }
049
050 boolean visible = super.isVisible(portlet, category, themeDisplay);
051
052 if (!visible) {
053 visible = GroupPermissionUtil.contains(
054 themeDisplay.getPermissionChecker(),
055 themeDisplay.getScopeGroupId(), ActionKeys.MANAGE_LAYOUTS);
056 }
057
058 if (visible) {
059 Group scopeGroup = themeDisplay.getScopeGroup();
060
061 if (scopeGroup.isCompany()) {
062 visible = false;
063 }
064 }
065
066 return visible;
067 }
068
069 }