Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save eduardolundgren/2410234 to your computer and use it in GitHub Desktop.
Save eduardolundgren/2410234 to your computer and use it in GitHub Desktop.
public CalendarResource addCalendarResource(
long userId, long groupId, String className, long classPK,
String classUuid, long defaultCalendarId, String code, Map<Locale,
String> nameMap, Map<Locale, String> descriptionMap, String type,
boolean active, ServiceContext serviceContext)
throws PortalException, SystemException {
// Calendar resource
long calendarResourceId = counterLocalService.increment();
if (Validator.isNull(className)) {
className = CalendarResource.class.getName();
classPK = calendarResourceId;
}
long globalUserId = 0;
if (CalendarResourceUtil.isGlobalResource(className)) {
globalUserId = CalendarResourceUtil.getGlobalResourceUserId(
className, classPK);
}
if (globalUserId > 0) {
userId = globalUserId;
}
User user = userPersistence.findByPrimaryKey(userId);
long classNameId = PortalUtil.getClassNameId(className);
Date now = new Date();
validate(classNameId, classPK);
CalendarResource calendarResource = calendarResourcePersistence.create(
calendarResourceId);
calendarResource.setUuid(serviceContext.getUuid());
calendarResource.setGroupId(groupId);
calendarResource.setCompanyId(user.getCompanyId());
calendarResource.setUserId(user.getUserId());
calendarResource.setUserName(user.getFullName());
calendarResource.setCreateDate(serviceContext.getCreateDate(now));
calendarResource.setModifiedDate(serviceContext.getModifiedDate(now));
calendarResource.setClassNameId(classNameId);
if (className.equals(CalendarResource.class.getName())) {
calendarResource.setClassPK(calendarResourceId);
}
else {
calendarResource.setClassPK(classPK);
}
calendarResource.setClassUuid(classUuid);
calendarResource.setDefaultCalendarId(defaultCalendarId);
calendarResource.setCode(code);
calendarResource.setNameMap(nameMap);
calendarResource.setDescriptionMap(descriptionMap);
calendarResource.setType(type);
calendarResource.setActive(active);
calendarResourcePersistence.update(calendarResource, false);
// Resources
resourceLocalService.addModelResources(
calendarResource, serviceContext);
// Calendar
if (defaultCalendarId <= 0) {
Calendar calendar = calendarLocalService.addCalendar(
userId, groupId, calendarResourceId, nameMap, descriptionMap,
PortletPropsValues.CALENDAR_COLOR_DEFAULT, true,
serviceContext);
calendarResource.setDefaultCalendarId(calendar.getCalendarId());
calendarResourcePersistence.update(calendarResource, false);
}
return calendarResource;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment