PluginProbe
FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler / 1.6.4
FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler v1.6.4
1.6.4 1.6.3 1.6.2 1.6.1 1.6.0 1.5.4 1.5.5 1.5.3 1.5.2 1.5.1 1.5.0 1.4.2 1.4.1 1.4.0 1.3.28 1.3.27 1.3.26 1.3.25 1.3.23 1.3.22 1.3.21 1.3.20 1.3.19 trunk 1.2.0 All 47 releases
fluent-cart / app / Events / Order / OrderDeleted.php

OrderDeleted.php in FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler 1.6.4, at app/Events/Order/OrderDeleted.php

56 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace FluentCart\App\Events\Order;
4
5 use FluentCart\App\Events\EventDispatcher;
6 use FluentCart\App\Listeners;
7 use FluentCart\App\Models\Customer;
8 use FluentCart\App\Models\Order;
9
10 class OrderDeleted extends EventDispatcher
11 {
12 public string $hook = 'fluent_cart/order_deleted';
13
14 protected array $listeners = [
15 // Listeners\UpdateStock::class,
16 Listeners\Order\OrderDeleted::class
17 ];
18
19 /**
20 * @var Order $order
21 */
22 public Order $order;
23
24 /**
25 * @var Customer|null $customer
26 */
27
28 public array $connectedOrderIds;
29
30 public function __construct(Order $order, $connectedOrderIds = [])
31 {
32 $this->order = $order;
33 $this->connectedOrderIds = $connectedOrderIds ?? [];
34 $this->order->loadMissing('customer', 'shipping_address', 'billing_address');
35 }
36
37 public function toArray(): array
38 {
39 return [
40 'order' => $this->order,
41 'customer' => $this->order->customer ?? [],
42 'connected_order_ids' => $this->connectedOrderIds
43 ];
44 }
45
46 public function getActivityEventModel()
47 {
48 return $this->order;
49 }
50
51 public function shouldCreateActivity(): bool
52 {
53 return $this->order->mode !== \FluentCart\App\Helpers\Status::ORDER_MODE_TEST;
54 }
55 }
56