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 / event-espresso / event-espresso.php
suretriggers / src / Integrations / event-espresso Last commit date
actions 2 months ago triggers 2 months ago event-espresso.php 2 months ago
event-espresso.php
108 lines
1 <?php
2 /**
3 * Event Espresso integrations file
4 *
5 * @since 1.0.0
6 * @package SureTrigger
7 */
8
9 namespace SureTriggers\Integrations\EventEspresso;
10
11 use SureTriggers\Controllers\IntegrationsController;
12 use SureTriggers\Integrations\Integrations;
13 use SureTriggers\Traits\SingletonLoader;
14
15 /**
16 * Class EventEspresso
17 *
18 * @package SureTriggers\Integrations\EventEspresso
19 */
20 class EventEspresso extends Integrations {
21
22 use SingletonLoader;
23
24 /**
25 * ID
26 *
27 * @var string
28 */
29 protected $id = 'EventEspresso';
30
31 /**
32 * SureTrigger constructor.
33 */
34 public function __construct() {
35 $this->name = __( 'Event Espresso', 'suretriggers' );
36 $this->description = __( 'Event registration and ticketing for WordPress.', 'suretriggers' );
37 $this->icon_url = SURE_TRIGGERS_URL . 'assets/icons/event-espresso.svg';
38
39 parent::__construct();
40 }
41
42 /**
43 * Build context data from an EE_Registration object.
44 *
45 * @param object $registration EE_Registration instance.
46 *
47 * @return array
48 */
49 public static function get_registration_context( $registration ) {
50 if ( ! is_object( $registration ) || ! method_exists( $registration, 'ID' ) ) {
51 return [];
52 }
53
54 $context = [
55 'registration_id' => (int) $registration->ID(),
56 'registration_code' => method_exists( $registration, 'reg_code' ) ? (string) $registration->reg_code() : '',
57 'registration_status' => method_exists( $registration, 'status_ID' ) ? (string) $registration->status_ID() : '',
58 'registration_count' => method_exists( $registration, 'count' ) ? (int) $registration->count() : 0,
59 'registration_date' => method_exists( $registration, 'date' ) ? (string) $registration->date() : '',
60 'price_paid' => method_exists( $registration, 'price_paid' ) ? (float) $registration->price_paid() : 0,
61 'final_price' => method_exists( $registration, 'final_price' ) ? (float) $registration->final_price() : 0,
62 'transaction_id' => method_exists( $registration, 'transaction_ID' ) ? (int) $registration->transaction_ID() : 0,
63 'event_id' => method_exists( $registration, 'event_ID' ) ? (int) $registration->event_ID() : 0,
64 'event_name' => method_exists( $registration, 'event_name' ) ? (string) $registration->event_name() : '',
65 'ticket_id' => method_exists( $registration, 'ticket_ID' ) ? (int) $registration->ticket_ID() : 0,
66 'attendee_id' => method_exists( $registration, 'attendee_ID' ) ? (int) $registration->attendee_ID() : 0,
67 ];
68
69 if ( method_exists( $registration, 'ticket' ) ) {
70 $ticket = $registration->ticket();
71 if ( is_object( $ticket ) && method_exists( $ticket, 'name' ) ) {
72 $context['ticket_name'] = (string) $ticket->name();
73 }
74 if ( is_object( $ticket ) && method_exists( $ticket, 'price' ) ) {
75 $context['ticket_price'] = (float) $ticket->price();
76 }
77 }
78
79 if ( method_exists( $registration, 'attendee' ) ) {
80 $attendee = $registration->attendee();
81 if ( is_object( $attendee ) ) {
82 $context['attendee_first_name'] = method_exists( $attendee, 'fname' ) ? (string) $attendee->fname() : '';
83 $context['attendee_last_name'] = method_exists( $attendee, 'lname' ) ? (string) $attendee->lname() : '';
84 $context['attendee_full_name'] = method_exists( $attendee, 'full_name' ) ? (string) $attendee->full_name() : '';
85 $context['attendee_email'] = method_exists( $attendee, 'email' ) ? (string) $attendee->email() : '';
86 $context['attendee_phone'] = method_exists( $attendee, 'phone' ) ? (string) $attendee->phone() : '';
87 $context['attendee_address'] = method_exists( $attendee, 'address' ) ? (string) $attendee->address() : '';
88 $context['attendee_city'] = method_exists( $attendee, 'city' ) ? (string) $attendee->city() : '';
89 $context['attendee_country'] = method_exists( $attendee, 'country_name' ) ? (string) $attendee->country_name() : '';
90 $context['wp_user_id'] = method_exists( $attendee, 'wp_user' ) ? (int) $attendee->wp_user() : 0;
91 }
92 }
93
94 return $context;
95 }
96
97 /**
98 * Is Plugin dependent plugin installed or not.
99 *
100 * @return bool
101 */
102 public function is_plugin_installed() {
103 return defined( 'EVENT_ESPRESSO_VERSION' );
104 }
105 }
106
107 IntegrationsController::register( EventEspresso::class );
108