List of usage examples for com.liferay.portal.kernel.model ResourceConstants SCOPE_COMPANY
int SCOPE_COMPANY
To view the source code for com.liferay.portal.kernel.model ResourceConstants SCOPE_COMPANY.
Click Source Link
From source file:com.liferay.announcements.web.internal.upgrade.v1_0_2.UpgradePermission.java
License:Open Source License
protected void upgradeResourcePermission(String name) throws Exception { StringBundler sb1 = new StringBundler(4); sb1.append("select resourceActionId, bitwiseValue from "); sb1.append("ResourceAction where actionId = 'ADD_ENTRY' and name = '"); sb1.append(name);/* ww w . j a v a 2 s . c o m*/ sb1.append("'"); StringBundler sb2 = new StringBundler(5); sb2.append("select resourcePermissionId, companyId, scope, primKey, "); sb2.append("primKeyId, roleId, actionIds from ResourcePermission "); sb2.append("where name = '"); sb2.append(name); sb2.append("'"); try (PreparedStatement ps1 = connection.prepareStatement(sb1.toString()); ResultSet rs1 = ps1.executeQuery()) { if (!rs1.next()) { if (!_ignoreMissingAddEntryResourceAction) { _log.error(StringBundler.concat("Unable to upgrade ADD_ENTRY action, ", "ResourceAction for ", name, " is not initialized")); } return; } long resourceActionId = rs1.getLong("resourceActionId"); long bitwiseValue = rs1.getLong("bitwiseValue"); try (PreparedStatement ps2 = connection.prepareStatement(sb2.toString()); ResultSet rs = ps2.executeQuery()) { while (rs.next()) { long resourcePermissionId = rs.getLong("resourcePermissionId"); long companyId = rs.getLong("companyId"); int scope = rs.getInt("scope"); String primKey = rs.getString("primKey"); long primKeyId = rs.getLong("primKeyId"); long roleId = rs.getLong("roleId"); long actionIds = rs.getLong("actionIds"); if ((bitwiseValue & actionIds) == 0) { continue; } updateResourcePermission(resourcePermissionId, actionIds - bitwiseValue); if (scope == ResourceConstants.SCOPE_INDIVIDUAL) { if (primKey.contains("_LAYOUT_")) { primKey = String.valueOf(companyId); primKeyId = companyId; scope = ResourceConstants.SCOPE_COMPANY; } else { continue; } } addAnnouncementsAdminViewResourcePermission(companyId, scope, primKey, primKeyId, roleId); } } deleteResourceAction(resourceActionId); } }
From source file:com.liferay.application.list.my.account.permissions.internal.PanelAppMyAccountPermissions.java
License:Open Source License
private void _initPermissions(long companyId, String portletId, String rootPortletId, Role userRole, List<String> actionIds) throws Exception { PortletPreferences portletPreferences = _portletPreferencesFactory.getLayoutPortletSetup(companyId, companyId, PortletKeys.PREFS_OWNER_TYPE_COMPANY, LayoutConstants.DEFAULT_PLID, portletId, PortletConstants.DEFAULT_PREFERENCES); if (_prefsProps.getBoolean(portletPreferences, "myAccountAccessInControlPanelPermissionsInitialized")) { return;//from w ww . j a va 2 s .co m } if (actionIds.contains(ActionKeys.ACCESS_IN_CONTROL_PANEL)) { _resourcePermissionLocalService.addResourcePermission(companyId, rootPortletId, ResourceConstants.SCOPE_COMPANY, String.valueOf(companyId), userRole.getRoleId(), ActionKeys.ACCESS_IN_CONTROL_PANEL); } portletPreferences.setValue("myAccountAccessInControlPanelPermissionsInitialized", StringPool.TRUE); portletPreferences.store(); }
From source file:com.liferay.application.list.my.account.permissions.test.PanelAppMyAccountPermissionsTest.java
License:Open Source License
private boolean _hasMyAccountPermission(long companyId, String portletId) throws Exception { Role userRole = RoleLocalServiceUtil.getRole(companyId, RoleConstants.USER); return ResourcePermissionLocalServiceUtil.hasResourcePermission(companyId, portletId, ResourceConstants.SCOPE_COMPANY, String.valueOf(companyId), userRole.getRoleId(), ActionKeys.ACCESS_IN_CONTROL_PANEL); }
From source file:com.liferay.exportimport.test.LayoutSetPrototypePropagationTest.java
License:Open Source License
@Test public void testResetPrototypeWithPermissions() throws Exception { Role role = RoleTestUtil.addRole(RoleConstants.TYPE_REGULAR); RoleLocalServiceUtil.addUserRole(_user1.getUserId(), role); ResourcePermissionLocalServiceUtil.addResourcePermission(_user1.getCompanyId(), Group.class.getName(), ResourceConstants.SCOPE_COMPANY, String.valueOf(_user1.getCompanyId()), role.getRoleId(), ActionKeys.UPDATE);/*from w w w .j a v a 2 s . c o m*/ PermissionChecker permissionChecker = PermissionCheckerFactoryUtil.create(_user1); PermissionThreadLocal.setPermissionChecker(permissionChecker); Group userGroup = GroupLocalServiceUtil.getUserGroup(_user2.getCompanyId(), _user2.getUserId()); LayoutSet layoutSet = LayoutSetLocalServiceUtil.getLayoutSet(userGroup.getGroupId(), true); SitesUtil.resetPrototype(layoutSet); }
From source file:com.liferay.roles.admin.internal.exportimport.data.handler.ImportExportPermissionConversionFilter.java
License:Open Source License
@Override public boolean accept(Role role, ResourcePermission resourcePermission) { int scope = resourcePermission.getScope(); if ((scope == ResourceConstants.SCOPE_COMPANY) || (scope == ResourceConstants.SCOPE_GROUP_TEMPLATE)) { return true; } else if (resourcePermission.getScope() == ResourceConstants.SCOPE_GROUP) { Group group = GroupLocalServiceUtil.fetchGroup(Long.valueOf(resourcePermission.getPrimKey())); if (group.isCompany() || group.isUserPersonalSite()) { return true; }/*from ww w.j a v a2 s .c o m*/ } return false; }
From source file:com.liferay.roles.admin.internal.exportimport.data.handler.RoleStagedModelDataHandler.java
License:Open Source License
protected void deleteRolePermissions(PortletDataContext portletDataContext, Role importedRole) { List<ResourcePermission> resourcePermissions = _resourcePermissionLocalService.getRoleResourcePermissions( importedRole.getRoleId(),//from ww w . j a v a2s . com new int[] { ResourceConstants.SCOPE_COMPANY, ResourceConstants.SCOPE_GROUP_TEMPLATE }, QueryUtil.ALL_POS, QueryUtil.ALL_POS); for (ResourcePermission resourcePermission : resourcePermissions) { _resourcePermissionLocalService.deleteResourcePermission(resourcePermission); } List<ResourcePermission> groupResourcePermissions = _resourcePermissionLocalService .getRoleResourcePermissions(importedRole.getRoleId(), new int[] { ResourceConstants.SCOPE_GROUP }, QueryUtil.ALL_POS, QueryUtil.ALL_POS); for (ResourcePermission groupResourcePermission : groupResourcePermissions) { long groupId = GetterUtil.getLong(groupResourcePermission.getPrimKey()); if ((groupId == portletDataContext.getCompanyGroupId()) || (groupId == portletDataContext.getUserPersonalSiteGroupId())) { _resourcePermissionLocalService.deleteResourcePermission(groupResourcePermission); } } }
From source file:com.liferay.roles.admin.internal.exportimport.data.handler.RoleStagedModelDataHandler.java
License:Open Source License
protected void importResourcePermissions(PortletDataContext portletDataContext, Role importedRole, Permission permission) throws PortalException { int scope = permission.getScope(); if (scope == ResourceConstants.SCOPE_COMPANY) { _resourcePermissionService.addResourcePermission(portletDataContext.getCompanyGroupId(), portletDataContext.getCompanyId(), permission.getName(), scope, String.valueOf(portletDataContext.getCompanyId()), importedRole.getRoleId(), permission.getActionId()); } else if (scope == ResourceConstants.SCOPE_GROUP) { long groupId = portletDataContext.getCompanyGroupId(); long primaryKey = groupId; long sourceGroupId = GetterUtil.getLong(permission.getPrimKey()); if (sourceGroupId == portletDataContext.getSourceUserPersonalSiteGroupId()) { PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); User user = permissionChecker.getUser(); groupId = user.getGroupId(); primaryKey = portletDataContext.getUserPersonalSiteGroupId(); }/*from w w w .ja va 2 s . c om*/ _resourcePermissionService.addResourcePermission(groupId, portletDataContext.getCompanyId(), permission.getName(), ResourceConstants.SCOPE_GROUP, String.valueOf(primaryKey), importedRole.getRoleId(), permission.getActionId()); } else if (scope == ResourceConstants.SCOPE_GROUP_TEMPLATE) { _resourcePermissionService.addResourcePermission(GroupConstants.DEFAULT_PARENT_GROUP_ID, portletDataContext.getCompanyId(), permission.getName(), ResourceConstants.SCOPE_GROUP_TEMPLATE, String.valueOf(GroupConstants.DEFAULT_PARENT_GROUP_ID), importedRole.getRoleId(), permission.getActionId()); } else { if (_log.isDebugEnabled()) { _log.debug("Individually scoped permissions are not imported"); } } }
From source file:com.liferay.roles.admin.web.internal.portlet.RolesAdminPortlet.java
License:Open Source License
public void updateActions(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); long roleId = ParamUtil.getLong(actionRequest, "roleId"); Role role = _roleLocalService.getRole(roleId); String roleName = role.getName(); if (roleName.equals(RoleConstants.ADMINISTRATOR) || roleName.equals(RoleConstants.ORGANIZATION_ADMINISTRATOR) || roleName.equals(RoleConstants.ORGANIZATION_OWNER) || roleName.equals(RoleConstants.OWNER) || roleName.equals(RoleConstants.SITE_ADMINISTRATOR) || roleName.equals(RoleConstants.SITE_OWNER)) { throw new RolePermissionsException(roleName); }// w w w . j av a 2 s .c o m String portletResource = ParamUtil.getString(actionRequest, "portletResource"); String[] relatedPortletResources = StringUtil .split(ParamUtil.getString(actionRequest, "relatedPortletResources")); String[] modelResources = StringUtil.split(ParamUtil.getString(actionRequest, "modelResources")); Map<String, List<String>> resourceActionsMap = new HashMap<>(); if (Validator.isNotNull(portletResource)) { resourceActionsMap.put(portletResource, ResourceActionsUtil.getResourceActions(portletResource, null)); } for (String relatedPortletResource : relatedPortletResources) { resourceActionsMap.put(relatedPortletResource, ResourceActionsUtil.getResourceActions(relatedPortletResource, null)); } for (String modelResource : modelResources) { resourceActionsMap.put(modelResource, ResourceActionsUtil.getResourceActions(null, modelResource)); } int rootResourceScope = ResourceConstants.SCOPE_COMPANY; String[] rootResourceGroupIds = null; String[] selectedTargets = StringUtil.split(ParamUtil.getString(actionRequest, "selectedTargets")); String[] unselectedTargets = StringUtil.split(ParamUtil.getString(actionRequest, "unselectedTargets")); for (Map.Entry<String, List<String>> entry : resourceActionsMap.entrySet()) { String selResource = entry.getKey(); List<String> actions = entry.getValue(); actions = ListUtil.sort(actions, new ActionComparator(themeDisplay.getLocale())); for (String actionId : actions) { String target = selResource + actionId; boolean selected = ArrayUtil.contains(selectedTargets, target); if (!selected && !ArrayUtil.contains(unselectedTargets, target)) { continue; } String[] groupIds = StringUtil.split(ParamUtil.getString(actionRequest, "groupIds" + target)); groupIds = ArrayUtil.distinct(groupIds); int scope = ResourceConstants.SCOPE_COMPANY; if ((role.getType() == RoleConstants.TYPE_ORGANIZATION) || (role.getType() == RoleConstants.TYPE_PROVIDER) || (role.getType() == RoleConstants.TYPE_SITE)) { scope = ResourceConstants.SCOPE_GROUP_TEMPLATE; } else { if (groupIds.length > 0) { scope = ResourceConstants.SCOPE_GROUP; } } updateAction(role, themeDisplay.getScopeGroupId(), selResource, actionId, selected, scope, groupIds); if (selected && actionId.equals(ActionKeys.ACCESS_IN_CONTROL_PANEL)) { updateViewControlPanelPermission(role, themeDisplay.getScopeGroupId(), selResource, scope, groupIds); rootResourceScope = scope; rootResourceGroupIds = groupIds; } } } // LPS-38031 if (rootResourceGroupIds != null) { updateViewRootResourcePermission(role, themeDisplay.getScopeGroupId(), portletResource, rootResourceScope, rootResourceGroupIds); } // Send redirect SessionMessages.add(actionRequest, "permissionsUpdated"); String redirect = _portal.escapeRedirect(ParamUtil.getString(actionRequest, "redirect")); if (Validator.isNotNull(redirect)) { actionResponse.sendRedirect(redirect); } }
From source file:com.liferay.roles.admin.web.internal.portlet.RolesAdminPortlet.java
License:Open Source License
protected void updateAction(Role role, long groupId, String selResource, String actionId, boolean selected, int scope, String[] groupIds) throws Exception { long companyId = role.getCompanyId(); long roleId = role.getRoleId(); if (selected) { if (scope == ResourceConstants.SCOPE_COMPANY) { _resourcePermissionService.addResourcePermission(groupId, companyId, selResource, scope, String.valueOf(role.getCompanyId()), roleId, actionId); } else if (scope == ResourceConstants.SCOPE_GROUP_TEMPLATE) { _resourcePermissionService.addResourcePermission(groupId, companyId, selResource, ResourceConstants.SCOPE_GROUP_TEMPLATE, String.valueOf(GroupConstants.DEFAULT_PARENT_GROUP_ID), roleId, actionId); } else if (scope == ResourceConstants.SCOPE_GROUP) { _resourcePermissionService.removeResourcePermissions(groupId, companyId, selResource, ResourceConstants.SCOPE_GROUP, roleId, actionId); for (String curGroupId : groupIds) { _resourcePermissionService.addResourcePermission(groupId, companyId, selResource, ResourceConstants.SCOPE_GROUP, curGroupId, roleId, actionId); }//from ww w .j av a 2s . co m } } else { // Remove company, group template, and group permissions _resourcePermissionService.removeResourcePermissions(groupId, companyId, selResource, ResourceConstants.SCOPE_COMPANY, roleId, actionId); _resourcePermissionService.removeResourcePermissions(groupId, companyId, selResource, ResourceConstants.SCOPE_GROUP_TEMPLATE, roleId, actionId); _resourcePermissionService.removeResourcePermissions(groupId, companyId, selResource, ResourceConstants.SCOPE_GROUP, roleId, actionId); } }
From source file:com.liferay.trash.service.webserver.test.WebServerTrashTest.java
License:Open Source License
@Override public void setUp() throws Exception { super.setUp(); _user = UserTestUtil.addUser(null, group.getGroupId()); String portletId = PortletProviderUtil.getPortletId(TrashEntry.class.getName(), PortletProvider.Action.VIEW); _role = RoleTestUtil.addRole("Trash Admin", RoleConstants.TYPE_REGULAR, portletId, ResourceConstants.SCOPE_COMPANY, String.valueOf(TestPropsValues.getCompanyId()), ActionKeys.ACCESS_IN_CONTROL_PANEL); RoleTestUtil.addResourcePermission(RoleConstants.GUEST, DLPermission.RESOURCE_NAME, ResourceConstants.SCOPE_GROUP_TEMPLATE, String.valueOf(GroupConstants.DEFAULT_PARENT_GROUP_ID), ActionKeys.VIEW);//from ww w . j a v a 2 s .c o m }