Yacht Booking System - API Availability Test'; // 1. Get first yacht echo '
❌ Brak jachtów w systemie. Dodaj przynajmniej jeden jacht przed testem.
'; echo ''; die(); } $yacht = $yachts[0]; echo '✅ Znaleziono jacht: ' . esc_html($yacht->post_title) . ' (ID: ' . $yacht->ID . ')
'; // 2. Test API Endpoint - Current Month echo 'API URL: ' . esc_html($api_url) . '
❌ Błąd API: ' . $response->get_error_message() . '
'; } else { $status_code = wp_remote_retrieve_response_code($response); $body = wp_remote_retrieve_body($response); $data = json_decode($body, true); echo 'Status Code: ' . $status_code . '
'; if ($status_code === 200) { echo '✅ API Response: SUCCESS
'; echo '';
print_r($data);
echo '❌ Błąd HTTP: ' . $status_code . '
'; echo '' . esc_html($body) . ''; } } // 3. Test Direct Class Method echo '
✅ Metoda zwróciła ' . count($calendar) . ' dni
'; echo '| Data | Status | Booking ID |
|---|---|---|
| ' . esc_html($date) . ' | '; echo '' . esc_html($info['status']) . ' | '; echo '' . ($info['booking_id'] ? $info['booking_id'] : '—') . ' | '; echo '
Sprawdzam dostępność jachtu od ' . $test_start . ' do ' . $test_end . ':
'; if ($is_available) { echo '✅ Jacht jest DOSTĘPNY w tym terminie
'; } else { echo '❌ Jacht NIE jest dostępny w tym terminie
'; } // 5. Test cache - Create test booking echo 'Tworzę testową rezerwację od ' . $test_booking_start . ' do ' . $test_booking_end . '
'; // Mark as booked \YachtBooking\Availability::mark_as_booked($yacht->ID, $test_booking_start, $test_booking_end, 999); // Check if now unavailable $is_still_available = \YachtBooking\Availability::is_available($yacht->ID, $test_booking_start, $test_booking_end); if (!$is_still_available) { echo '✅ Cache działa! Daty zostały oznaczone jako zajęte
'; } else { echo '❌ Problem z cache! Daty nadal są dostępne
'; } // Clean up test booking echo 'Czyszczę testową rezerwację...
'; \YachtBooking\Availability::clear_booking_availability(999); $is_available_again = \YachtBooking\Availability::is_available($yacht->ID, $test_booking_start, $test_booking_end); if ($is_available_again) { echo '✅ Czyszczenie cache działa! Daty są ponownie dostępne
'; } else { echo '❌ Problem z czyszczeniem cache!
'; } // Summary echo 'Wszystkie komponenty systemu dostępności działają poprawnie.
'; echo '