From ef0f2eaef8a0ee1ad7907d1b9ed4a74d0a75cdd4 Mon Sep 17 00:00:00 2001
From: Stanislas Kita
Date: Thu, 5 Mar 2026 10:53:05 +0100
Subject: [PATCH 1/4] Fix(Climb): Fix error from Template mandatory fields
---
inc/ticket.class.php | 13 +------------
1 file changed, 1 insertion(+), 12 deletions(-)
diff --git a/inc/ticket.class.php b/inc/ticket.class.php
index 898271ef..2f52f0d0 100644
--- a/inc/ticket.class.php
+++ b/inc/ticket.class.php
@@ -613,6 +613,7 @@ public static function climb_group($tickets_id, $groups_id, $no_redirect = false
];
if (!$group_ticket->find($condition)) {
$ticket_group = new Group_Ticket();
+ $ticket_group->add($condition);
PluginEscaladeTaskmanager::setTicketTask([
'tickets_id' => $tickets_id,
'is_private' => true,
@@ -622,18 +623,6 @@ public static function climb_group($tickets_id, $groups_id, $no_redirect = false
$group->getName() . '
',
),
]);
- $ticket = new Ticket();
- $ticket->update([
- 'id' => $tickets_id,
- '_actors' => [
- 'assign' => [
- [
- 'items_id' => $groups_id,
- 'itemtype' => 'Group',
- ],
- ],
- ],
- ]);
}
if (!$no_redirect) {
From 9ff58dcac728e48c5d6cb18c2658f0c0214bd2d7 Mon Sep 17 00:00:00 2001
From: Stanislas Kita
Date: Thu, 5 Mar 2026 11:20:02 +0100
Subject: [PATCH 2/4] test
---
inc/ticket.class.php | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/inc/ticket.class.php b/inc/ticket.class.php
index 2f52f0d0..9121f342 100644
--- a/inc/ticket.class.php
+++ b/inc/ticket.class.php
@@ -614,15 +614,6 @@ public static function climb_group($tickets_id, $groups_id, $no_redirect = false
if (!$group_ticket->find($condition)) {
$ticket_group = new Group_Ticket();
$ticket_group->add($condition);
- PluginEscaladeTaskmanager::setTicketTask([
- 'tickets_id' => $tickets_id,
- 'is_private' => true,
- 'state' => Planning::INFO,
- 'content' => '' . sprintf(
- __s('Escalation to the group %s.', 'escalade'),
- $group->getName() . '
',
- ),
- ]);
}
if (!$no_redirect) {
From d231533188e1ce240695e09cdde818883ca09b7e Mon Sep 17 00:00:00 2001
From: Stanislas Kita
Date: Thu, 5 Mar 2026 11:31:20 +0100
Subject: [PATCH 3/4] Fix TU
---
tests/Units/TicketTest.php | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/tests/Units/TicketTest.php b/tests/Units/TicketTest.php
index bd284550..6a9e451f 100644
--- a/tests/Units/TicketTest.php
+++ b/tests/Units/TicketTest.php
@@ -288,7 +288,11 @@ public function testTriggerEscalationAndExecuteRuleOnTicket()
$this->assertEquals(1, count($user_ticket->find(['tickets_id' => $ticket_id, 'users_id' => $user_tech->getID(), 'type' => CommonITILActor::ASSIGN])));
}
- $this->assertEquals(1, count($group_ticket->find(['tickets_id' => $ticket_id, 'groups_id' => $group_observer_id, 'type' => CommonITILActor::OBSERVER])));
+ if ($data['method'] == 'escalateWithTimelineButton') {
+ $this->assertEquals(1, count($group_ticket->find(['tickets_id' => $ticket_id, 'groups_id' => $group_observer_id, 'type' => CommonITILActor::OBSERVER])));
+ } else {
+ $this->assertEquals(0, count($group_ticket->find(['tickets_id' => $ticket_id, 'groups_id' => $group_observer_id, 'type' => CommonITILActor::OBSERVER])));
+ }
}
}
From 2b402e104db89cbf54e384e13a1672999edb8d08 Mon Sep 17 00:00:00 2001
From: Stanislas Kita
Date: Thu, 5 Mar 2026 11:45:50 +0100
Subject: [PATCH 4/4] Fix TU
---
tests/Units/TicketTest.php | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/Units/TicketTest.php b/tests/Units/TicketTest.php
index 6a9e451f..8f789785 100644
--- a/tests/Units/TicketTest.php
+++ b/tests/Units/TicketTest.php
@@ -288,10 +288,10 @@ public function testTriggerEscalationAndExecuteRuleOnTicket()
$this->assertEquals(1, count($user_ticket->find(['tickets_id' => $ticket_id, 'users_id' => $user_tech->getID(), 'type' => CommonITILActor::ASSIGN])));
}
- if ($data['method'] == 'escalateWithTimelineButton') {
- $this->assertEquals(1, count($group_ticket->find(['tickets_id' => $ticket_id, 'groups_id' => $group_observer_id, 'type' => CommonITILActor::OBSERVER])));
- } else {
+ if ($data['method'] == 'escalateWithHistoryButton') {
$this->assertEquals(0, count($group_ticket->find(['tickets_id' => $ticket_id, 'groups_id' => $group_observer_id, 'type' => CommonITILActor::OBSERVER])));
+ } else {
+ $this->assertEquals(1, count($group_ticket->find(['tickets_id' => $ticket_id, 'groups_id' => $group_observer_id, 'type' => CommonITILActor::OBSERVER])));
}
}
}