ILIAS  release_7 Revision v7.30-3-g800a261c036
ilBookingInfoScreenAdapter Class Reference

Embeds booking information into info screen. More...

+ Collaboration diagram for ilBookingInfoScreenAdapter:

Public Member Functions

 __construct (ilInfoScreenGUI $info_screen_gui)
 Constructor. More...
 
 add ()
 Add info. More...
 

Protected Member Functions

 getPoolIds ()
 Get pool ids. More...
 
 getList ()
 Get list. More...
 

Protected Attributes

 $info_screen_gui
 
 $context_obj_id
 
 $use_book_repo
 

Detailed Description

Embeds booking information into info screen.

Author
killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de

Definition at line 11 of file class.ilBookingInfoScreenAdapter.php.

Constructor & Destructor Documentation

◆ __construct()

ilBookingInfoScreenAdapter::__construct ( ilInfoScreenGUI  $info_screen_gui)

Constructor.

Parameters
ilInfoScreenGUI$info_screen_gui

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

33 {
34 global $DIC;
35 $this->info_screen_gui = $info_screen_gui;
36 $this->context_obj_id = $this->info_screen_gui->getContextObjId();
37
38 $this->use_book_repo = new ilObjUseBookDBRepository($DIC->database());
39 }
This repo stores infos on repository objects that are using booking managers as a service (resource m...
global $DIC
Definition: goto.php:24

References $DIC, and $info_screen_gui.

Member Function Documentation

◆ add()

ilBookingInfoScreenAdapter::add ( )

Add info.

Definition at line 76 of file class.ilBookingInfoScreenAdapter.php.

77 {
79 $current_pool_id = 0;
80
81 foreach ($this->getList() as $item) {
82 // headings (pool title)
83 if ($current_pool_id != $item["pool_id"]) {
84 $info->addSection(ilObject::_lookupTitle($item["pool_id"]));
85 }
86 // booking object
87 $info->addProperty(
88 $item["title"] . " (" . $item["counter"] . ")",
89 ilDatePresentation::formatDate(new ilDate($item["date"], IL_CAL_DATE)) . ", " . $item["slot"]
90 );
91 $current_pool_id = $item["pool_id"];
92 }
93 }
const IL_CAL_DATE
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date @access public.
Class for single dates.
static _lookupTitle($a_id)
lookup object title

References $info_screen_gui, ilObject\_lookupTitle(), ilDatePresentation\formatDate(), getList(), and IL_CAL_DATE.

+ Here is the call graph for this function:

◆ getList()

ilBookingInfoScreenAdapter::getList ( )
protected

Get list.

Returns
array[]

Definition at line 58 of file class.ilBookingInfoScreenAdapter.php.

58 : array
59 {
60 $filter = ["context_obj_ids" => [$this->context_obj_id]];
61 $filter['past'] = true;
62 $filter['status'] = -ilBookingReservation::STATUS_CANCELLED;
64 $repo = $f->getRepo();
65 $list = $repo->getListByDate(true, null, $filter, $this->getPoolIds());
66 $list = ilUtil::sortArray($list, "slot", "asc", true);
67 $list = ilUtil::stableSortArray($list, "date", "asc", true);
68 $list = ilUtil::stableSortArray($list, "pool_id", "asc", true);
69 return $list;
70 }
static sortArray( $array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
static stableSortArray($array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false)
Sort an aray using a stable sort algorithm, which preveserves the sequence of array elements which ha...

References $context_obj_id, Vendor\Package\$f, getPoolIds(), ilUtil\sortArray(), ilUtil\stableSortArray(), and ilBookingReservation\STATUS_CANCELLED.

Referenced by add().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPoolIds()

ilBookingInfoScreenAdapter::getPoolIds ( )
protected

Get pool ids.

Returns
int[]

Definition at line 46 of file class.ilBookingInfoScreenAdapter.php.

47 {
48 $pool_ids = array_map(function ($ref_id) {
49 return ilObject::_lookupObjId($ref_id);
50 }, $this->use_book_repo->getUsedBookingPools($this->context_obj_id));
51 return $pool_ids;
52 }
static _lookupObjId($a_id)

References ilObject\_lookupObjId().

Referenced by getList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $context_obj_id

ilBookingInfoScreenAdapter::$context_obj_id
protected

Definition at line 21 of file class.ilBookingInfoScreenAdapter.php.

Referenced by getList().

◆ $info_screen_gui

ilBookingInfoScreenAdapter::$info_screen_gui
protected

Definition at line 16 of file class.ilBookingInfoScreenAdapter.php.

Referenced by __construct(), and add().

◆ $use_book_repo

ilBookingInfoScreenAdapter::$use_book_repo
protected

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


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