19declare(strict_types=1);
36 $set = $this->db->queryF(
37 "SELECT MAX(order_nr) max_order FROM help_gt_step " .
38 " WHERE tour_id = %s",
42 if ($record = $this->db->fetchAssoc($set)) {
43 return (
int) $record[
"max_order"];
50 $id = $this->db->nextId(
'help_gt_step');
52 $this->db->insert(
'help_gt_step', [
53 'id' => [
'integer',
$id],
54 'tour_id' => [
'integer', $step->
getTourId()],
55 'order_nr' => [
'integer', $order_nr],
56 'type' => [
'integer', $step->
getType()->value],
64 $this->db->update(
'help_gt_step', [
65 'tour_id' => [
'integer', $step->
getTourId()],
66 'order_nr' => [
'integer', $step->
getOrderNr()],
67 'type' => [
'integer', $step->
getType()->value],
70 'id' => [
'integer', $step->
getId()]
74 public function delete(
int $tour_id,
int $step_id):
void
76 $this->db->manipulateF(
77 "DELETE FROM help_gt_step WHERE " .
78 " id = %s AND tour_id = %s",
79 [
"integer",
"integer"],
86 $set = $this->db->queryF(
87 'SELECT * FROM help_gt_step WHERE id = %s',
92 $record = $this->db->fetchAssoc($set);
93 if ($record ===
false) {
105 $set = $this->db->queryF(
106 "SELECT * FROM help_gt_step " .
107 " WHERE tour_id = %s ORDER BY order_nr ASC",
111 while ($record = $this->db->fetchAssoc($set)) {
118 $set = $this->db->queryF(
119 "SELECT COUNT(*) cnt FROM help_gt_step " .
120 " WHERE tour_id = %s",
124 if ($record = $this->db->fetchAssoc($set)) {
125 return (
int) $record[
"cnt"];
130 public function saveOrder(
int $tour_id, array $order): void
133 foreach ($order as $step_id) {
138 "order_nr" => [
"integer", $order_nr],
141 "id" => [
"integer", $step_id],
142 "tour_id" => [
"integer", $tour_id],
150 return $this->data->step(
152 (
int) $record[
'tour_id'],
153 (
int) $record[
'order_nr'],
155 (
string) $record[
'element_id']
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
saveOrder(int $tour_id, array $order)
getStepsOfTour(int $tour_id)
getMaxOrderNr(int $tour_id)
countStepsOfTour(int $tour_id)
__construct(protected ilDBInterface $db, protected InternalDataService $data)
mapRecordToStep(array $record)