Fix: Robustere Fehlerbehandlung für Falukant-Account-Check im Menü-Filtering
- Füge try-catch zu hasFalukantAccount() hinzu um DB-Fehler abzufangen - Füge try-catch zu filterMenu() hinzu für zusätzliche Sicherheit - Verhindert Crash wenn Falukant-User-Tabelle nicht verfügbar ist - Fallback: return false wenn Fehler auftritt
This commit is contained in:
@@ -307,6 +307,7 @@ class NavigationController {
|
||||
|
||||
async filterMenu(menu, rights, age, userId) {
|
||||
const filteredMenu = {};
|
||||
try {
|
||||
const hasFalukantAccount = await this.hasFalukantAccount(userId);
|
||||
for (const [key, value] of Object.entries(menu)) {
|
||||
if (value.visible.includes("all")
|
||||
@@ -323,6 +324,11 @@ class NavigationController {
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('Error filtering menu:', error);
|
||||
// Return empty menu if filtering fails
|
||||
return {};
|
||||
}
|
||||
return filteredMenu;
|
||||
}
|
||||
|
||||
@@ -363,8 +369,13 @@ class NavigationController {
|
||||
}
|
||||
|
||||
async hasFalukantAccount(userId) {
|
||||
try {
|
||||
const falukantUser = await FalukantUser.findOne({ where: { userId: userId } });
|
||||
return falukantUser !== null;
|
||||
} catch (error) {
|
||||
console.error('Error checking falukant account:', error);
|
||||
return false; // Fallback: assume no falukant account if error occurs
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user