Commit Graph

15 Commits

Author SHA1 Message Date
s4luorth
ffb4de7fba Textmengencheck: A5 + DIN lang via show_check
All checks were successful
Build & Deploy / deploy (push) Successful in 21s
Neuer fetchCheckFormats() laedt Formate mit show_check=true (Text-Seiten-
Formate A4/A5/DIN-lang/A6), unabhaengig von der oeffentlichen Bestellbarkeit.
Textmenge nutzt das statt fetchFormats - so erscheinen A5 (hoch/quer) und
DIN lang (komplett beschrieben) im Check, Adress-Postkarten bleiben aussen vor.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.12
2026-09-30 10:54:16 +02:00
s4luorth
dd9ab3736b Konfigurator: Sammelbestellung ohne Empfängerliste > 25 wieder bestellbar
All checks were successful
Build & Deploy / deploy (push) Successful in 22s
Die neue Mengen-Sperre (entries.length === quantity) hätte identische
Sammelkarten ohne Empfängerliste oberhalb der Tabellengrenze blockiert:
dort wuchs entries nie auf die Menge, weil der Sync-Effekt pauschal bei
> 25 pausierte. Der Sync pausiert jetzt nur noch, wenn pro Zeile wirklich
Daten nötig sind (Empfänger-/Individualtext-Schritt oder eigene
Platzhalter im Brieftext). Ohne solche Daten erzeugt die Menge N
Blanko-Zeilen – auch > 25. Extern-Modus unverändert.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.11
2026-09-21 11:57:59 +02:00
s4luorth
9a467b9fb5 Konfigurator: Abrechnungs-Integritaet + Motiv-Katalog nur mit Motiven
All checks were successful
Build & Deploy / deploy (push) Successful in 28s
Fehlbelastung behoben: PayPal belastete bisher den CLIENT-Quote
(quote.gross_total, mit der frei getippten Menge gerechnet), waehrend
der Auftrag serverseitig aus entries.length angelegt/bepreist wird.
Wichen die auseinander (Menge > 25, Sync pausiert, Menge nachtraeglich
geaendert), zahlte der Kunde z. B. fuer 150 Karten, angelegt wurden 15.
- PayPal belastet jetzt ausschliesslich den serverseitig bestaetigten
  Auftragsbetrag (ergebnis.gross_total), nie den Client-Quote.
- Checkout wird blockiert, solange entries.length !== quantity, mit
  klarer Meldung (Extern-/Datei-/preislose Produkte ausgenommen).

Motiv: Die Option "Motiv aus unserer Auswahl" wird nur noch angezeigt,
wenn fuer das Format Motive hinterlegt sind; sonst automatisch "Ohne
Motiv". Vor dem Laden bleibt die Option sichtbar (kein Aufblitzen).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.10
2026-09-21 11:45:07 +02:00
s4luorth
aa5a0d960f Konfigurator: Freitext-Adresse nur bei Adressmodus 'freitext' senden
All checks were successful
Build & Deploy / deploy (push) Successful in 22s
Bei strukturierter Standardadresse wurde der Umschlag trotzdem mit dem
Freitext beschriftet, wenn im Freitextfeld noch Reste eines frueheren
Moduswechsels standen: das Backend (addressText) bevorzugt free_text.
free_text wird jetzt zentral in mitPlatzhaltern() normalisiert und in
Vorschau, Textpruefung und Bestellung identisch mitgeschickt.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.9
2026-09-18 12:59:56 +02:00
s4luorth
25547df815 Konfigurator: Platzhalter sicher ersetzen + Anrede kein Standard-Platzhalter
All checks were successful
Build & Deploy / deploy (push) Successful in 20s
- Standard-Platzhalter (Vorname/Nachname/Strasse/PLZ/Ort/Land) werden beim Senden
  je Empfänger explizit aufgelöst (standardWert) und mit den eigenen Platzhaltern
  in entries.placeholders geschrieben – so wird zuverlässig ersetzt (Vorschau +
  Bestellung).
- „Anrede" aus STANDARD_STRUKTUR entfernt (kein Empfängerfeld dafür) → [[Anrede]]
  ist jetzt ein frei befüllbarer eigener Platzhalter statt fälschlich als Standard.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.8
