Example usage for com.liferay.portal.kernel.security.permission ActionKeys MANAGE_SUBGROUPS

List of usage examples for com.liferay.portal.kernel.security.permission ActionKeys MANAGE_SUBGROUPS

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.security.permission ActionKeys MANAGE_SUBGROUPS.

Prototype

String MANAGE_SUBGROUPS

To view the source code for com.liferay.portal.kernel.security.permission ActionKeys MANAGE_SUBGROUPS.

Click Source Link

Usage

From source file:com.liferay.roles.admin.web.internal.portlet.RolesAdminPortlet.java

License:Open Source License

public Role editRole(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

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

    String name = ParamUtil.getString(actionRequest, "name");
    Map<Locale, String> titleMap = LocalizationUtil.getLocalizationMap(actionRequest, "title");
    Map<Locale, String> descriptionMap = LocalizationUtil.getLocalizationMap(actionRequest, "description");
    int type = ParamUtil.getInteger(actionRequest, "type", RoleConstants.TYPE_REGULAR);
    String subtype = ParamUtil.getString(actionRequest, "subtype");
    ServiceContext serviceContext = ServiceContextFactory.getInstance(Role.class.getName(), actionRequest);

    if (roleId <= 0) {

        // Add role

        Role role = _roleService.addRole(null, 0, name, titleMap, descriptionMap, type, subtype,
                serviceContext);//w  ww .j  ava2 s.  co m

        String redirect = ParamUtil.getString(actionRequest, "redirect");

        redirect = _http.setParameter(redirect, actionResponse.getNamespace() + "roleId", role.getRoleId());

        actionRequest.setAttribute(WebKeys.REDIRECT, redirect);

        SessionMessages.add(actionRequest, "roleCreated");

        actionResponse.sendRedirect(redirect);

        return role;
    } else {

        // Update role

        if (name.equals(RoleConstants.SITE_ADMINISTRATOR)) {
            Role role = _roleLocalService.getRole(roleId);
            ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);
            boolean manageSubgroups = ParamUtil.getBoolean(actionRequest, "manageSubgroups");

            updateAction(role, themeDisplay.getScopeGroupId(), Group.class.getName(),
                    ActionKeys.MANAGE_SUBGROUPS, manageSubgroups, ResourceConstants.SCOPE_GROUP_TEMPLATE,
                    new String[0]);
        }

        return _roleService.updateRole(roleId, name, titleMap, descriptionMap, subtype, serviceContext);
    }
}

From source file:com.liferay.site.service.persistence.test.GroupServicePermissionTest.java

License:Open Source License

protected void givePermissionToManageSubsites(Group group) throws Exception {

    Role role = RoleTestUtil.addRole("Subsites Admin", RoleConstants.TYPE_SITE, Group.class.getName(),
            ResourceConstants.SCOPE_GROUP_TEMPLATE, String.valueOf(GroupConstants.DEFAULT_PARENT_GROUP_ID),
            ActionKeys.MANAGE_SUBGROUPS);

    long[] roleIds = { role.getRoleId() };

    UserGroupRoleLocalServiceUtil.addUserGroupRoles(_user.getUserId(), group.getGroupId(), roleIds);
}