<?php
include "core/autoload.php";
include "core/app/model/EventData.php";

try {
    $event_id = $_POST['event_id'];
    $attended = $_POST['attended']; // Now receiving direct integer value
    $notes = isset($_POST['notes']) ? $_POST['notes'] : '';
    $payment_amount = isset($_POST['payment_amount']) ? $_POST['payment_amount'] : 0;
    $payment_method = isset($_POST['payment_method']) ? $_POST['payment_method'] : '';

    // Start building the SQL query
    $sql = "UPDATE event SET attended = " . $attended;

    // Add payment and notes fields for confirmed events
    if ($attended == 1) {
        $sql .= ", attendance_notes = '" . $notes . "',
                  attendance_date = NOW(),
                  payment_amount = '" . $payment_amount . "',
                  payment_method = '" . $payment_method . "',
                  payment_date = NOW()";
    } 
    // Add date updates for postponed events
    else if ($attended == 2 && isset($_POST['date']) && isset($_POST['start']) && isset($_POST['end'])) {
        $sql .= ", date = '" . $_POST['date'] . "',
                  start = '" . $_POST['start'] . "',
                  end = '" . $_POST['end'] . "'";
    }
    // For cancelled events (attended = 3), only update the attended status
    
    $sql .= " WHERE id = '" . $event_id . "'";
    
    Executor::doit($sql);

    echo json_encode(['success' => true]);
} catch (Exception $e) {
    echo json_encode(['success' => false, 'message' => $e->getMessage()]);
}