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 / wp-travel-engine / actions / update-booking-status.php
suretriggers / src / Integrations / wp-travel-engine / actions Last commit date
create-coupon.php 11 months ago create-trip.php 6 months ago duplicate-trip.php 6 months ago list-bookings.php 11 months ago list-coupons.php 3 weeks ago list-trips.php 11 months ago retrieve-booking.php 11 months ago retrieve-coupon.php 3 weeks ago retrieve-enquiry.php 2 months ago update-booking-status.php 11 months ago update-coupon.php 3 weeks ago update-trip.php 6 months ago
update-booking-status.php
127 lines
1 <?php
2 /**
3 * UpdateBookingStatus.
4 * php version 5.6
5 *
6 * @category UpdateBookingStatus
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\WPTravelEngine\Actions;
15
16 use SureTriggers\Integrations\AutomateAction;
17 use SureTriggers\Traits\SingletonLoader;
18
19 /**
20 * UpdateBookingStatus
21 *
22 * @category UpdateBookingStatus
23 * @package SureTriggers
24 * @author BSF <username@example.com>
25 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
26 * @link https://www.brainstormforce.com/
27 * @since 1.0.0
28 */
29 class UpdateBookingStatus extends AutomateAction {
30
31 /**
32 * Integration type.
33 *
34 * @var string
35 */
36 public $integration = 'WPTravelEngine';
37
38 /**
39 * Action name.
40 *
41 * @var string
42 */
43 public $action = 'wte_update_booking_status';
44
45 use SingletonLoader;
46
47 /**
48 * Register a action.
49 *
50 * @param array $actions actions.
51 * @return array
52 */
53 public function register( $actions ) {
54 $actions[ $this->integration ][ $this->action ] = [
55 'label' => __( 'Update Booking Status', 'suretriggers' ),
56 'action' => $this->action,
57 'function' => [ $this, '_action_listener' ],
58 ];
59 return $actions;
60 }
61
62 /**
63 * Action listener.
64 *
65 * @param int $user_id user_id.
66 * @param int $automation_id automation_id.
67 * @param array $fields fields.
68 * @param array $selected_options selectedOptions.
69 * @return array
70 */
71 public function _action_listener( $user_id, $automation_id, $fields, $selected_options ) {
72
73 if ( ! function_exists( 'wp_travel_engine_get_booking_status' ) ) {
74 return [
75 'status' => 'error',
76 'message' => __( 'WP Travel Engine plugin is not active.', 'suretriggers' ),
77
78 ];
79 }
80
81 if ( empty( $selected_options['booking_id'] ) ) {
82 return [
83 'status' => 'error',
84 'message' => __( 'Booking ID is required.', 'suretriggers' ),
85
86 ];
87 }
88
89 if ( empty( $selected_options['new_status'] ) ) {
90 return [
91 'status' => 'error',
92 'message' => __( 'New status is required.', 'suretriggers' ),
93
94 ];
95 }
96
97 $booking_id = absint( $selected_options['booking_id'] );
98 $new_status = sanitize_text_field( $selected_options['new_status'] );
99
100 $booking = get_post( $booking_id );
101 if ( ! $booking || 'booking' !== $booking->post_type ) {
102 return [
103 'status' => 'error',
104 'message' => __( 'Booking not found.', 'suretriggers' ),
105
106 ];
107 }
108
109 $old_status = get_post_meta( $booking_id, 'wp_travel_engine_booking_status', true );
110
111 update_post_meta( $booking_id, 'wp_travel_engine_booking_status', $new_status );
112
113 do_action( 'wte_booking_status_changed', $booking_id, $old_status, $new_status );
114
115 return [
116 'status' => 'success',
117 'data' => [
118 'booking_id' => $booking_id,
119 'old_status' => $old_status,
120 'new_status' => $new_status,
121 ],
122 ];
123 }
124 }
125
126 UpdateBookingStatus::get_instance();
127