<?php
require_once '../../config/database.php';
require_once '../../models/beautybooking.php';

session_start();

header('Content-Type: application/json');

if (!isset($_POST['service_id']) || !isset($_POST['date'])) {
    echo json_encode(['success' => false, 'message' => 'بيانات غير مكتملة']);
    exit;
}

try {
    $database = new Database();
    $conn = $database->getConnection();
    $booking = new BeautyBooking($conn);

    $service_id = $_POST['service_id'];
    $date = $_POST['date'];

    // Validate date format
    if (!preg_match('/^/d{4}-/d{2}-/d{2}$/', $date)) {
        echo json_encode(['success' => false, 'message' => 'تنسيق التاريخ غير صحيح']);
        exit;
    }

    // Check which times are available
    $available_times = [];
    $all_times = ['10:00', '11:00', '14:00', '15:00'];

    foreach ($all_times as $time) {
        if (!$booking->isTimeSlotAvailable($service_id, $date, $time)) {
            // Time is booked, skip it
            continue;
        }
        $available_times[] = $time;
    }

    echo json_encode([
        'success' => true,
        'available_times' => $available_times,
        'booked_times' => array_diff($all_times, $available_times)
    ]);

} catch (Exception $e) {
    error_log('Error checking available times: ' . $e->getMessage());
    echo json_encode([
        'success' => false,
        'message' => 'حدث خطأ في التحقق من الأوقات المتاحة',
        'available_times' => ['10:00', '11:00', '14:00', '15:00'] // Return all times if check fails
    ]);
}
?>