Loading Screen

This commit is contained in:
MasterAcnolo
2025-06-27 23:11:42 +02:00
parent e9f4b80b7b
commit bb967834f0
3 changed files with 68 additions and 47 deletions

View File

@@ -8,7 +8,7 @@
<body>
<form action="/download" method="POST">
<form action="/download" method="POST" id="downloadForm">
<input name="url" placeholder="URL YouTube" id="UrlInput">
<input type="checkbox" name="audioOnly" value="1"> MP3 seulement
<select name="quality">
@@ -18,6 +18,7 @@
<button type="submit">Télécharger</button>
</form>
<div id="downloadStatus" style="margin-top: 1em; font-weight:bold;"></div>
<!--Il faut utiliser un formulaire, parce que on doit envoyer a un serveur
les données à traiter. Pour cela on définit une route vers /download, ca va
@@ -27,6 +28,7 @@
<div id="videoInfo" style="margin-top: 20px;"></div>
<script src="script/downloadstatus.js"></script>
<script src="script/fetchinfo.js"></script>
</body>
</html>

View File

@@ -0,0 +1,29 @@
const form = document.getElementById("downloadForm");
const statusDiv = document.getElementById("downloadStatus");
form.addEventListener("submit", async (e) => {
e.preventDefault(); // empêche la soumission classique (rechargement)
statusDiv.textContent = "⏳ Téléchargement en cours...";
const formData = new FormData(form);
const params = new URLSearchParams(formData);
try {
const res = await fetch("/download", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: params,
});
if (!res.ok) {
statusDiv.textContent = "❌ Erreur pendant le téléchargement.";
return;
}
const text = await res.text();
statusDiv.textContent = text; // affiche « Téléchargement terminé » ou autre message serveur
} catch {
statusDiv.textContent = "❌ Une erreur sest produite.";
}
});