2026-09-18 12:17:21 +02:00
s4luorth
b5669ee8a3 Motiv-Freigabe: Entwurf eingepasst statt beschnitten (objectFit contain)
All checks were successful
Build & Deploy / deploy (push) Successful in 23s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.7
2026-09-18 11:47:49 +02:00
s4luorth
2386721e41 Motiv-Freigabe: öffentliche Seite /freigabe/:token (A6-Entwurf ansehen + freigeben)
All checks were successful
Build & Deploy / deploy (push) Successful in 23s
Kunde öffnet den Einmal-Link (kein Login), sieht den A6-Drucklayout-Entwurf und
gibt frei oder hinterlegt einen Änderungswunsch. API: fetchFreigabe/sendFreigabe/
freigabeLayoutUrl (öffentlich, token-gated).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.6
2026-09-18 08:05:23 +02:00
s4luorth
bad4abc945 Muster & Angebot: Vor-/Nachname getrennt, „Ort" statt „Stadt", Angebot als Seite
All checks were successful
Build & Deploy / deploy (push) Successful in 21s
- Muster bestellen + individuelles Angebot: getrennte Felder Vorname/Nachname
  (statt einem Namensfeld).
- Muster-Formular: Feld „Stadt" → „Ort".
- „Individuelles Angebot" öffnet jetzt eine eigene Seite (/angebot) statt Popup.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.5
2026-09-11 21:15:38 +02:00
s4luorth
1e90b8de09 Kundenangebote: Auswahl im Konfigurator (Aufschlaege + Name-Zusatz)
All checks were successful
Build & Deploy / deploy (push) Successful in 43s
Eingeloggte Kunden sehen ihre Angebote (customer_offers) je Produkt und waehlen eins;
Aufschlaege pro Stueck flie\u00dfen serverseitig in den Preis, Name-Zusatz + Notiz sichtbar.
Quote/Order senden jetzt den Token (auth) mit, damit die Angebote greifen.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.4
2026-09-03 12:10:23 +02:00
s4luorth
84427d8ca3 Motiv-/Datei-Upload: ueber oeffentlichen Proxy (Gaeste ohne Login)
All checks were successful
Build & Deploy / deploy (push) Successful in 45s
uploadFile schickt die Datei als Base64 an /skrift-orders/upload statt direkt an
Directus /files (das braucht einen Token, den Gaeste nicht haben).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.3
2026-09-03 10:13:45 +02:00
s4luorth
04a04d6e86 /textmenge: volle App-Breite, Vorschau ohne Scroll + Vergroessern + Bild-Download
All checks were successful
Build & Deploy / deploy (push) Successful in 41s
- Wrapper .sk-konf (Breite 1:1 wie Konfigurator/neuer Auftrag).
- Vorschau skaliert (kein Inner-Scroll), Klick oeffnet Lightbox (Vergroessern).
- Buttons 'Vergroessern' und 'Bild herunterladen' (SVG->PNG).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.2
2026-09-01 15:30:40 +02:00
s4luorth
267db7125a /textmenge: Design ueberarbeitet, eigener Vorschau-Button, einseitig
All checks were successful
Build & Deploy / deploy (push) Successful in 45s
- Eigener 'Vorschau generieren'-Button direkt unter dem Textfeld (nicht mehr am
  Vorschau-Kontingent haengend -> war der Grund, dass er nicht klickbar war).
- Checkbox 'Realistische Handschrift'.
- Einseitig: kein Seitenumbruch-Hinweis mehr.
- Mehr Layout-Abstand (nicht mehr alles oben), keine Gedankenstriche.
- Vorschau als Karte darunter mit Kugelschreiber-Optik bzw. Ueberlauf-Fehler.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.1
2026-09-01 15:19:47 +02:00
s4luorth
cf60a1aaa2 Neu: /textmenge – Textmengen-Tool (Vorschau)
All checks were successful
Build & Deploy / deploy (push) Successful in 44s
Oeffentliche Seite /textmenge: Format-/Schriftwahl, Texteingabe (Tab, gesperrte Zeichen,
[[seitenumbruch]]) und 'Vorschau generieren' -> rendert das Schriftstueck (Kugelschreiber-
Optik, bestehendes PreviewPanel); passt der Text nicht, kommt die Ueberlauf-Fehlermeldung.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v1.1.0
2026-09-01 15:01:07 +02:00
Lucas Orth
5f40d0fd5b Vorschau-Kuli in der App: identisch zu Directus (blau, 1.4, dezenter Wobble-Filter mit eindeutiger ID pro Inline-SVG), weisser Grund, PNG in natuerlicher Groesse
All checks were successful
Build & Deploy / deploy (push) Successful in 43s
v1.0.1
2026-08-24 13:45:13 +02:00
Lucas Orth
32aa0a549f Import aus Monorepo (frischer Start)
All checks were successful
Build & Deploy / deploy (push) Successful in 26s
v1.0.0
2026-08-24 12:13:54 +02:00