public function res_admin_list_bookings_by_resource_id_start_end_callback() { // Check if user is logged in or die Resource_Booking_Ajax_Common::check_if_user_logged_in_or_die(); // Check if user is a labmanager or die Resource_Booking_Ajax_Common::check_if_labmanager_or_die(); // If here, user is labmanager (hopefully) $resource_id = isset($_POST['resource_id']) ? intval($_POST['resource_id'], 10) : 0; $start = isset($_POST['start']) ? $_POST['start'] : null; $end = isset($_POST['end']) ? $_POST['end'] : null; //Check if resource exists Resource_Booking_Ajax_Common::check_resource_id_or_die($this->rb_db, $resource_id); // Check if valid dates && valid interval Resource_Booking_Ajax_Common::check_if_valid_start_end_date_calendar_or_die($start, $end); // Validation done - good to query data // Search for bookings $bookings = $this->rb_db->list_bookings_by_resource_id_start_end($resource_id, $start, $end); $response = new stdClass(); $response->success = true; $response->events = array(); foreach ($bookings as $booking) { $user_id = $booking->user_id; $personal = true; $response->events[] = array("id" => $booking->id, "resource_id" => $booking->resource_id, "user_id" => $user_id, "username" => esc_html($booking->username), "start" => $booking->start, "end" => $booking->end, "details" => esc_html($booking->details), "personal" => $personal, "closed" => $booking->closed); } echo json_encode($response); wp_die(); // this is required to terminate immediately and return a proper response }
public function res_list_bookings_by_resource_id_start_end_callback() { // Check if user is logged in or die Resource_Booking_Ajax_Common::check_if_user_logged_in_or_die(); $resource_id = isset($_POST['resource_id']) ? intval($_POST['resource_id'], 10) : 0; $start = isset($_POST['start']) ? $_POST['start'] : null; $end = isset($_POST['end']) ? $_POST['end'] : null; // Check if client_id exists (as user) or die global $user_ID; get_currentuserinfo(); Resource_Booking_Ajax_Common::get_username_or_die($user_ID); //Check if resource exists or die Resource_Booking_Ajax_Common::check_resource_id_or_die($this->rb_db, $resource_id); // Check if valid dates && valid interval Resource_Booking_Ajax_Common::check_if_valid_start_end_date_calendar_or_die($start, $end); // Validation done - good to query data // Search for bookings $bookings = $this->rb_db->list_bookings_by_resource_id_start_end($resource_id, $start, $end); $response = new stdClass(); $response->success = true; $response->events = array(); foreach ($bookings as $booking) { if ($booking->user_id == $user_ID) { $user_id = $booking->user_id; $username = esc_html($booking->username); $details = esc_html($booking->details); $personal = true; } else { $user_id = ""; $username = "******"; $details = ""; $personal = false; } $response->events[] = array("id" => $booking->id, "resource_id" => $booking->resource_id, "user_id" => $user_id, "username" => $username, "start" => $booking->start, "end" => $booking->end, "details" => $details, "personal" => $personal); } echo json_encode($response); wp_die(); // this is required to terminate immediately and return a proper response }