<?php
require_once '../../config/db.php';
require_once '../../config/config.php';
requireLogin();
requireAdmin(); // Solo administradores pueden gestionar cuentas

// Recoger y validar datos
$id = isset($_POST['id']) ? intval($_POST['id']) : 0;
$correo = trim($_POST['correo'] ?? '');
$contrasena_correo = trim($_POST['contrasena_correo'] ?? '');
$contrasena_gpt = trim($_POST['contrasena_gpt'] ?? '');
$codigo = trim($_POST['codigo'] ?? '');
$fecha_inicio = trim($_POST['fecha_inicio'] ?? '');
$fecha_fin = trim($_POST['fecha_fin'] ?? '');
$costo = floatval($_POST['costo'] ?? 0);
$estado = trim($_POST['estado'] ?? '');
$tipo_cuenta = trim($_POST['tipo_cuenta'] ?? '');

if ($id < 1 || !$correo || !$contrasena_correo || !$contrasena_gpt || !$fecha_inicio || !$estado) {
    echo json_encode(['success' => false, 'error' => 'Datos incompletos']);
    exit;
}

// Actualizar cuenta
$sql = "UPDATE cuentas SET correo=?, contrasena_correo=?, contrasena_gpt=?, codigo=?, fecha_inicio=?, fecha_fin=?, costo=?, estado=?, tipo_cuenta=? WHERE id=?";
$stmt = mysqli_prepare($conn, $sql);
mysqli_stmt_bind_param($stmt, "ssssssdssi", $correo, $contrasena_correo, $contrasena_gpt, $codigo, $fecha_inicio, $fecha_fin, $costo, $estado, $tipo_cuenta, $id);

if (mysqli_stmt_execute($stmt)) {
    echo json_encode(['success' => true]);
} else {
    echo json_encode(['success' => false, 'error' => 'Error al actualizar']);
}
mysqli_stmt_close($stmt);
mysqli_close($conn);
exit;
?>
