- Konfiguriere Google DNS Server (8.8.8.8, 8.8.4.4) für zuverlässigere Auflösung
- Füge intelligente Erkennung vorhandener Docker-Images hinzu
- Aktualisiere Dockerfile automatisch, um verfügbare Base-Images zu nutzen
- Verwende generischere Image-Tags (node:alpine, python:slim) als Standard
- Implementiere Fallback mit mehreren alternativen Image-Versionen
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Ändere node:20-alpine zu node:lts-alpine für Frontend
- Ändere python:3.11-slim zu python:3-slim für Backend
- Ermöglicht Cache-Nutzung, wenn diese allgemeineren Images bereits auf dem System vorhanden sind
- Verhindert Netzwerk-Timeouts beim Pullen spezifischer Versionen
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Verbessere Docker Compose Versionsprüfung und -installation
- Aktualisiere docker-compose.yml zu Version 3 Format
- Behebe YAML-Syntax-Fehler in Environment-Variablen
- Füge Unterstützung für beide Befehlsvarianten hinzu (docker-compose/docker compose)
- Verwende Docker Compose v2.6.1 für ARM-Architekturen (Raspberry Pi)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Entferne alle überflüssigen Installations- und Konfigurationsskripte
- Erstelle zwei vereinfachte Docker-Installationsskripte:
- install-frontend.sh für Frontend-Installation
- install-backend.sh für Backend-Installation
- Verbessere Frontend Dockerfile mit besserer Unterstützung für native Dependencies
- Aktualisiere Backend Dockerfile für automatische DB-Initialisierung
- Korrigiere TypeScript-Fehler in personalized-cards.tsx
- Erstelle env.ts für Umgebungsvariablen-Verwaltung
- Füge ausführliche Installationsanleitung in INSTALL.md hinzu
- Konfiguriere Docker-Compose für Host-Netzwerkmodus
- Erweitere Dockerfiles mit Healthchecks für bessere Zuverlässigkeit
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Füge Docker-Compose-Konfiguration mit Host-Netzwerk für Frontend und Backend hinzu
- Erstelle Dockerfile für das Frontend mit automatischer Datenbankmigration
- Aktualisiere Backend-Docker-Compose mit korrekten Umgebungsvariablen
- Implementiere Installationsskripte:
- install-myp.sh: Vollständige Installation beider Komponenten
- start-myp.sh: Starten der installierten Container
- stop-myp.sh: Stoppen der Container
- setup-backend-env.sh: Einrichten der Backend-Umgebungsvariablen
- Korrigiere SQLite-Datenbankprobleme im Frontend
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Erweitere init_db Funktion, um fehlende connection_status und last_seen Spalten in der socket Tabelle zu prüfen
- Füge Spalten dynamisch hinzu, falls sie nicht existieren
- Verhindert den Fehler 'no such column: connection_status' im background_job_checker
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 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>