PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.36
OttoKit: All-in-One Automation Platform v1.1.36
1.1.37 1.1.36 1.1.35 1.1.34 1.1.33 1.1.32 1.1.31 1.1.30 1.1.29 1.1.28 1.1.27 1.1.9 trunk 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 1.0.20 1.0.21 1.0.22 1.0.23 1.0.24 1.0.25 1.0.26 1.0.27 1.0.28 1.0.29 1.0.30 1.0.31 1.0.32 1.0.33 1.0.34 1.0.35 1.0.36 1.0.37 1.0.38 1.0.39 1.0.40 1.0.41 1.0.42 1.0.43 1.0.44 1.0.45 1.0.46 1.0.47 1.0.48 1.0.49 1.0.50 1.0.51 1.0.52 1.0.53 1.0.54 1.0.55 1.0.56 1.0.57 1.0.58 1.0.59 1.0.60 1.0.61 1.0.62 1.0.63 1.0.64 1.0.65 1.0.66 1.0.67 1.0.68 1.0.69 1.0.7 1.0.70 1.0.71 1.0.72 1.0.73 1.0.74 1.0.75 1.0.76 1.0.77 1.0.78 1.0.79 1.0.8 1.0.80 1.0.81 1.0.82 1.0.83 1.0.84 1.0.85 1.0.86 1.0.87 1.0.88 1.0.89 1.0.9 1.0.90 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.20 1.1.21 1.1.22 1.1.23 1.1.24 1.1.25 1.1.26 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8
suretriggers / src / Integrations / services-for-surecart / triggers / service-cancel.php
suretriggers / src / Integrations / services-for-surecart / triggers Last commit date
contract-signed.php 1 year ago customer-approves-final-delivery.php 1 year ago customer-request-revision.php 1 year ago delivery-date-changed.php 1 year ago message-final-delivery-sent.php 1 year ago message-sent.php 1 year ago new-service-creation.php 1 year ago requirement-submitted.php 1 year ago service-auto-complete.php 1 year ago service-cancel.php 1 year ago service-completed.php 1 year ago service-mark-completed.php 1 year ago service-marked-cancelled.php 1 year ago
service-cancel.php
119 lines
1 <?php
2 /**
3 * ServiceCancel.
4 * php version 5.6
5 *
6 * @category ServiceCancel
7 * @package SureTriggers
8 * @author BSF <username@example.com>
9 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
10 * @link https://www.brainstormforce.com/
11 * @since 1.0.0
12 */
13
14 namespace SureTriggers\Integrations\ServicesForSureCart\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Integrations\WordPress\WordPress;
18 use SureTriggers\Traits\SingletonLoader;
19
20 if ( ! class_exists( 'ServiceCancel' ) ) :
21
22 /**
23 * ServiceCancel
24 *
25 * @category ServiceCancel
26 * @package SureTriggers
27 * @author BSF <username@example.com>
28 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
29 * @link https://www.brainstormforce.com/
30 * @since 1.0.0
31 *
32 * @psalm-suppress UndefinedTrait
33 */
34 class ServiceCancel {
35
36
37 /**
38 * Integration type.
39 *
40 * @var string
41 */
42 public $integration = 'ServicesForSureCart';
43
44
45 /**
46 * Trigger name.
47 *
48 * @var string
49 */
50 public $trigger = 'ss_service_cancel';
51
52 use SingletonLoader;
53
54
55 /**
56 * Constructor
57 *
58 * @since 1.0.0
59 */
60 public function __construct() {
61 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
62 }
63
64 /**
65 * Register action.
66 *
67 * @param array $triggers trigger data.
68 * @return array
69 */
70 public function register( $triggers ) {
71
72 $triggers[ $this->integration ][ $this->trigger ] = [
73 'label' => __( 'Service Cancel', 'suretriggers' ),
74 'action' => $this->trigger,
75 'common_action' => 'surelywp_services_cancel',
76 'function' => [ $this, 'trigger_listener' ],
77 'priority' => 10,
78 'accepted_args' => 3,
79 ];
80 return $triggers;
81
82 }
83
84 /**
85 * Trigger listener
86 *
87 * @param int $service_id Service ID.
88 * @param int $order_id Order ID.
89 * @param int $product_id Product ID.
90 * @since 1.0.0
91 *
92 * @return void
93 */
94 public function trigger_listener( $service_id, $order_id, $product_id ) {
95 global $wpdb;
96
97 $result = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM {$wpdb->prefix}surelywp_sv_services WHERE service_id = %d AND order_id = %d AND product_id = %d", $service_id, $order_id, $product_id ), ARRAY_A );
98 $user_data = WordPress::get_user_context( $result['user_id'] );
99 unset( $result['user_id'] );
100 $context = array_merge( $result, $user_data );
101 AutomationController::sure_trigger_handle_trigger(
102 [
103 'trigger' => $this->trigger,
104 'context' => $context,
105 ]
106 );
107
108 }
109 }
110
111 /**
112 * Ignore false positive
113 *
114 * @psalm-suppress UndefinedMethod
115 */
116 ServiceCancel::get_instance();
117
118 endif;
119