PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.36
OttoKit: All-in-One Automation Platform v1.1.36
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 / wishlistmember / triggers / wishlist-membership-remove-user.php
suretriggers / src / Integrations / wishlistmember / triggers Last commit date
wishlist-membership-add-user.php 2 years ago wishlist-membership-remove-user.php 2 years ago
wishlist-membership-remove-user.php
132 lines
1 <?php
2 /**
3 * WishlistMembershipRemoveUser.
4 * php version 5.6
5 *
6 * @category WishlistMembershipRemoveUser
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\WishlistMember\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Integrations\WishlistMember\WishlistMember;
18 use SureTriggers\Integrations\WordPress\WordPress;
19 use SureTriggers\Traits\SingletonLoader;
20
21 if ( ! class_exists( 'WishlistMembershipRemoveUser' ) ) :
22
23 /**
24 * WishlistMembershipRemoveUser
25 *
26 * @category WishlistMembershipRemoveUser
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 WishlistMembershipRemoveUser {
36
37
38 /**
39 * Integration type.
40 *
41 * @var string
42 */
43 public $integration = 'WishlistMember';
44
45
46 /**
47 * Trigger name.
48 *
49 * @var string
50 */
51 public $trigger = 'wishlist_membership_remove_user';
52
53 use SingletonLoader;
54
55
56 /**
57 * Constructor
58 *
59 * @since 1.0.0
60 */
61 public function __construct() {
62 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
63 }
64
65 /**
66 * Register action.
67 *
68 * @param array $triggers trigger data.
69 * @return array
70 */
71 public function register( $triggers ) {
72
73 $triggers[ $this->integration ][ $this->trigger ] = [
74 'label' => __( 'User Removed from Membership Level', 'suretriggers' ),
75 'action' => $this->trigger,
76 'common_action' => 'wishlistmember_remove_user_levels',
77 'function' => [ $this, 'trigger_listener' ],
78 'priority' => 10,
79 'accepted_args' => 2,
80 ];
81
82 return $triggers;
83
84 }
85
86 /**
87 * Trigger listener
88 *
89 * @param integer $user_id The entry that was just created.
90 * @param array $level_id The current form.
91 * @since 1.0.0
92 *
93 * @return void
94 */
95 public function trigger_listener( $user_id, $level_id ) {
96
97 if ( ! $user_id ) {
98 $user_id = ap_get_current_user_id();
99 }
100 if ( empty( $user_id ) ) {
101 return;
102 }
103
104 if ( empty( $level_id ) ) {
105 return;
106 }
107
108 $level_id = is_int( $level_id ) ? $level_id : reset( $level_id );
109 $context = array_merge(
110 WordPress::get_user_context( $user_id ),
111 WishlistMember::get_membership_detail_context( $level_id, $user_id )
112 );
113
114 AutomationController::sure_trigger_handle_trigger(
115 [
116 'trigger' => $this->trigger,
117 'wp_user_id' => $user_id,
118 'context' => $context,
119 ]
120 );
121 }
122 }
123
124 /**
125 * Ignore false positive
126 *
127 * @psalm-suppress UndefinedMethod
128 */
129 WishlistMembershipRemoveUser::get_instance();
130
131 endif;
132