🔧 Update: Enhanced error handling and logging across various modules
**Änderungen:** - ✅ app.py: Hinzugefügt, um CSRF-Fehler zu behandeln - ✅ models.py: Fehlerprotokollierung bei der Suche nach Gastanfragen per OTP - ✅ api.py: Fehlerprotokollierung beim Markieren von Benachrichtigungen als gelesen - ✅ calendar.py: Fallback-Daten zurückgeben, wenn keine Kalenderereignisse vorhanden sind - ✅ guest.py: Status-Check-Seite für Gäste aktualisiert - ✅ hardware_integration.py: Debugging-Informationen für erweiterte Geräteinformationen hinzugefügt - ✅ tapo_status_manager.py: Rückgabewert für Statusabfrage hinzugefügt **Ergebnis:** - Verbesserte Fehlerbehandlung und Protokollierung für eine robustere Anwendung - Bessere Nachverfolgbarkeit von Fehlern und Systemverhalten 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -766,13 +766,13 @@
|
||||
<div class="mt-6 flex flex-wrap items-center justify-between gap-4">
|
||||
<div class="flex flex-wrap gap-4">
|
||||
<div class="flex items-center">
|
||||
<input type="checkbox" id="show-offline" class="w-4 h-4 text-mercedes-blue rounded">
|
||||
<input type="checkbox" id="show-offline" class="w-4 h-4 text-mercedes-blue rounded" checked>
|
||||
<label for="show-offline" class="ml-2 text-sm text-mercedes-gray dark:text-slate-400">
|
||||
Offline-Drucker anzeigen
|
||||
</label>
|
||||
</div>
|
||||
<div class="flex items-center">
|
||||
<input type="checkbox" id="show-maintenance" class="w-4 h-4 text-mercedes-blue rounded">
|
||||
<input type="checkbox" id="show-maintenance" class="w-4 h-4 text-mercedes-blue rounded" checked>
|
||||
<label for="show-maintenance" class="ml-2 text-sm text-mercedes-gray dark:text-slate-400">
|
||||
Wartungsmodus anzeigen
|
||||
</label>
|
||||
@ -1751,6 +1751,23 @@ class PrinterManager {
|
||||
container: 'status-unconfigured',
|
||||
iconBg: 'bg-indigo-100 dark:bg-indigo-900/30 text-indigo-600',
|
||||
badge: 'bg-indigo-100 text-indigo-800 dark:bg-indigo-900/30 dark:text-indigo-400'
|
||||
},
|
||||
// Neue Status für Tapo-basierte Logik
|
||||
'available': {
|
||||
container: 'status-available',
|
||||
iconBg: 'bg-green-100 dark:bg-green-900/30 text-green-600',
|
||||
badge: 'bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-400'
|
||||
},
|
||||
'busy': {
|
||||
container: 'status-busy',
|
||||
iconBg: 'bg-orange-100 dark:bg-orange-900/30 text-orange-600',
|
||||
badge: 'bg-orange-100 text-orange-800 dark:bg-orange-900/30 dark:text-orange-400'
|
||||
},
|
||||
// Aliases für Rückwärtskompatibilität
|
||||
'idle': {
|
||||
container: 'status-online',
|
||||
iconBg: 'bg-green-100 dark:bg-green-900/30 text-green-600',
|
||||
badge: 'bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-400'
|
||||
}
|
||||
};
|
||||
return classes[status] || classes['offline'];
|
||||
@ -1763,24 +1780,30 @@ class PrinterManager {
|
||||
'printing': '<div class="w-3 h-3 bg-blue-500 rounded-full status-pulse"></div>',
|
||||
'error': '<div class="w-3 h-3 bg-orange-500 rounded-full"></div>',
|
||||
'maintenance': '<div class="w-3 h-3 bg-purple-500 rounded-full"></div>',
|
||||
'idle': '<div class="w-3 h-3 bg-green-500 rounded-full"></div>',
|
||||
'standby': '<div class="w-3 h-3 bg-yellow-500 rounded-full"></div>',
|
||||
'unreachable': '<div class="w-3 h-3 bg-gray-500 rounded-full"></div>',
|
||||
'unconfigured': '<div class="w-3 h-3 bg-indigo-500 rounded-full"></div>'
|
||||
'unconfigured': '<div class="w-3 h-3 bg-indigo-500 rounded-full"></div>',
|
||||
// Neue Status für Tapo-basierte Logik
|
||||
'available': '<div class="w-3 h-3 bg-green-500 rounded-full"></div>',
|
||||
'busy': '<div class="w-3 h-3 bg-orange-500 rounded-full status-pulse"></div>'
|
||||
};
|
||||
return icons[status] || icons['offline'];
|
||||
}
|
||||
|
||||
getStatusText(status) {
|
||||
const texts = {
|
||||
'online': 'Online',
|
||||
'offline': 'Offline',
|
||||
'printing': 'Druckt',
|
||||
'online': 'Verfügbar & Frei', // Steckdose erreichbar & aus → kann reserviert werden
|
||||
'offline': 'Nicht erreichbar', // Steckdose nicht erreichbar
|
||||
'printing': 'Druckt - Besetzt', // Steckdose erreichbar & an → Drucker läuft
|
||||
'error': 'Fehler',
|
||||
'maintenance': 'Wartung',
|
||||
'idle': 'Bereit',
|
||||
'idle': 'Verfügbar & Frei', // Alias für online
|
||||
'standby': 'Standby',
|
||||
'unreachable': 'Unerreichbar',
|
||||
'unconfigured': 'Nicht konfiguriert'
|
||||
'unreachable': 'Nicht erreichbar', // Alias für offline
|
||||
'unconfigured': 'Nicht konfiguriert',
|
||||
'available': 'Verfügbar & Frei', // Neuer Status für "aus"
|
||||
'busy': 'Druckt - Besetzt' // Neuer Status für "an"
|
||||
};
|
||||
return texts[status] || status;
|
||||
}
|
||||
|
Reference in New Issue
Block a user