ILIAS  trunk Revision v11.0_alpha-1831-g8615d53dadb
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilCalendarScheduleFilterBookings Class Reference

Calendar schedule filter for consultation hour bookings. More...

+ Inheritance diagram for ilCalendarScheduleFilterBookings:
+ Collaboration diagram for ilCalendarScheduleFilterBookings:

Public Member Functions

 __construct (int $a_user_id)
 
 filterCategories (array $a_cats)
 
 modifyEvent (ilCalendarEntry $a_event)
 
 addCustomEvents (ilDate $start, ilDate $end, array $a_categories)
 

Protected Attributes

int $user_id
 
ilCalendarCategories $cats
 
ilObjUser $user
 

Detailed Description

Calendar schedule filter for consultation hour bookings.

Author
Jörg Lützenkirchen luetz.nosp@m.enki.nosp@m.rchen.nosp@m.@lei.nosp@m.fos.c.nosp@m.om

Definition at line 26 of file class.ilCalendarScheduleFilterBookings.php.

Constructor & Destructor Documentation

◆ __construct()

ilCalendarScheduleFilterBookings::__construct ( int  $a_user_id)

Definition at line 32 of file class.ilCalendarScheduleFilterBookings.php.

References $DIC, ilCalendarCategories\_getInstance(), and ILIAS\Repository\user().

33  {
34  global $DIC;
35 
36  $this->user_id = $a_user_id;
37  $this->cats = ilCalendarCategories::_getInstance();
38  $this->user = $DIC->user();
39  }
global $DIC
Definition: shib_login.php:22
static _getInstance($a_usr_id=0)
get singleton instance
+ Here is the call graph for this function:

Member Function Documentation

◆ addCustomEvents()

ilCalendarScheduleFilterBookings::addCustomEvents ( ilDate  $start,
ilDate  $end,
array  $a_categories 
)

Implements ilCalendarScheduleFilter.

Definition at line 74 of file class.ilCalendarScheduleFilterBookings.php.

74  : array
75  {
76  return [];
77  }

◆ filterCategories()

ilCalendarScheduleFilterBookings::filterCategories ( array  $a_cats)

Implements ilCalendarScheduleFilter.

Definition at line 44 of file class.ilCalendarScheduleFilterBookings.php.

44  : array
45  {
46  return $a_cats;
47  }

◆ modifyEvent()

ilCalendarScheduleFilterBookings::modifyEvent ( ilCalendarEntry  $a_event)

Implements ilCalendarScheduleFilter.

Definition at line 52 of file class.ilCalendarScheduleFilterBookings.php.

References $user_id, ilCalendarEntry\getContextId(), ilCalendarEntry\getEntryId(), ilCalendarCategories\MODE_PORTFOLIO_CONSULTATION, null, and ILIAS\Repository\user().

53  {
54  $booking = new ilBookingEntry($a_event->getContextId());
55  // do not show bookings of foreign users
56  if ($booking->getObjId() != $this->user_id) {
57  return null;
58  }
59  if ($this->cats->getMode() == ilCalendarCategories::MODE_PORTFOLIO_CONSULTATION) {
60  $booking->setTargetObjIds(null);
61  }
62 
63  if (($this->user_id == $this->user->getId() ||
64  !$booking->isBookedOut($a_event->getEntryId(), true)) &&
65  $booking->isTargetObjectVisible($this->cats->getTargetRefId())) {
66  return $a_event;
67  }
68  return null;
69  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
+ Here is the call graph for this function:

Field Documentation

◆ $cats

ilCalendarCategories ilCalendarScheduleFilterBookings::$cats
protected

Definition at line 29 of file class.ilCalendarScheduleFilterBookings.php.

◆ $user

ilObjUser ilCalendarScheduleFilterBookings::$user
protected

Definition at line 30 of file class.ilCalendarScheduleFilterBookings.php.

◆ $user_id

int ilCalendarScheduleFilterBookings::$user_id
protected

Definition at line 28 of file class.ilCalendarScheduleFilterBookings.php.

Referenced by modifyEvent().


The documentation for this class was generated from the following file: