PluginProbe
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI / 5.8.6
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI v5.8.6
6.0.4 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 All 35 releases
automatorwp / integrations / easy-affiliate / includes / triggers / earn-referral.php

earn-referral.php in AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI 5.8.6, at integrations/easy-affiliate/includes/triggers/earn-referral.php

71 lines 2.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Earn Referral
4 *
5 * @package AutomatorWP\Integrations\Easy_Affiliate\Triggers\Earn_REferral
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_Easy_Affiliate_Earn_Referral extends AutomatorWP_Integration_Trigger {
13
14 public $integration = 'easy_affiliate';
15 public $trigger = 'easy_affiliate_earn_referral';
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 earns a referral', 'automatorwp' ),
27 'select_option' => __( 'User earns a <strong>referral</strong>', 'automatorwp' ),
28 /* translators: %1$s: Number of times. */
29 'edit_label' => sprintf( __( 'User earns a referral %1$s time(s)', 'automatorwp' ), '{times}' ),
30 'log_label' => __( 'User earns a referral', 'automatorwp' ),
31 'action' => 'esaf_event_transaction-recorded',
32 'function' => array( $this, 'listener' ),
33 'priority' => 10,
34 'accepted_args' => 1,
35 'options' => array(
36 'times' => automatorwp_utilities_times_option(),
37 ),
38 'tags' => array_merge(
39 automatorwp_utilities_times_tag()
40 )
41 ) );
42
43 }
44
45 /**
46 * Trigger listener
47 *
48 * @since 1.0.0
49 *
50 * @param array $args Args from Easy Affiliate event
51 */
52 public function listener( $args ) {
53
54 $user_id = get_current_user_id();
55
56 // Bail if no user
57 if ( absint( $user_id ) === 0 ) {
58 return;
59 }
60
61 // Trigger the user added as affiliate
62 automatorwp_trigger_event( array(
63 'trigger' => $this->trigger,
64 'user_id' => $user_id,
65 ) );
66
67 }
68
69 }
70
71 new AutomatorWP_Easy_Affiliate_Earn_Referral();