PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.33
OttoKit: All-in-One Automation Platform v1.1.33
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 / slice-wp / triggers / commision-created.php
suretriggers / src / Integrations / slice-wp / triggers Last commit date
affiliate-created.php 2 years ago affiliate-updated.php 2 years ago commision-created.php 2 years ago commision-updated.php 2 years ago
commision-created.php
123 lines
1 <?php
2 /**
3 * SliceCommissionCreated.
4 * php version 5.6
5 *
6 * @category SliceCommissionCreated
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\SliceWP\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use Exception;
18 use SureTriggers\Integrations\WordPress\WordPress;
19 use SureTriggers\Traits\SingletonLoader;
20
21 if ( ! class_exists( 'SliceCommissionCreated' ) ) :
22
23 /**
24 * SliceCommissionCreated
25 *
26 * @category SliceCommissionCreated
27 * @package SureTriggers
28 * @author BSF <username@example.com>
29 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
30 * @link https://www.brainstormforce.com/
31 * @since 1.0.0
32 *
33 * @psalm-suppress UndefinedTrait
34 */
35 class SliceCommissionCreated {
36
37 /**
38 * Integration type.
39 *
40 * @var string
41 */
42 public $integration = 'SliceWP';
43
44
45 /**
46 * Trigger name.
47 *
48 * @var string
49 */
50 public $trigger = 'slicewp_new_commission';
51
52 use SingletonLoader;
53
54 /**
55 * Constructor
56 *
57 * @since 1.0.0
58 */
59 public function __construct() {
60 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
61 }
62
63 /**
64 * Register action.
65 *
66 * @param array $triggers trigger data.
67 *
68 * @return array
69 */
70 public function register( $triggers ) {
71 $triggers[ $this->integration ][ $this->trigger ] = [
72 'label' => __( 'Commission Created', 'suretriggers' ),
73 'action' => $this->trigger,
74 'common_action' => 'slicewp_insert_commission',
75 'function' => [ $this, 'trigger_listener' ],
76 'priority' => 10,
77 'accepted_args' => 2,
78 ];
79
80 return $triggers;
81 }
82
83 /**
84 * Trigger listener
85 *
86 * @param int $commission_id Commission ID.
87 * @param array $commission_data Commission Data.
88 * @throws Exception Exception.
89 * @return void
90 */
91 public function trigger_listener( $commission_id, $commission_data ) {
92 if ( ! function_exists( 'slicewp_get_affiliate' ) || ! function_exists( 'slicewp_get_commission' ) ) {
93 throw new Exception( 'Slicewp functions not found.' );
94 }
95 $commission = slicewp_get_commission( $commission_id );
96 $affiliate_id = $commission->get( 'affiliate_id' );
97 $affiliate = slicewp_get_affiliate( $affiliate_id );
98 $user_id = $affiliate->get( 'user_id' );
99 $commission_data['commission_id'] = $commission_id;
100 $context = array_merge(
101 [ 'user' => WordPress::get_user_context( $user_id ) ],
102 $commission_data
103 );
104
105 AutomationController::sure_trigger_handle_trigger(
106 [
107 'trigger' => $this->trigger,
108 'wp_user_id' => $user_id,
109 'context' => $context,
110 ]
111 );
112 }
113 }
114
115 /**
116 * Ignore false positive
117 *
118 * @psalm-suppress UndefinedMethod
119 */
120 SliceCommissionCreated::get_instance();
121
122 endif;
123