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 / affiliate-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
affiliate-created.php
121 lines
1 <?php
2 /**
3 * SliceAffiliateCreated.
4 * php version 5.6
5 *
6 * @category AffiliateCreated
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 SureTriggers\Integrations\WordPress\WordPress;
18 use SureTriggers\Traits\SingletonLoader;
19 use Exception;
20
21 if ( ! class_exists( 'SliceAffiliateCreated' ) ) :
22
23 /**
24 * SliceAffiliateCreated
25 *
26 * @category SliceAffiliateCreated
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 SliceAffiliateCreated {
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_affiliate';
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' => __( 'Affiliate Created', 'suretriggers' ),
73 'action' => $this->trigger,
74 'common_action' => 'slicewp_insert_affiliate',
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 $affiliate_id Affiliate ID.
87 * @param array $affiliate_data Affiliate Data.
88 * @throws Exception Exception.
89 * @return void
90 */
91 public function trigger_listener( $affiliate_id, $affiliate_data ) {
92
93 if ( ! function_exists( 'slicewp_get_affiliate' ) ) {
94 throw new Exception( 'Slicewp functions not found.' );
95 }
96 $affiliate = slicewp_get_affiliate( $affiliate_id );
97 $user_id = $affiliate->get( 'user_id' );
98 $affiliate_data['id'] = $affiliate_id;
99 $context = array_merge(
100 [ 'user' => WordPress::get_user_context( $user_id ) ],
101 $affiliate_data
102 );
103 AutomationController::sure_trigger_handle_trigger(
104 [
105 'trigger' => $this->trigger,
106 'wp_user_id' => $user_id,
107 'context' => $context,
108 ]
109 );
110 }
111 }
112
113 /**
114 * Ignore false positive
115 *
116 * @psalm-suppress UndefinedMethod
117 */
118 SliceAffiliateCreated::get_instance();
119
120 endif;
121