Showing posts with label create user groups. Show all posts
Showing posts with label create user groups. Show all posts

Friday, September 3, 2021

Liferay groovy script to create user groups, roles and user

 

Create UserGroup:

import com.liferay.portal.kernel.model.User;

import com.liferay.portal.kernel.service.UserGroupLocalServiceUtil;

import com.liferay.portal.kernel.service.UserLocalServiceUtil;

import com.liferay.portal.kernel.util.PortalUtil;

long companyId = PortalUtil.getDefaultCompanyId();

User user = UserLocalServiceUtil.getUserByEmailAddress(companyId, "test@liferay.com");

//User user = UserLocalServiceUtil.getUser(20105);

String[] userGroupNames = new String[3];

userGroupNames[0] = "test_content_editor";

userGroupNames[1] = "test_content_reviewer";

userGroupNames[2] = "test_documentUploader";


for(String userGroupName : userGroupNames){

try {

  UserGroupLocalServiceUtil.addUserGroup(user.getUserId(),user.getCompanyId(),userGroupName,"Description for :" + userGroupName,null);

out.println(userGroupName + " UserGroup created successfully.");

} catch (Exception e) {

     out.println("Error:" + e.getMessage());

    }

}


Create Role:


import java.util.Locale;

import java.util.Map;

import com.liferay.portal.kernel.model.Role;

import com.liferay.portal.kernel.model.RoleConstants;

import com.liferay.portal.kernel.model.User;

import com.liferay.portal.kernel.service.RoleLocalServiceUtil;

import com.liferay.portal.kernel.service.UserGroupLocalServiceUtil;

import com.liferay.portal.kernel.service.UserLocalServiceUtil;

import com.liferay.portal.kernel.util.PortalUtil;

import com.liferay.portal.kernel.model.UserGroup;

 

try {

long companyId = PortalUtil.getDefaultCompanyId();

User user = UserLocalServiceUtil.getUserByEmailAddress(companyId, "test@liferay.com");


List< UserGroup> userGroups = UserGroupLocalServiceUtil.getUserGroups(companyId);


for (UserGroup userGroup : userGroups) {

    String userGroupName = userGroup.getName();

Map<Locale, String> titleMap = null;

Map<Locale, String> descMap = null; 



titleMap = new HashMap<Locale, String>();

titleMap.put(Locale.getDefault(),userGroupName );

descMap = new HashMap<Locale, String>();

descMap.put(Locale.getDefault(),"Description for: " + userGroupName );

 // adding the role

 Role role = RoleLocalServiceUtil.addRole(user.getUserId(),null,0,userGroupName ,titleMap, descMap,RoleConstants.TYPE_REGULAR,null,null); out.println(role + "... role created successfully.");

 // assigning the UserGroup to the role

    GroupLocalServiceUtil.addRoleGroups(role.getRoleId(), [userGroup.getGroupId()] as long[]);


}

} catch (Exception e) {

out.println("Error:" + e.getMessage());

}


Create User:


import com.liferay.portal.kernel.model.User;

import com.liferay.portal.kernel.model.UserGroup;

import com.liferay.portal.kernel.service.UserGroupLocalServiceUtil;

import com.liferay.portal.kernel.service.UserLocalServiceUtil;

import com.liferay.portal.kernel.util.PortalUtil;


import java.util.List;


try {

long companyId = PortalUtil.getDefaultCompanyId();

User user = UserLocalServiceUtil.getUserByEmailAddress(companyId, "test@liferay.com");


List<UserGroup> userGroups = UserGroupLocalServiceUtil.getUserGroups(companyId);


for (UserGroup userGroup : userGroups) {

String userGroupName = userGroup.getName();

                                UserLocalServiceUtil.addUser(Long.valueOf(user.getUserId()), Long.valueOf(companyId), Boolean.valueOf(false), 

"password", "password", Boolean.valueOf(true), userGroupName+"_user", 

userGroupName+"_user@liferay.com", 0, null, Locale.UK,

userGroupName+"_user", "", userGroupName, 123, 345, true, 00, 01, 1970, 

"developer", null, null, null, [userGroup.getUserGroupId()] as long[], false, null);

                                out.println("user created");

                        }

} catch (Exception e) {

out.println(e.getMessage());

out.println(e.printStackTrace());

}