PluginProbe
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI / 6.0.3
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI v6.0.3
6.0.3 6.0.2 6.0.1 6.0.0 5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0 5.7.9.2 5.7.9.1 5.7.8 5.7.9 5.7.6 5.7.7 5.7.5 5.7.4 5.7.3 5.7.2 5.7.1 trunk 5.6.0 5.6.1 All 34 releases
automatorwp / integrations / slicewp / includes / triggers / become-affiliate.php

become-affiliate.php in AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI 6.0.3, at integrations/slicewp/includes/triggers/become-affiliate.php

71 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Become Affiliate
4 *
5 * @package AutomatorWP\Integrations\SliceWP\Triggers\Become_Affiliate
6 * @author AutomatorWP <[email protected]>, Ruben Garcia <[email protected]>
7 * @since 1.0.0
8 */
9 // Exit if accessed directly
10 if( !defined( 'ABSPATH' ) ) exit;
11
12 class AutomatorWP_SliceWP_Become_Affiliate extends AutomatorWP_Integration_Trigger {
13
14 public $integration = 'slicewp';
15 public $trigger = 'slicewp_become_affiliate';
16
17 /**
18 * Register the trigger
19 *
20 * @since 1.0.0
21 */
22 public function register() {
23
24 automatorwp_register_trigger( $this->trigger, array(
25 'integration' => $this->integration,
26 'label' => __( 'User becomes an affiliate', 'automatorwp' ),
27 'select_option' => __( 'User <strong>becomes</strong> an affiliate', 'automatorwp' ),
28 'edit_label' => __( 'User becomes an affiliate', 'automatorwp' ),
29 'log_label' => __( 'User becomes an affiliate', 'automatorwp' ),
30 'action' => array(
31 'slicewp_insert_affiliate',
32 'slicewp_update_affiliate'
33 ),
34 'function' => array( $this, 'listener' ),
35 'priority' => 10,
36 'accepted_args' => 2,
37 'options' => array(),
38 'tags' => array()
39 ) );
40
41 }
42
43 /**
44 * Trigger listener
45 *
46 * @since 1.0.0
47 *
48 * @param int $affiliate_id
49 * @param array $affiliate_data
50 */
51 public function listener( $affiliate_id, $affiliate_data ) {
52
53 if( $affiliate_data['status'] != 'active' ) {
54 return;
55 }
56
57 // Get the affiliate user ID
58 $affiliate = slicewp_get_affiliate( $affiliate_id );
59 $user_id = $affiliate->get( 'user_id' );
60
61 // Trigger the become an affiliate
62 automatorwp_trigger_event( array(
63 'trigger' => $this->trigger,
64 'user_id' => $user_id,
65 ) );
66
67 }
68
69 }
70
71 new AutomatorWP_SliceWP_Become_Affiliate();