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 / wishlistmember.php
suretriggers / src / Integrations / wishlistmember Last commit date
actions 10 months ago triggers 2 years ago wishlistmember.php 2 years ago
wishlistmember.php
98 lines
1 <?php
2 /**
3 * WishlistMember core integrations file
4 *
5 * @since 1.0.0
6 * @package SureTrigger
7 */
8
9 namespace SureTriggers\Integrations\WishlistMember;
10
11 use SureTriggers\Controllers\IntegrationsController;
12 use SureTriggers\Integrations\Integrations;
13 use SureTriggers\Traits\SingletonLoader;
14
15 /**
16 * Class SureTrigger
17 *
18 * @package SureTriggers\Integrations\WishlistMember
19 */
20 class WishlistMember extends Integrations {
21
22
23 use SingletonLoader;
24
25 /**
26 * ID
27 *
28 * @var string
29 */
30 protected $id = 'WishlistMember';
31
32 /**
33 * SureTrigger constructor.
34 */
35 public function __construct() {
36 $this->name = __( 'WishlistMember', 'suretriggers' );
37 $this->description = __( 'Connect with your fans, faster your community.', 'suretriggers' );
38 $this->icon_url = SURE_TRIGGERS_URL . 'assets/icons/wishlistmember.svg';
39
40 parent::__construct();
41 }
42
43 /**
44 * Get customer context data.
45 *
46 * @param array|int $level_id level.
47 * @param mixed $user_id user.
48 * @return array
49 */
50 public static function get_membership_detail_context( $level_id, $user_id ) {
51 $wm_membership_detail = wlmapi_get_level( $level_id );
52 if ( ! is_array( $wm_membership_detail ) ) {
53 return [];
54 }
55 $context['membership_level_id'] = isset( $wm_membership_detail['level'] ) ? $wm_membership_detail['level']['id'] : '';
56 $context['membership_level_name'] = isset( $wm_membership_detail['level'] ) ? $wm_membership_detail['level']['name'] : '';
57 $user_info = self::get_user_info( $level_id, $user_id );
58
59 return array_merge( $context, $user_info );
60 }
61
62 /**
63 * Get customer context data.
64 *
65 * @param array|int $level_id level.
66 * @param mixed $user_id user.
67 * @return array
68 */
69 public static function get_user_info( $level_id, $user_id ) {
70 $context = [];
71 if ( function_exists( 'wlmapi_get_member' ) ) {
72 $member = wlmapi_get_member( $user_id );
73 if ( isset( $member['member'] ) ) {
74 $memberinfo = $member['member'][0]['UserInfo'];
75 $member_levels = $member['member'][0]['Levels'];
76 $context['user_registered_date'] = $memberinfo['user_registered'];
77 $context['user'] = $memberinfo['wpm_useraddress'] ? $memberinfo['wpm_useraddress'] : [];
78 if ( isset( $member_levels[ $level_id ] ) ) {
79 $context['user_registered_date_in_level'] = ( $member_levels[ $level_id ] )->Timestamp;
80 }
81 }
82 }
83 return $context;
84 }
85
86 /**
87 * Is Plugin depended on plugin is installed or not.
88 *
89 * @return bool
90 */
91 public function is_plugin_installed() {
92 return class_exists( 'WLMAPI' ) || class_exists( 'WishListMember' );
93 }
94
95 }
96
97 IntegrationsController::register( WishlistMember::class );
98