feature/UC58-Gruppen-Verteilung #23
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/UC58-Gruppen-Verteilung"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ersetzt die drei inkompatiblen Mechanismen (Voll-Export, Cloud-Sync, Aus-WebDAV-Dialog) durch einen einheitlichen Workflow: Backend: - photo_processing: geteiltes `reference_dir()` Helper (UC31) - rallye_io: serialize_rallye liefert reference_images-Metadaten; deserialize_rallye bekommt optional einen asset_loader für Referenzbilder (ZIP/WebDAV) - Neuer Service template_package.py: - build_template_zip / parse_template_zip (In-Memory ZIP) - export_template_to_webdav, list_template_exports, import_template_export_from_webdav (Job-Targets) - Neue Endpoints: GET /{id}/export-zip, POST /templates/import-zip, GET|POST /{profile_id}/template-exports|export-template|import-template-export - Entfernt: sync-template Endpoint; webdav_sync-Funktionen push_template/list_remote_templates/import_template_from_webdav/_merge - Bugfix webdav.py list_directory: base_path wurde beim PROPFIND-Parsing nicht abgezogen → leere Listen bei gesetztem Basis-Pfad Frontend: - Neue Komponenten: TemplateExportDialog (ZIP + WebDAV inkl. Profil- Auswahl + Versionsauswahl), TemplateImportDialog (Datei-Upload + Aus WebDAV mit Versions-Auswahl) - Button „Exportieren" in AdminRallyeDetail (Vorlagen UND Läufe) - Button „Importieren" in AdminTemplatesList (ersetzt Aus-WebDAV + JSON-Datei) - Entfernt: WebDAVImportDialog, adminTemplateSync, Cloud-Sync-Icon, JSON-Download-Icon, JSON-Paste-Dialog Tests: test_template_package (Round-trip inkl. Referenzbild), test_webdav_list_directory (list_directory Bugfix-Regression), test_rallye_io angepasst (3. DB-Execute für ref_images) — 198 Backend-Tests grün, npm run build grün Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>- list_directory: href-Pfad via urlparse/unquote extrahieren und Prefix aus self._url("") ableiten — behebt leere Listen bei Voll-URL-Hrefs und prozent-encodierten base_paths (z.B. "Rallye%20Exports") - Export-Ordner-Regex akzeptiert "_" und "-" vor dem Zeitstempel (Legacy-Rallye-Exporte nutzten Unterstrich) - Import faellt auf rallye.json zurueck, wenn template.json fehlt - Dialog laedt Liste nur im WebDAV-Tab + manueller Aktualisieren-Button - Tests fuer Voll-URL-Hrefs, Unterstrich-Separator und rallye.json-Fallback Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>