<?php
// cms/services-read.php
header('Content-Type: application/json');

require_once('db_connection.php');

try {
    $data = [
        'general' => [],
        'items' => []
    ];

    // Obtener datos generales de la sección
    $stmt = $pdo->query("SELECT * FROM cms_services ORDER BY updated_at DESC LIMIT 1");
    $generalData = $stmt->fetch(PDO::FETCH_ASSOC);

    if ($generalData) {
        $data['general'] = $generalData;
        $serviceId = $generalData['id'];

        // Obtener la lista de servicios, incluyendo el nuevo campo item_benefits
        $stmtItems = $pdo->prepare("SELECT item_image, item_icon, item_title, item_description, item_benefits FROM cms_service_items WHERE service_id = ? ORDER BY id ASC");
        $stmtItems->execute([$serviceId]);
        
        $items = $stmtItems->fetchAll(PDO::FETCH_ASSOC);
        
        // Decodificar el campo JSON (item_benefits) si no es nulo
        foreach ($items as &$item) {
            // Aseguramos que el resultado sea un array si la decodificación falla
            $item['item_benefits'] = json_decode($item['item_benefits'] ?? '[]', true) ?? [];
        }

        $data['items'] = $items;
    } 
    // NOTA: Se eliminó el bloque 'else' que contenía los datos por defecto.
    // Si $generalData es false, 'general' e 'items' se devuelven como arrays vacíos,
    // forzando al editor a mostrar campos en blanco.

    echo json_encode(['success' => true, 'data' => $data]);
} catch (PDOException $e) {
    http_response_code(500);
    echo json_encode(['success' => false, 'error' => 'Error Al Cargar Los Datos' . $e->getMessage()]);
}
?>