29     protected \ILIAS\BookingManager\InternalDomainService 
$domain;
    45         bool $a_call_by_reference = 
true    49         $this->db = $DIC->database();
    53         $this->domain = $DIC->bookingManager()->internal()->domain();
    63             "pool_offline" => array(
"integer", $this->
isOffline()),
    79         $new_id = parent::create();
    82         $fields[
"booking_pool_id"] = array(
"integer", $new_id);
    84         $ilDB->insert(
"booking_settings", $fields);
    93         if (!parent::update()) {
   102                 array(
"booking_pool_id" => array(
"integer", $this->
getId()))
   116         if ($this->
getId()) {
   117             $set = 
$ilDB->query(
'SELECT * FROM booking_settings' .
   118                 ' WHERE booking_pool_id = ' . 
$ilDB->quote($this->getId(), 
'integer'));
   119             $row = 
$ilDB->fetchAssoc($set);
   129             $this->
setMessages((
bool) ((
int) ($row[
'messages'] ?? 0)));
   140         $db = $DIC->database();
   143             "SELECT * FROM booking_settings " .
   144             " WHERE reminder_status = %s " .
   145             " AND reminder_day > %s " .
   146             " AND pool_offline = %s ",
   147             array(
"integer",
"integer",
"integer"),
   165         $db = $DIC->database();
   167                 "last_remind_ts" => array(
"integer", $a_ts)
   169                 "booking_pool_id" => array(
"integer", $a_obj_id)
   173     public function delete(): 
bool   179         if ($this->referenced) {
   181             $use_repo->deleteEntriesOfBookRefId($this->
getRefId());
   185         if (!parent::delete()) {
   191         $ilDB->manipulate(
'DELETE FROM booking_settings' .
   192                 ' WHERE booking_pool_id = ' . 
$ilDB->quote(
$id, 
'integer'));
   194         $ilDB->manipulate(
'DELETE FROM booking_schedule' .
   195                 ' WHERE pool_id = ' . 
$ilDB->quote(
$id, 
'integer'));
   198         $set = 
$ilDB->query(
'SELECT booking_object_id FROM booking_object' .
   199             ' WHERE pool_id = ' . 
$ilDB->quote(
$id, 
'integer'));
   200         while ($row = 
$ilDB->fetchAssoc($set)) {
   201             $objects[] = $row[
'booking_object_id'];
   204         if (count($objects)) {
   205             $ilDB->manipulate(
'DELETE FROM booking_reservation' .
   206                     ' WHERE ' . 
$ilDB->in(
'object_id', $objects, 
'', 
'integer'));
   209         $ilDB->manipulate(
'DELETE FROM booking_object' .
   210             ' WHERE pool_id = ' . 
$ilDB->quote(
$id, 
'integer'));
   217         $new_obj = parent::cloneObject($target_id, $copy_id, $omit_tree);
   219         $schedule_manager = $this->domain->schedules($this->
getId());
   221         if ($new_obj !== null) {
   225             if (!$cp_options->isRootNode($this->getRefId())) {
   226                 $new_obj->setOffline($this->
isOffline());
   241                 foreach ($schedule_manager->getScheduleList() as $schedule_id => 
$title) {
   243                     $smap[$schedule_id] = $schedule->doClone($new_obj->getId());
   250                 $bobj->doClone($new_obj->getId(), $smap);
   263         $this->offline = $a_value;
   274         $this->messages = $a_value;
   288         $this->public_log = $a_value;
   298         $this->schedule_type = $a_value;
   308         $this->reminder_status = $a_val;
   318         $this->reminder_day = $a_val;
   328         $this->preference_nr = $a_val;
   341         $this->pref_deadline = $a_val;
   356         $ilDB = $DIC->database();
   358         $set = 
$ilDB->query(
"SELECT pool_offline" .
   359             " FROM booking_settings" .
   360             " WHERE booking_pool_id = " . 
$ilDB->quote($a_obj_id, 
"integer"));
   361         $row = 
$ilDB->fetchAssoc($set);
   362         return !$row[
"pool_offline"];
   370         $this->overall_limit = $a_value;
   384         $this->reservation_period = $a_value;
   404         foreach ($recs as $record_obj) {
   406                 $field_id = $def->getFieldId();
   407                 $fields[$field_id] = array(
   409                     "title" => $def->getTitle(),
   410                     "type" => $def->getType()
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
static _lookupOnline(int $a_obj_id)
 
getDBFields()
Parse properties for sql statements. 
 
__construct(int $a_id=0, bool $a_call_by_reference=true)
 
fetchAssoc(ilDBStatement $statement)
 
setOverallLimit(?int $a_value=null)
Set overall / global booking limit. 
 
update(string $table_name, array $values, array $where)
$where MUST contain existing columns only. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
static getAdvancedMDFields(int $a_ref_id)
 
static _getSelectedRecordsByObject(string $a_obj_type, int $a_id, string $a_sub_type="", bool $is_ref_id=true)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
static getInstancesByRecordId( $a_record_id, $a_only_searchable=false, string $language='')
Get definitions by record id. 
 
static getPoolsWithReminders()
Get pools with reminders. 
 
setReminderDay(int $a_val)
 
static writeLastReminderTimestamp(int $a_obj_id, int $a_ts)
 
setReminderStatus(int $a_val)
 
setPublicLog(bool $a_value=true)
Toggle public log property. 
 
setMessages(bool $a_value=true)
 
setPreferenceDeadline(int $a_val)
 
setScheduleType(int $a_value)
 
queryF(string $query, array $types, array $values)
 
getReservationFilterPeriod()
 
ILIAS BookingManager InternalDomainService $domain
 
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins 
 
static _getInstance(int $a_copy_id)
 
cloneObject(int $target_id, int $copy_id=0, bool $omit_tree=false)
 
const TYPE_NO_SCHEDULE_PREFERENCES
 
setPreferenceNumber(int $a_val)
 
setReservationFilterPeriod(?int $a_value=null)
Set reservation filter period default. 
 
static getList(int $a_pool_id, string $a_title=null)
Get list of booking objects. 
 
setOffline(bool $a_value=true)