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 / event-calendar / triggers / attendee-registers-wc.php
suretriggers / src / Integrations / event-calendar / triggers Last commit date
attendee-registered-event.php 2 years ago attendee-registers-wc.php 2 years ago user-attends-event.php 2 years ago user-register-event.php 2 years ago
attendee-registers-wc.php
117 lines
1 <?php
2 /**
3 * AttendeeRegisteredWC.
4 * php version 5.6
5 *
6 * @category AttendeeRegisteredWC
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\EventCalendar\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Integrations\TheEventCalendar\TheEventCalendar;
18 use SureTriggers\Traits\SingletonLoader;
19
20 if ( ! class_exists( 'AttendeeRegisteredWC' ) ) :
21
22 /**
23 * AttendeeRegisteredWC
24 *
25 * @category AttendeeRegisteredWC
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 AttendeeRegisteredWC {
35
36 /**
37 * Integration type.
38 *
39 * @var string
40 */
41 public $integration = 'TheEventCalendar';
42
43 /**
44 * Trigger name.
45 *
46 * @var string
47 */
48 public $trigger = 'attendee_registered_wc';
49
50 use SingletonLoader;
51
52 /**
53 * Constructor
54 *
55 * @since 1.0.0
56 */
57 public function __construct() {
58 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
59 }
60
61 /**
62 * Register action.
63 *
64 * @param array $triggers trigger data.
65 * @return array
66 */
67 public function register( $triggers ) {
68 $triggers[ $this->integration ][ $this->trigger ] = [
69 'label' => __( 'Attendee Registered with WC', 'suretriggers' ),
70 'action' => $this->trigger,
71 'common_action' => 'tribe_tickets_attendee_repository_create_attendee_for_ticket_after_create',
72 'function' => [ $this, 'trigger_listener' ],
73 'priority' => 10,
74 'accepted_args' => 4,
75 ];
76
77 return $triggers;
78 }
79
80 /**
81 * Trigger listener
82 *
83 * @param object $attendee The attendee object.
84 * @param array $attendee_data List of additional attendee data.
85 * @param object $ticket The ticket object.
86 * @param object $repository The current repository object.
87 * @since 1.0.0
88 *
89 * @return void
90 */
91 public function trigger_listener( $attendee, $attendee_data, $ticket, $repository ) {
92
93 if ( is_object( $ticket ) && property_exists( $ticket, 'ID' ) ) {
94 $product_id = $ticket->ID;
95 $order_id = $attendee_data['order_id'];
96 $context = TheEventCalendar::get_event_context( $product_id, $order_id );
97 $context['event_ticket_id'] = $ticket->ID;
98
99 AutomationController::sure_trigger_handle_trigger(
100 [
101 'trigger' => $this->trigger,
102 'context' => $context,
103 ]
104 );
105 }
106 }
107 }
108
109 /**
110 * Ignore false positive
111 *
112 * @psalm-suppress UndefinedMethod
113 */
114 AttendeeRegisteredWC::get_instance();
115
116 endif;
117