PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.35
OttoKit: All-in-One Automation Platform v1.1.35
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 / givewp / triggers / user-cancels-recurring-donation.php
suretriggers / src / Integrations / givewp / triggers Last commit date
donation-submit-specific-amount.php 2 years ago donation-submit-specific-field-value.php 2 years ago donation-via-form.php 1 year ago user-cancels-recurring-donation.php 2 years ago user-continues-recurring-donation.php 2 years ago
user-cancels-recurring-donation.php
129 lines
1 <?php
2 /**
3 * GiveWPUserCancelsRecurringDonation.
4 * php version 5.6
5 *
6 * @category GiveWPUserCancelsRecurringDonation
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\GiveWP\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Traits\SingletonLoader;
18 use Give_Subscription;
19
20 if ( ! class_exists( 'GiveWPUserCancelsRecurringDonation' ) ) :
21
22 /**
23 * GiveWPUserCancelsRecurringDonation
24 *
25 * @category GiveWPUserCancelsRecurringDonation
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 GiveWPUserCancelsRecurringDonation {
35
36
37 /**
38 * Integration type.
39 *
40 * @var string
41 */
42 public $integration = 'GiveWP';
43
44
45 /**
46 * Trigger name.
47 *
48 * @var string
49 */
50 public $trigger = 'givewp_user_cancels_recurring_donation';
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' => __( 'User Cancels Recurring Donation', 'suretriggers' ),
74 'action' => $this->trigger,
75 'common_action' => 'give_subscription_updated',
76 'function' => [ $this, 'trigger_listener' ],
77 'priority' => 10,
78 'accepted_args' => 4,
79 ];
80
81 return $triggers;
82
83 }
84
85 /**
86 * Trigger listener
87 *
88 * @param string $status Status.
89 * @param int $row_id Row ID.
90 * @param array $data Data.
91 * @param string $where Where.
92 * @since 1.0.0
93 *
94 * @return void
95 */
96 public function trigger_listener( $status, $row_id, $data, $where ) {
97 if ( ! class_exists( 'Give_Subscription' ) ) {
98 return;
99 }
100
101 $subscription = new Give_Subscription( $row_id );
102
103 if ( is_object( $subscription ) && property_exists( $subscription, 'form_id' ) ) {
104 $give_form_id = $subscription->form_id;
105
106 $context['form_id'] = $give_form_id;
107 $context['subscription'] = $subscription;
108 if ( 'cancelled' === (string) $data['status'] ) {
109 AutomationController::sure_trigger_handle_trigger(
110 [
111 'trigger' => $this->trigger,
112 'context' => $context,
113 ]
114 );
115 }
116 }
117 }
118
119 }
120
121 /**
122 * Ignore false positive
123 *
124 * @psalm-suppress UndefinedMethod
125 */
126 GiveWPUserCancelsRecurringDonation::get_instance();
127
128 endif;
129