ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilBookingManager8HotfixDBUpdateSteps.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
24{
25 protected \ilDBInterface $db;
26
27 public function prepare(\ilDBInterface $db): void
28 {
29 $this->db = $db;
30 }
31
32 public function step_1(): void
33 {
34 $db = $this->db;
35 $set1 = $db->queryF(
36 "SELECT * FROM booking_object " .
37 " WHERE schedule_id = %s ",
38 ["integer"],
39 [1]
40 );
41 while ($rec1 = $db->fetchAssoc($set1)) {
42 $set2 = $db->queryF(
43 "SELECT * FROM booking_schedule " .
44 " WHERE pool_id = %s ORDER BY booking_schedule_id ASC LIMIT 1",
45 ["integer"],
46 [$rec1["pool_id"]]
47 );
48 if ($rec2 = $db->fetchAssoc($set2)) {
49 if ((int) $rec2["booking_schedule_id"] !== 1) {
50 $db->update(
51 "booking_object",
52 [
53 "schedule_id" => ["intger", $rec2["booking_schedule_id"]]
54 ],
55 [ // where
56 "booking_object_id" => ["integer", $rec1["booking_object_id"]]
57 ]
58 );
59 }
60 }
61 }
62 }
63}
Interface ilDBInterface.
update(string $table_name, array $values, array $where)
@description $where MUST contain existing columns only.
fetchAssoc(ilDBStatement $statement)
queryF(string $query, array $types, array $values)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...