Implementierung Wissensmanagement

Dieser Commit ist enthalten in:
HG
2025-12-30 22:49:56 +00:00
committet von Server Deploy
Ursprung 9bf298c26b
Commit 395598c2b0
51 geänderte Dateien mit 7598 neuen und 32 gelöschten Zeilen

Datei anzeigen

@ -21,7 +21,9 @@ class SyncManager {
// Initialize Socket.io connection
async connect() {
if (this.socket?.connected) {
// Verhindere doppelte Verbindungen (auch während des Verbindungsaufbaus)
if (this.socket) {
console.log('[Sync] Socket already exists, skipping connect');
return;
}
@ -102,8 +104,15 @@ class SyncManager {
console.error('[Sync] Socket error:', error);
if (error.type === 'auth') {
// Auth failed, logout
window.dispatchEvent(new CustomEvent('auth:logout'));
// Nur ausloggen wenn wir wirklich nicht eingeloggt sind
// (verhindert Logout durch alte Socket-Verbindungen nach neuem Login)
const currentToken = localStorage.getItem('auth_token');
if (!currentToken) {
console.log('[Sync] Auth error and no token, triggering logout');
window.dispatchEvent(new CustomEvent('auth:logout'));
} else {
console.log('[Sync] Auth error ignored - new login occurred');
}
}
});
@ -546,9 +555,8 @@ class SyncManager {
const syncManager = new SyncManager();
// Listen for auth events
window.addEventListener('auth:login', () => {
syncManager.connect();
});
// Hinweis: syncManager.connect() wird NICHT hier aufgerufen,
// sondern in app.js initializeApp() um doppelte Verbindungen zu vermeiden
window.addEventListener('auth:logout', () => {
syncManager.disconnect();