🐛 Update: Enhanced API for printer list retrieval with additional query parameters for filtering active and inactive printers. Improved response structure to include printer reachability and display status for better UI integration. Added granular permissions management in user creation process. 📚

This commit is contained in:
2025-06-12 21:14:08 +02:00
parent a212fcc8a3
commit bcb8f80415
129 changed files with 694 additions and 8 deletions

View File

@ -21147,3 +21147,404 @@ werkzeug.routing.exceptions.BuildError: Could not build url for endpoint 'tapo_c
2025-06-12 21:06:06 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:06:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:06:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:06:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:06:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:06:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:06:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:06:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:06:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:07:06 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:07:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:07:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:07:06 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:07:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:07:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:07:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:07:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:07:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:07:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:07:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:07:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:08:06 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:08:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:08:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:08:06 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:08:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:08:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:08:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:08:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:08:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:08:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:08:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:08:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:09:06 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:09:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:09:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:09:06 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:09:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:09:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:09:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:09:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:09:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:09:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:09:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen
2025-06-12 21:09:36 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:09:37 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt...
2025-06-12 21:09:37 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt
2025-06-12 21:09:37 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown'
2025-06-12 21:09:38 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank...
2025-06-12 21:09:39 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O)
2025-06-12 21:09:39 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin...
2025-06-12 21:09:39 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt.
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager...
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler...
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet
2025-06-12 21:09:39 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000
2025-06-12 21:10:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:10:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:10:29 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt...
2025-06-12 21:10:29 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt
2025-06-12 21:10:29 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown'
2025-06-12 21:10:30 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank...
2025-06-12 21:10:31 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O)
2025-06-12 21:10:31 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin...
2025-06-12 21:10:31 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt.
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager...
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler...
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet
2025-06-12 21:10:31 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000
2025-06-12 21:10:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:10:36 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:11:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:11:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:01 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank...
2025-06-12 21:12:02 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O)
2025-06-12 21:12:02 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert
2025-06-12 21:12:02 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin...
2025-06-12 21:12:03 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt.
2025-06-12 21:12:03 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft
2025-06-12 21:12:03 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager...
2025-06-12 21:12:03 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet
2025-06-12 21:12:03 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler...
2025-06-12 21:12:03 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet
2025-06-12 21:12:03 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000
2025-06-12 21:12:03 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank...
2025-06-12 21:12:04 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O)
2025-06-12 21:12:04 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert
2025-06-12 21:12:04 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin...
2025-06-12 21:12:05 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt.
2025-06-12 21:12:05 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft
2025-06-12 21:12:05 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager...
2025-06-12 21:12:05 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet
2025-06-12 21:12:05 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler...
2025-06-12 21:12:05 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet
2025-06-12 21:12:05 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000
2025-06-12 21:12:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:06 - [app] app - [INFO] INFO - Locating template 'dashboard.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/dashboard.html')
2025-06-12 21:12:06 - [app] app - [INFO] INFO - Locating template 'base.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html')
2025-06-12 21:12:06 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:06 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:11 - [app] app - [DEBUG] DEBUG - Request: GET /printers
2025-06-12 21:12:11 - [app] app - [INFO] INFO - Locating template 'printers.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/printers.html')
2025-06-12 21:12:11 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:11 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:12:11 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:11 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:11 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:12:11 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:11 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:23 - [app] app - [DEBUG] DEBUG - Request: GET /jobs
2025-06-12 21:12:23 - [app] app - [INFO] INFO - Locating template 'jobs.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/jobs.html')
2025-06-12 21:12:23 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:23 - [app] app - [DEBUG] DEBUG - Request: GET /api/jobs
2025-06-12 21:12:23 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:23 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:12:23 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:23 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:25 - [app] app - [DEBUG] DEBUG - Request: GET /stats
2025-06-12 21:12:25 - [app] app - [INFO] INFO - Locating template 'stats.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/stats.html')
2025-06-12 21:12:25 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:27 - [app] app - [DEBUG] DEBUG - Request: GET /tapo/
2025-06-12 21:12:29 - [app] app - [DEBUG] DEBUG - Request: GET /request
2025-06-12 21:12:29 - [app] app - [INFO] INFO - Locating template 'guest_request.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_request.html')
2025-06-12 21:12:29 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:34 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:12:34 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:34 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:34 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:12:34 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:12:34 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:39 - [app] app - [INFO] INFO - Locating template 'tapo_control.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/tapo_control.html')
2025-06-12 21:12:39 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:42 - [app] app - [DEBUG] DEBUG - Request: GET /system-info
2025-06-12 21:12:42 - [app] app - [INFO] INFO - Locating template 'system_info.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/system_info.html')
2025-06-12 21:12:42 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:58 - [app] app - [DEBUG] DEBUG - Request: GET /admin/
2025-06-12 21:12:58 - [app] app - [INFO] INFO - Locating template 'admin.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin.html')
2025-06-12 21:12:58 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:12:58 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats
2025-06-12 21:12:58 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/stats
2025-06-12 21:12:58 - [app] app - [INFO] INFO - Locating template 'errors/404.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/errors/404.html')
2025-06-12 21:12:58 - [app] app - [DEBUG] DEBUG - Request: GET /api/admin/system-health
2025-06-12 21:12:58 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/admin/system-health
2025-06-12 21:13:01 - [app] app - [DEBUG] DEBUG - Request: GET /admin/advanced-settings
2025-06-12 21:13:01 - [app] app - [INFO] INFO - Locating template 'admin_advanced_settings.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html')
2025-06-12 21:13:01 - [app] app - [ERROR] ERROR - Unhandled Exception - ID: 20250612_211301
2025-06-12 21:13:01 - [app] app - [ERROR] ERROR - URL: http://127.0.0.1:5000/admin/advanced-settings
2025-06-12 21:13:01 - [app] app - [ERROR] ERROR - Method: GET
2025-06-12 21:13:01 - [app] app - [ERROR] ERROR - User: admin
2025-06-12 21:13:01 - [app] app - [ERROR] ERROR - Exception Type: UndefinedError
2025-06-12 21:13:01 - [app] app - [ERROR] ERROR - Exception: 'stats' is undefined
2025-06-12 21:13:01 - [app] app - [ERROR] ERROR - Traceback: Traceback (most recent call last):
File "/home/core/.local/lib/python3.11/site-packages/flask/app.py", line 867, in full_dispatch_request
rv = self.dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^
File "/home/core/.local/lib/python3.11/site-packages/flask/app.py", line 852, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/core/.local/lib/python3.11/site-packages/flask_login/utils.py", line 290, in decorated_view
return current_app.ensure_sync(func)(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 87, in decorated_function
return f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^
File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 287, in advanced_settings
return render_template('admin_advanced_settings.html')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 152, in render_template
return _render(app, template, context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 133, in _render
rv = template.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render
self.environment.handle_exception()
File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception
raise rewrite_traceback_stack(source=source)
File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 1, in top-level template code
{% extends "base.html" %}
File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html", line 433, in top-level template code
{% block content %}{% endblock %}
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 388, in block 'content'
<p class="text-3xl font-bold text-slate-900 dark:text-white mt-1">{{ stats.total_users }}</p>
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 485, in getattr
return getattr(obj, attribute)
^^^^^^^^^^^^^^^^^^^^^^^
jinja2.exceptions.UndefinedError: 'stats' is undefined
2025-06-12 21:13:01 - [app] app - [INFO] INFO - Locating template 'errors/500.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/errors/500.html')
2025-06-12 21:13:01 - [app] app - [DEBUG] DEBUG - Response: 500
2025-06-12 21:13:03 - [app] app - [DEBUG] DEBUG - Request: GET /admin/guest-requests
2025-06-12 21:13:03 - [app] app - [INFO] INFO - Locating template 'admin_guest_requests.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_guest_requests.html')
2025-06-12 21:13:03 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:04 - [app] app - [DEBUG] DEBUG - Request: GET /api/admin/requests
2025-06-12 21:13:04 - [app] app - [WARNING] WARNING - Forbidden (403): http://127.0.0.1:5000/api/admin/requests - User: admin
2025-06-12 21:13:04 - [app] app - [DEBUG] DEBUG - Response: 403
2025-06-12 21:13:05 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:13:05 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:13:05 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:05 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:13:05 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:13:05 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:13 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats
2025-06-12 21:13:13 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/stats
2025-06-12 21:13:14 - [app] app - [DEBUG] DEBUG - Request: GET /admin/users
2025-06-12 21:13:14 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:14 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats
2025-06-12 21:13:14 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/stats
2025-06-12 21:13:14 - [app] app - [DEBUG] DEBUG - Request: GET /api/admin/system-health
2025-06-12 21:13:14 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/admin/system-health
2025-06-12 21:13:19 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats
2025-06-12 21:13:19 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/stats
2025-06-12 21:13:24 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats
2025-06-12 21:13:24 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/stats
2025-06-12 21:13:26 - [app] app - [DEBUG] DEBUG - Request: GET /dashboard
2025-06-12 21:13:26 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:29 - [app] app - [DEBUG] DEBUG - Request: GET /request
2025-06-12 21:13:29 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:35 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:13:35 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:13:35 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:35 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:13:35 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=True)
2025-06-12 21:13:35 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:41 - [app] app - [DEBUG] DEBUG - Request: GET /admin/
2025-06-12 21:13:41 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:13:42 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats
2025-06-12 21:13:42 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/stats
2025-06-12 21:13:42 - [app] app - [DEBUG] DEBUG - Request: GET /api/admin/system-health
2025-06-12 21:13:42 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/admin/system-health
2025-06-12 21:13:47 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats
2025-06-12 21:13:47 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/api/stats
2025-06-12 21:13:48 - [app] app - [DEBUG] DEBUG - Request: POST /auth/logout
2025-06-12 21:13:48 - [app] app - [DEBUG] DEBUG - Response: 302
2025-06-12 21:13:48 - [app] app - [DEBUG] DEBUG - Request: GET /auth/login
2025-06-12 21:13:48 - [app] app - [INFO] INFO - Locating template 'login.html':
1: trying loader of application '__main__'
class: jinja2.loaders.FileSystemLoader
encoding: 'utf-8'
followlinks: False
searchpath:
- /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates
-> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/login.html')
2025-06-12 21:13:48 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Response: 302
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Response: 302
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Request: GET /auth/login
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Response: 200
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Request: GET /auth/login
2025-06-12 21:14:05 - [app] app - [DEBUG] DEBUG - Response: 200