- Neue übersichtliche Dashboard-Ansicht für aktive und wartende Jobs
- Fortschrittsbalken für laufende Druckaufträge mit verbleibender Zeit
- Liste der verfügbaren Drucker mit schnellem Zugriff auf Auftragserstellung
- Freischaltungs-Funktionalität für wartende Jobs direkt vom Dashboard
- Automatische Aktualisierung der Daten alle 60 Sekunden
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Anzeige der verbleibenden Zeit für aktuelle Druckaufträge in der Druckeransicht
- Neue Spalte für wartende Jobs in der Druckerliste
- Übersichtliche Anzeige der Warteschlange mit Job-Informationen
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Anzeige der verbleibenden Zeit für Druckaufträge im Frontend
- Neue UI-Komponenten für Wartejobs und deren Freischaltung
- Freischaltungs-Modal für wartende Jobs implementiert
- Drucker-Status wird beim Erstellen eines Auftrags angezeigt
- Checkbox für Warteschlangen-Option beim Erstellen eines Auftrags
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Verbesserte Funktion check-jobs für automatische Abschaltung
- Implentierung von Warteschlange für besetzte Drucker
- Neues Datenbank-Feld 'waiting_approval' für Druckaufträge
- Neuer API-Endpunkt '/api/jobs/<job_id>/approve' zur Freischaltung
- Verbessertes Logging für Debugging-Zwecke
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Updated printer (socket) API endpoints to use the new data structure
- Updated job API endpoints to match the current implementation
- Added documentation for new endpoints: job status, abort, finish, and extend
- Updated field names to match the camelCase convention used in the backend
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Updated environment variable section to use PRINTERS instead of TAPO_DEVICES
- Added JSON format example for the PRINTERS variable
- Updated technology stack to mention PyP100 instead of Tapo library
- Fixed database path reference from DATABASE_URL to DATABASE_PATH
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Created .env.example file for backend configuration
- Updated environment variable format for smart plugs
- PRINTERS variable now uses the new JSON format required by the PyP100 library
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Steckdosen werden automatisch aus SOCKET_DEVICES Umgebungsvariable initialisiert
- Drucker werden als "Printer X" benannt, wobei X die Nummer der Steckdose ist
- Alle Steckdosen werden beim Start in den AUS-Zustand versetzt
- Verbesserte Fehlerbehandlung beim Ausschalten der Steckdosen mit mehreren Versuchen
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Neue API zur Statusüberprüfung für Frontend hinzugefügt
- Automatisches Ausschalten der Steckdosen bei Jobende implementiert
- Zurücksetzen des Steckdosenstatus nach Jobende verbessert
- check-jobs CLI-Befehl optimiert
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Umstellung der klassenbasierten Implementierung auf Funktionen
- Änderung der Drucker-Logik auf Steckdosen-Logik für Fernsteuerung
- Umbenennung relevanter Tabellen/Funktionen von printer zu socket
- Beibehaltung der API-Kompatibilität der Endpunkte
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Ersetzt tapo==0.8.1 mit PyP100==0.0.19 in requirements.txt
- Ändert Import von ApiClient zu PyP100
- Implementiert TapoControl Klasse neu mit PyP100 API
- Entfernt async/await-Aufrufe, da PyP100 synchrone API benutzt
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Direkte Nutzung von SQLite3 statt Flask-SQLAlchemy/Flask-Migrate
- Vereinfachung der Datenbankinitialisierung
- Automatische Erstellung der Datenbank beim Serverstart, falls nicht vorhanden
- ORM-Klassen mit direkten SQLite-Methoden implementiert
- Entfernung nicht benötigter Abhängigkeiten
Dieses Commit fügt das 'initialize_myp_database.sh' Skript zur automatisierten Datenbank-Initialisierung hinzu sowie die notwendigen Migrations-Dateien für Flask-Migrate.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Implementiere eine Weboberfläche zur Verwaltung von Druckern, Druckaufträgen und Benutzern mit folgenden Funktionen:
- Login/Registrierungsseiten
- Dashboard mit Überblick
- Drucker-Verwaltung (Hinzufügen, Bearbeiten, Löschen)
- Auftrags-Verwaltung (Erstellen, Abbrechen, Verlängern)
- Benutzer-Verwaltung (nur Admin)
- Statistik-Dashboard
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Entferne Authlib (nicht mehr benötigt ohne OAuth)
- Entferne aiohttp und requests (nicht mehr benötigt für GitHub API)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Entferne JWT-Token-basierte Authentifizierung
- Füge Endpunkte für Benutzerregistrierung und -anmeldung hinzu
- Dokumentiere neuen Endpunkt für initialen Admin-Setup
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Erstelle eine neue Datei mit Dokumentation der notwendigen Änderungen am Frontend für den Wechsel von GitHub OAuth zu lokaler Authentifizierung.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>