// Carga y resumen del carrito en el Checkout
function renderCheckoutSummary() {
const cart = JSON.parse(localStorage.getItem('emi_florist_cart')) || [];
const container = document.getElementById('summary-items-container');
const totalEl = document.getElementById('summary-total-price');
const cartDataInput = document.getElementById('cart_data');
const totalInput = document.getElementById('total_price');
if (!container) return;
if (cart.length === 0) {
container.innerHTML = 'No hay productos en el carrito.
';
if (totalEl) totalEl.textContent = '0.00 €';
window.location.href = 'index.php';
return;
}
// Calcular extras
let extrasPrice = 0;
const peluche = document.getElementById('peluche').value;
const bombones = document.getElementById('bombones').value;
const globo = document.getElementById('globohelio').value;
const cava = document.getElementById('cava').value;
if (peluche.includes('Rosa') || peluche.includes('Azul') || peluche.includes('Neutro')) extrasPrice += 12;
if (peluche.includes('Corazones')) extrasPrice += 15;
if (bombones.includes('Caja roja')) extrasPrice += 10;
if (globo.includes('Latex')) extrasPrice += 8;
if (globo.includes('Metalizado')) extrasPrice += 10;
if (cava.includes('Cava')) extrasPrice += 18;
let subtotal = 0;
let itemsHtml = cart.map(item => {
const itemTotal = item.price * item.quantity;
subtotal += itemTotal;
return `
${item.quantity}x ${item.name}
${itemTotal.toFixed(2)} €
`;
}).join('');
if (extrasPrice > 0) {
itemsHtml += `
Complementos/Extras
${extrasPrice.toFixed(2)} €
`;
}
container.innerHTML = itemsHtml;
const totalFinal = subtotal + extrasPrice;
if (totalEl) totalEl.textContent = `${totalFinal.toFixed(2)} €`;
if (cartDataInput) cartDataInput.value = JSON.stringify(cart);
if (totalInput) totalInput.value = totalFinal.toFixed(2);
}
// Registrar listeners para refrescar resumen cuando cambian extras
document.querySelectorAll('#peluche, #bombones, #globohelio, #cava').forEach(select => {
select.addEventListener('change', renderCheckoutSummary);
});
document.addEventListener('DOMContentLoaded', () => {
// Rellenar fecha de entrega mínima a hoy
const dateInput = document.getElementById('fecha_entrega');
if (dateInput) {
const today = new Date().toISOString().split('T')[0];
dateInput.setAttribute('min', today);
}
renderCheckoutSummary();
});