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 / event-espresso / triggers / new-registration.php
suretriggers / src / Integrations / event-espresso / triggers Last commit date
new-registration.php 3 months ago registration-approved.php 3 months ago registration-cancelled.php 3 months ago
new-registration.php
119 lines
1 <?php
2 /**
3 * NewRegistration.
4 * php version 5.6
5 *
6 * @category NewRegistration
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\EventEspresso\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Integrations\EventEspresso\EventEspresso;
18 use SureTriggers\Integrations\WordPress\WordPress;
19 use SureTriggers\Traits\SingletonLoader;
20
21 if ( ! class_exists( 'EE_NewRegistration' ) ) :
22
23 /**
24 * EE_NewRegistration
25 *
26 * @psalm-suppress UndefinedTrait
27 */
28 class EE_NewRegistration {
29
30 /**
31 * Integration type.
32 *
33 * @var string
34 */
35 public $integration = 'EventEspresso';
36
37 /**
38 * Trigger name.
39 *
40 * @var string
41 */
42 public $trigger = 'ee_new_registration';
43
44 use SingletonLoader;
45
46 /**
47 * Constructor
48 *
49 * @since 1.0.0
50 */
51 public function __construct() {
52 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
53 }
54
55 /**
56 * Register action.
57 *
58 * @param array $triggers trigger data.
59 * @return array
60 */
61 public function register( $triggers ) {
62
63 $triggers[ $this->integration ][ $this->trigger ] = [
64 'label' => __( 'New Registration', 'suretriggers' ),
65 'action' => $this->trigger,
66 'common_action' => 'AHEE__EE_Registration_Processor__trigger_registration_update_notifications',
67 'function' => [ $this, 'trigger_listener' ],
68 'priority' => 10,
69 'accepted_args' => 2,
70 ];
71
72 return $triggers;
73 }
74
75 /**
76 * Trigger listener.
77 *
78 * @param object $registration EE_Registration object.
79 * @param array $additional_details Additional details passed by EE.
80 *
81 * @return void
82 */
83 public function trigger_listener( $registration, $additional_details = [] ) {
84 $context = EventEspresso::get_registration_context( $registration );
85 if ( empty( $context ) ) {
86 return;
87 }
88
89 $selected_event_id = 0;
90 $selected_post_id = isset( $context['event_id'] ) ? (int) $context['event_id'] : 0;
91 if ( $selected_post_id > 0 ) {
92 $selected_event_id = $selected_post_id;
93 }
94
95 $context['post_id'] = $selected_event_id;
96
97 $wp_user_id = isset( $context['wp_user_id'] ) ? (int) $context['wp_user_id'] : 0;
98 if ( $wp_user_id > 0 ) {
99 $context = array_merge( WordPress::get_user_context( $wp_user_id ), $context );
100 }
101
102 AutomationController::sure_trigger_handle_trigger(
103 [
104 'trigger' => $this->trigger,
105 'context' => $context,
106 ]
107 );
108 }
109 }
110
111 /**
112 * Ignore false positive
113 *
114 * @psalm-suppress UndefinedMethod
115 */
116 EE_NewRegistration::get_instance();
117
118 endif;
119