public function isValidEvent(ilCalendarEntry $a_event) { global $ilUser; $booking = new ilBookingEntry($a_event->getContextId()); // portfolio embedded: filter by consultation hour groups? if (!is_array($this->group_ids) || in_array($booking->getBookingGroup(), $this->group_ids)) { // do not filter against course/group in portfolio if ($this->cats->getMode() == ilCalendarCategories::MODE_PORTFOLIO_CONSULTATION) { $booking->setTargetObjIds(null); } if (($this->user_id == $ilUser->getId() || !$booking->isBookedOut($a_event->getEntryId(), true)) && $booking->isTargetObjectVisible($this->cats->getTargetRefId())) { return true; } } return false; }