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 / modern-events-calendar / triggers / event-created.php
suretriggers / src / Integrations / modern-events-calendar / triggers Last commit date
event-booking-cancelled.php 2 years ago event-booking-completed.php 2 years ago event-booking-confirmed.php 2 years ago event-booking-pending.php 2 years ago event-created.php 1 year ago
event-created.php
115 lines
1 <?php
2 /**
3 * EventCreated.
4 * php version 7.0+
5 *
6 * @category EventCreated
7 * @package SureTriggers
8 * @author BSF
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\ModernEventsCalendar\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Traits\SingletonLoader;
18
19
20
21 if ( ! class_exists( 'EventCreated' ) ) :
22
23 /**
24 * EventCreated Class
25 *
26 * Handles the trigger when a new event is created in ModernEventsCalendar.
27 *
28 * @since 1.0.0
29 */
30 class EventCreated {
31
32 use SingletonLoader;
33
34 /**
35 * Integration type.
36 *
37 * @var string
38 */
39 public $integration = 'ModernEventsCalendar';
40
41 /**
42 * Trigger name.
43 *
44 * @var string
45 */
46 public $trigger = 'mec_event_created';
47
48 /**
49 * Constructor
50 *
51 * Initializes the EventCreated class.
52 *
53 * @since 1.0.0
54 */
55 public function __construct() {
56 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
57 }
58
59 /**
60 * Register the trigger.
61 *
62 * @param array $triggers Existing triggers.
63 * @return array Modified triggers with the new trigger added.
64 */
65 public function register( $triggers ) {
66 $triggers[ $this->integration ][ $this->trigger ] = [
67 'label' => __( 'New Event Created', 'suretriggers' ),
68 'action' => $this->trigger,
69 'common_action' => 'mec_save_event_data',
70 'function' => [ $this, 'trigger_listener' ],
71 'priority' => 10,
72 'accepted_args' => 2,
73 ];
74
75 return $triggers;
76 }
77
78 /**
79 * Trigger listener
80 *
81 * Listens for the `mec_save_event_data` action and triggers automation.
82 *
83 * @param int $post_id The post ID.
84 * @param object $_mec The event object.
85 * @return void
86 */
87 public function trigger_listener( $post_id, $_mec ) {
88 if ( empty( $post_id ) || empty( $_mec ) ) {
89 return;
90 }
91
92 $context = [
93 'post_id' => $post_id,
94 'event' => get_post_meta( $post_id ),
95 'post' => get_post( $post_id ),
96 ];
97
98
99
100 AutomationController::sure_trigger_handle_trigger(
101 [
102 'trigger' => $this->trigger,
103 'context' => $context,
104 ]
105 );
106 }
107 }
108
109 /**
110 * Initialize the singleton instance of EventCreated.
111 */
112 EventCreated::get_instance();
113
114 endif;
115