PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.33
OttoKit: All-in-One Automation Platform v1.1.33
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 / memberpress / memberpress.php
suretriggers / src / Integrations / memberpress Last commit date
actions 10 months ago triggers 1 month ago memberpress.php 1 year ago
memberpress.php
110 lines
1 <?php
2 /**
3 * MemberPress core integrations file
4 *
5 * @since 1.0.0
6 * @package SureTrigger
7 */
8
9 namespace SureTriggers\Integrations\MemberPress;
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\MemberPress
19 */
20 class MemberPress extends Integrations {
21
22
23 use SingletonLoader;
24
25 /**
26 * ID
27 *
28 * @var string
29 */
30 protected $id = 'MemberPress';
31
32 /**
33 * SureTrigger constructor.
34 */
35 public function __construct() {
36 $this->name = __( 'MemberPress', 'suretriggers' );
37 $this->description = __( 'MemberPress will Help Build Membership Site.', 'suretriggers' );
38 $this->icon_url = SURE_TRIGGERS_URL . 'assets/icons/memberpress.svg';
39
40 parent::__construct();
41 }
42
43 /**
44 * Fetch membership context.
45 *
46 * @param object $subscription subscription object.
47 * @return array
48 */
49 public static function get_membership_context( $subscription ) {
50 $context = [];
51 if ( ! class_exists( 'MeprTransaction' ) || ! $subscription instanceof \MeprTransaction ) {
52 return $context;
53 }
54 $context['membership_id'] = $subscription->product_id;
55 $context['membership_title'] = get_the_title( $subscription->product_id );
56 $context['amount'] = $subscription->amount;
57 $context['total'] = $subscription->total;
58 $context['tax_amount'] = $subscription->tax_amount;
59 $context['tax_rate'] = $subscription->tax_rate;
60 $context['trans_num'] = $subscription->trans_num;
61 $context['status'] = $subscription->status;
62 $context['subscription_id'] = $subscription->subscription_id;
63 $context['membership_url'] = get_permalink( $subscription->product_id );
64 $context['membership_featured_image_id'] = get_post_meta( $subscription->product_id, '_thumbnail_id', true );
65 $context['membership_featured_image_url'] = get_the_post_thumbnail_url( $subscription->product_id );
66
67 return $context;
68 }
69
70 /**
71 * Fetch membership context.
72 *
73 * @param object $subscription subscription object.
74 * @return array
75 */
76 public static function get_subscription_context( $subscription ) {
77 $context = [];
78 if ( ! class_exists( 'MeprSubscription' ) || ! $subscription instanceof \MeprSubscription ) {
79 return $context;
80 }
81 $context['membership_id'] = $subscription->product_id;
82 $context['membership_title'] = get_the_title( $subscription->product_id );
83 $context['user_id'] = $subscription->user_id;
84 $context['amount'] = $subscription->price;
85 $context['total'] = $subscription->total;
86 $context['tax_amount'] = $subscription->tax_amount;
87 $context['tax_rate'] = $subscription->tax_rate;
88 $context['status'] = $subscription->status;
89 $context['subscription_id'] = $subscription->id;
90
91 $context['membership_url'] = get_permalink( $subscription->product_id );
92 $context['membership_featured_image_id'] = get_post_meta( $subscription->product_id, '_thumbnail_id', true );
93 $context['membership_featured_image_url'] = get_the_post_thumbnail_url( $subscription->product_id );
94
95 return $context;
96 }
97
98 /**
99 * Is Plugin depended on plugin is installed or not.
100 *
101 * @return bool
102 */
103 public function is_plugin_installed() {
104 return class_exists( 'MeprCtrlFactory' );
105 }
106
107 }
108
109 IntegrationsController::register( MemberPress::class );
110