document.getElementById('rutinaForm').addEventListener('submit', async function (e) {
  e.preventDefault();

  const title = document.getElementById('title').value.trim();
  const duration = parseInt(document.getElementById('duration').value.trim());
  const language = document.getElementById('language').value;
  const nombreCompetencia = document.getElementById('nombreCompetencia').value.trim();
  const tipoCompetencia = document.getElementById('tipoCompetencia').value;
  const modalidad = document.getElementById('modalidad').value;
  const musicFile = document.getElementById('music').files[0];

  if (!title || isNaN(duration) || !language || !nombreCompetencia || !tipoCompetencia || !modalidad) {
    alert("Completa todos los campos.");
    return;
  }

  let musicUrl = "";

  if (musicFile) {
    const formData = new FormData();
    formData.append('music', musicFile);

    try {
      const uploadRes = await fetch('/routines/upload/music', {
        method: 'POST',
        body: formData
      });

      const uploadData = await uploadRes.json();

      if (!uploadRes.ok) {
        throw new Error(uploadData.error || 'Error al subir archivo');
      }

      musicUrl = uploadData.url;
    } catch (err) {
      console.error('❌ Error al subir música:', err);
      alert('Error al subir el archivo de música. Intenta de nuevo.');
      return;
    }
  }

  const routine = {
    title,
    duration,
    language,
    nombreCompetencia,
    tipoCompetencia,
    modalidad,
    participantes: [],
    createdBy: "coach-id-ejemplo",
    musicUrl,
    elements: [],
    formaciones: []
  };

  try {
    const res = await fetch('/routines', {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify(routine)
    });

    const data = await res.json();

    if (res.ok) {
      alert("Rutina guardada correctamente.");
      window.location.href = "equipoDisponibles.html";
    } else {
      alert("Error al guardar la rutina: " + (data.message || "Error desconocido"));
    }
  } catch (err) {
    console.error(err);
    alert("Error al guardar la rutina.");
  }
});
