public static List<TeamCalDO> getCalList(TeamCalCache teamCalCache, final Collection<Integer> teamCalIds) { final List<TeamCalDO> list = new ArrayList<>(); if (teamCalIds != null) { for (final Integer calId : teamCalIds) { final TeamCalDO cal = teamCalCache.getCalendar(calId); if (cal != null) { list.add(cal); } else { log.warn("Calendar with id " + calId + " not found in cache."); } } } return list; }
@Override public TeamCalDO getVacationCalendar() { return teamCalCache.getCalendar((Integer) configDao.getValue(ConfigurationParam.VACATION_CAL_ID)); }
/** * @param calIds * @return */ public Collection<TeamCalDO> getSortedCalendars(final String calIds) { if (StringUtils.isEmpty(calIds) == true) { return null; } sortedCals = new TreeSet<TeamCalDO>(calsComparator); final int[] ids = StringHelper.splitToInts(calIds, ",", false); for (final int id : ids) { final TeamCalDO cal = teamCalCache.getCalendar(id); if (cal != null) { sortedCals.add(cal); } else { log.warn("TeamCalDO with id '" + id + "' not found. calIds string was: " + calIds); } } return sortedCals; }
@Override public Collection<TeamCalDO> toChoices(final Collection<String> ids) { final List<TeamCalDO> list = new ArrayList<TeamCalDO>(); if (ids == null) { return list; } for (final String str : ids) { final Integer calId = NumberHelper.parseInteger(str); if (calId == null) { continue; } final TeamCalDO cal = teamCalCache.getCalendar(calId); if (cal != null) { list.add(cal); } } return list; } }
private DataobjectAccessType getAccessType(final Integer calendarId, final Integer userId) { final TeamCalDO cal = teamCalCache.getCalendar(calendarId); return getTeamCalRight().getAccessType(cal, userId); }
/** * @param calIds * @return */ public List<String> getCalendarNames(final String calIds) { if (StringUtils.isEmpty(calIds) == true) { return null; } final int[] ids = StringHelper.splitToInts(calIds, ",", false); final List<String> list = new ArrayList<String>(); for (final int id : ids) { final TeamCalDO cal = teamCalCache.getCalendar(id); if (cal != null) { list.add(cal.getTitle()); } else { log.warn("TeamCalDO with id '" + id + "' not found. calIds string was: " + calIds); } } return list; }
public void setCalendar(final Integer calendarId) { if (calendarId != null) { setCalendar(teamCalCache.getCalendar(calendarId)); } else { setCalendar((TeamCalDO) null); } }
/** * @return All contained calendars (visible and not visible ones). */ public List<TeamCalDO> getCalendars() { final List<TeamCalDO> result = new ArrayList<TeamCalDO>(); for (final TemplateCalendarProperties props : this.calendarProperties) { final TeamCalDO cal = getTeamCalCache().getCalendar(props.getCalId()); if (cal != null) { result.add(cal); } else { log.error("Oups, calendar with id " + props.getCalId() + " not found in TeamCalCache."); } } return result; }
@DELETE @Consumes(MediaType.APPLICATION_JSON) public Response deleteTeamEvent(final CalendarEventObject calendarEvent) { //Getting the calender at which the event will created/updated TeamCalDO teamCalDO = teamCalCache.getCalendar(calendarEvent.getCalendarId()); // Get handler final ICalHandler handler = this.teamEventService.getEventHandler(teamCalDO); final InputStream iCalStream = new ByteArrayInputStream(Base64.decodeBase64(calendarEvent.getIcsData())); if (handler.readICal(iCalStream, HandleMethod.CANCEL) == false || handler.eventCount() != 1) { return Response.serverError().build(); } if (handler.validate() == false) { return Response.serverError().build(); } handler.persist(true); return Response.ok().build(); }
public Collection<TeamCalDO> getCalendars(final Collection<Integer> calIds) { final Set<TeamCalDO> set = new TreeSet<TeamCalDO>(new TeamCalsComparator()); if (calIds != null) { for (final Integer calId : calIds) { final TeamCalDO cal = getCalendar(calId); if (cal == null) { log.warn("Calendar with id " + calId + " not found in cache."); continue; } if (teamCalRight.hasSelectAccess(ThreadLocalUserContext.getUser()) == true) { set.add(cal); } } } return set; }
private Response handleICal(final CalendarEventObject calendarEvent) { try { //Getting the calender at which the event will created/updated TeamCalDO teamCalDO = teamCalCache.getCalendar(calendarEvent.getCalendarId()); // Get handler final ICalHandler handler = this.teamEventService.getEventHandler(teamCalDO); final InputStream iCalStream = new ByteArrayInputStream(Base64.decodeBase64(calendarEvent.getIcsData())); if (handler.readICal(iCalStream, HandleMethod.ADD_UPDATE) == false || handler.isEmpty()) { return Response.serverError().build(); } if (handler.validate() == false) { return Response.serverError().build(); } handler.persist(true); final CalendarEventObject result = this.getEventObject(handler.getFirstResult()); log.info("Team event: " + result.getSubject() + " for calendar #" + teamCalDO.getId() + " successfully created."); final String json = JsonUtils.toJson(result); return Response.ok(json).build(); } catch (Exception e) { log.error("Exception while creating team event", e); return Response.serverError().build(); } }
continue; final TeamCalDO calendar = teamCalCache.getCalendar(calendarId); if (getTeamCalRight().getAccessType(calendar, userId).isIn(DataobjectAccessType.FULL, DataobjectAccessType.READONLY, DataobjectAccessType.MINIMAL) == false) { final TeamEventSubscription eventSubscription = subscriptions.get(filter.getTeamCalId()); if (eventSubscription != null) { final TeamCalDO cal = teamCalCache.getCalendar(filter.getTeamCalId()); if (getTeamCalRight().getAccessType(cal, userId) .isIn(DataobjectAccessType.FULL, DataobjectAccessType.READONLY, DataobjectAccessType.MINIMAL) == true) { if (recurrenceEvents != null && recurrenceEvents.size() > 0) { for (final TeamEventDO event : recurrenceEvents) { final TeamCalDO calendar = teamCalCache.getCalendar(calendarId); if (getTeamCalRight().getAccessType(calendar, userId) == DataobjectAccessType.MINIMAL) { result.add(event.createMinimalCopy());
@Override public void populateItem(final Item<ICellPopulator<ConfigurationDO>> item, final String componentId, final IModel<ConfigurationDO> rowModel) { final ConfigurationDO configuration = rowModel.getObject(); final String value; if (configuration.getValue() == null) { value = ""; } else if (configuration.getConfigurationType() == ConfigurationType.TASK) { final TaskDO task = getTaskTree().getTaskById(configuration.getTaskId()); if (task != null) { value = task.getId() + ": " + task.getTitle(); } else { value = "???"; } } else if (configuration.getConfigurationType() == ConfigurationType.CALENDAR) { final TeamCalDO calendar = teamCalCache.getCalendar(configuration.getCalendarId()); if (calendar != null) { value = calendar.getTitle(); } else { value = "???"; } } else { value = String.valueOf(configuration.getValue()); } item.add(new Label(componentId, value)); cellItemListener.populateItem(item, componentId, rowModel); } });
/** * @see org.projectforge.web.calendar.CalendarPage#refresh() */ @Override protected void refresh() { super.refresh(); final TeamCalCalendarFilter filter = getFilter(); final TemplateEntry templateEntry = filter.getActiveTemplateEntry(); if (templateEntry == null) { // Nothing to do. return; } final Set<Integer> visibleCalendarIds = templateEntry.getVisibleCalendarIds(); if (visibleCalendarIds == null) { // Nothing to do. return; } for (final Integer calId : visibleCalendarIds) { final TeamCalDO teamCalDO = teamCalCache.getCalendar(calId); if (teamCalDO == null || teamCalDO.isExternalSubscription() == false) { // Nothing to do. continue; } teamEventExternalSubscriptionCache.updateCache(teamCalDO, true); } }
.getDeserializedUserPreferencesByUserId(ThreadLocalUserContext.getUserId(), TeamCalDO.TEAMCALRESTBLACKLIST, Integer[].class); if (teamCalBlackListIds != null && teamCalBlackListIds.length > 0) { Arrays.stream(teamCalBlackListIds).forEach(calId -> teamCalRestWhiteList.remove(teamCalCache.getCalendar(calId)));
} else if (data.getConfigurationType() == ConfigurationType.CALENDAR) { if (data.getCalendarId() != null) { this.calendar = teamCalCache.getCalendar(data.getCalendarId());
if (list != null) { for (final Integer calId : list) { final TeamCalDO cal = teamCalCache.getCalendar(calId); calendarsListHelper.addOriginalAssignedItem(cal).assignItem(cal);