Files
lumeex/src/webui/js/upload.js
2025-08-16 13:14:04 +02:00

42 lines
1.4 KiB
JavaScript

// --- Upload gallery images ---
document.getElementById('upload-gallery').addEventListener('change', async (e) => {
const files = e.target.files;
if (!files.length) return;
const formData = new FormData();
for (const file of files) formData.append('files', file);
try {
const res = await fetch('/api/gallery/upload', { method: 'POST', body: formData });
const data = await res.json();
if (res.ok) {
showToast(`${data.uploaded.length} gallery image(s) uploaded!`, "success");
refreshGallery();
} else showToast('Error: ' + data.error, "error");
} catch(err) {
console.error(err);
showToast('Server error!', "error");
} finally { e.target.value = ''; }
});
// --- Upload hero images ---
document.getElementById('upload-hero').addEventListener('change', async (e) => {
const files = e.target.files;
if (!files.length) return;
const formData = new FormData();
for (const file of files) formData.append('files', file);
try {
const res = await fetch('/api/hero/upload', { method: 'POST', body: formData });
const data = await res.json();
if (res.ok) {
showToast(`${data.uploaded.length} hero image(s) uploaded!`, "success");
refreshHero();
} else showToast('Error: ' + data.error, "error");
} catch(err) {
console.error(err);
showToast('Server error!', "error");
} finally { e.target.value = ''; }
});