rss-reader/static/js/setup.js
2025-02-17 02:03:44 -08:00

33 lines
1.2 KiB
JavaScript

document.getElementById('setupForm').addEventListener('submit', async (e) => {
e.preventDefault();
const errorElement = document.getElementById('setupError');
errorElement.style.display = 'none';
const formData = {
username: document.getElementById('username').value,
password: document.getElementById('password').value,
email: document.getElementById('email').value || null,
display_name: document.getElementById('displayName').value || null
};
try {
const response = await fetch('/setup', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(formData)
});
if (response.ok) {
window.location.href = '/login';
} else {
const data = await response.json().catch(() => null);
errorElement.textContent = data?.error || 'Failed to create admin account';
errorElement.style.display = 'block';
}
} catch (error) {
errorElement.textContent = 'An error occurred. Please try again.';
errorElement.style.display = 'block';
}
});