2024-11-14 17:43:37 +01:00
|
|
|
import { showAlert } from './shared_functions.js';
|
|
|
|
|
2024-10-29 21:09:13 +01:00
|
|
|
// Registrierungs-Event
|
|
|
|
document.getElementById('registerForm').addEventListener('submit', async (event) => {
|
|
|
|
event.preventDefault();
|
|
|
|
const username = document.getElementById('regUsername').value;
|
|
|
|
const email = document.getElementById('regEmail').value;
|
|
|
|
const password = document.getElementById('regPassword').value;
|
|
|
|
|
|
|
|
try {
|
|
|
|
const response = await fetch('http://localhost:8015/api/auth/register', {
|
|
|
|
method: 'POST',
|
|
|
|
headers: { 'Content-Type': 'application/json' },
|
|
|
|
body: JSON.stringify({ username, email, password })
|
|
|
|
});
|
|
|
|
|
|
|
|
const data = await response.json();
|
|
|
|
if (response.ok) {
|
2024-11-14 17:43:37 +01:00
|
|
|
showAlert('Registrierung erfolgreich! Bitte loggen Sie sich ein.', 'success');
|
2024-10-29 21:09:13 +01:00
|
|
|
} else {
|
2024-11-14 17:43:37 +01:00
|
|
|
showAlert(data.message || 'Registrierung fehlgeschlagen');
|
2024-10-29 21:09:13 +01:00
|
|
|
}
|
|
|
|
} catch (error) {
|
|
|
|
console.error('Fehler bei der Registrierung:', error);
|
2024-11-14 17:43:37 +01:00
|
|
|
// Check for network error
|
|
|
|
if (error.message.includes('Failed to fetch') || error.message.includes('ERR_CONNECTION_REFUSED')) {
|
|
|
|
showAlert('Verbindungsfehler: Die Verbindung zum Server wurde abgelehnt. Bitte überprüfen Sie die Serververbindung.');
|
|
|
|
} else {
|
|
|
|
showAlert('Ein unerwarteter Fehler ist aufgetreten. Bitte versuchen Sie es später erneut.');
|
|
|
|
}
|
2024-10-29 21:09:13 +01:00
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
// Login-Event
|
|
|
|
document.getElementById('loginForm').addEventListener('submit', async (event) => {
|
|
|
|
event.preventDefault();
|
|
|
|
const email = document.getElementById('loginEmail').value;
|
|
|
|
const password = document.getElementById('loginPassword').value;
|
|
|
|
|
|
|
|
try {
|
|
|
|
const response = await fetch('http://localhost:8015/api/auth/login', {
|
|
|
|
method: 'POST',
|
|
|
|
headers: { 'Content-Type': 'application/json' },
|
|
|
|
body: JSON.stringify({ email, password })
|
|
|
|
});
|
|
|
|
|
|
|
|
const data = await response.json();
|
|
|
|
if (response.ok) {
|
|
|
|
localStorage.setItem('token', data.token); // Token speichern
|
|
|
|
window.location.href = 'welcome.html'; // Weiterleitung zur Willkommensseite
|
|
|
|
} else {
|
2024-11-14 17:43:37 +01:00
|
|
|
showAlert(data.message || 'Login fehlgeschlagen');
|
2024-10-29 21:09:13 +01:00
|
|
|
}
|
|
|
|
} catch (error) {
|
|
|
|
console.error('Fehler beim Login:', error);
|
2024-11-14 17:43:37 +01:00
|
|
|
// Check for network error
|
|
|
|
if (error.message.includes('Failed to fetch') || error.message.includes('ERR_CONNECTION_REFUSED')) {
|
|
|
|
showAlert('Verbindungsfehler: Die Verbindung zum Server wurde abgelehnt. Bitte überprüfen Sie die Serververbindung.');
|
|
|
|
} else {
|
|
|
|
showAlert('Ein unerwarteter Fehler ist aufgetreten. Bitte versuchen Sie es später erneut.');
|
|
|
|
}
|
2024-10-29 21:09:13 +01:00
|
|
|
}
|
|
|
|
});
|
2024-11-14 17:43:37 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|