<?php
// api/get_data_kehamilan.php

session_start();
header('Content-Type: application/json'); // Pastikan respons selalu JSON

// Untuk debugging, TAMPILKAN SEMUA ERROR (Hapus atau ubah di produksi)
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$response = ['status' => 'error', 'message' => '', 'data' => []];

// Sertakan file koneksi database
require_once 'db_connect.php'; // Sesuaikan path ini jika db_connect.php tidak sejajar

// Pastikan user_id tersedia di sesi
if (!isset($_SESSION['user_id'])) {
    $response['message'] = 'Anda harus login untuk melihat data ini.';
    echo json_encode($response);
    exit();
}

$user_id = $_SESSION['user_id'];

try {
    // Query untuk mengambil data kehamilan berdasarkan user_id, diurutkan dari tanggal terbaru
    $stmt = $pdo->prepare("
        SELECT 
            id, 
            tanggal_periksa, 
            systole, 
            diastole, 
            usia_kehamilan_minggu, 
            denyut_jantung_janin, 
            tinggi_fundus_uteri
        FROM 
            data_kehamilan_pemeriksaan
        WHERE 
            user_id = :user_id
        ORDER BY 
            tanggal_periksa DESC, id DESC
    ");
    $stmt->bindParam(':user_id', $user_id, PDO::PARAM_INT);
    $stmt->execute();
    $data_kehamilan = $stmt->fetchAll(PDO::FETCH_ASSOC);

    $response['status'] = 'success';
    $response['message'] = 'Data berhasil diambil.';
    $response['data'] = $data_kehamilan;

} catch (PDOException $e) {
    error_log("Error fetching pregnancy data: " . $e->getMessage(), 0);
    $response['message'] = 'Terjadi kesalahan sistem saat mengambil data: ' . $e->getMessage();
} catch (Exception $e) {
    error_log("General error in get_data_kehamilan.php: " . $e->getMessage(), 0);
    $response['message'] = 'Terjadi kesalahan tidak terduga.';
}

echo json_encode($response);
exit();

?>