Postkarten-Format (nur manueller Druck): Text links, Adresse rechts
- bootstrap: render_formats a6_postkarte + dinlang_postkarte (kind 'postkarte'), passende formats-Einträge (active=false → nicht in der App, nur manueller Druck), kind-Dropdown um 'postkarte' erweitert. - skrift-orders: Vorschau erkennt Postkarten (render_formats.kind) und baut EIN Dokument mit Text + Absender + Empfänger (Marker [[pk_abs]]/[[pk_adr]]). - neuauftrag: Postkarten-Formate erkannt; Absenderfeld direkt (unabhängig von Kuverts), Kuvert-Optionen ausgeblendet, Hinweis aufs Kartenlayout. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -415,7 +415,7 @@ const collections = [
|
||||
{ collection: 'render_formats', meta: { icon: 'crop_free', note: 'Rendering-Formate (Seitengröße, Ränder, Zeilenlimit) – zentral fürs Backend.' }, fields: [
|
||||
f('key', 'string', { interface: 'input', unique: true, required: true, note: 'Technischer Schlüssel, z. B. a4, a6p, din_lang, oder ein eigener.' }),
|
||||
f('name', 'string', { interface: 'input', required: true }),
|
||||
dropdown('kind', ['brief', 'umschlag'], { default: 'brief' }),
|
||||
dropdown('kind', ['brief', 'umschlag', 'postkarte'], { default: 'brief' }),
|
||||
f('page_width_mm', 'float', { interface: 'input', required: true, note: 'Seitenbreite in mm.' }),
|
||||
f('page_height_mm', 'float', { interface: 'input', required: true, note: 'Seitenhöhe in mm.' }),
|
||||
f('margin_top_mm', 'float', { interface: 'input', default: 25 }),
|
||||
@@ -783,6 +783,9 @@ async function applySeed() {
|
||||
{ product: productByKey.briefe.id, key: 'a4', name: 'A4', active: true },
|
||||
{ product: productByKey.postkarten.id, key: 'a6_hoch', name: 'A6 Hochformat', active: true },
|
||||
{ product: productByKey.postkarten.id, key: 'a6_quer', name: 'A6 Querformat', active: true },
|
||||
// Postkarten-Layout (Text links, Adresse rechts) – NUR manueller Druck, nicht in der App.
|
||||
{ product: productByKey.postkarten.id, key: 'a6_postkarte', name: 'A6 Postkarte (Text + Adresse)', active: false, show_manual: true },
|
||||
{ product: productByKey.postkarten.id, key: 'dinlang_postkarte', name: 'DIN lang Postkarte (Text + Adresse)', active: false, show_manual: true },
|
||||
];
|
||||
for (const fmt of formats) await seedItem('formats', 'key', fmt);
|
||||
|
||||
@@ -934,6 +937,10 @@ async function applySeed() {
|
||||
{ key: 'a6l', name: 'A6 Querformat', kind: 'brief', page_width_mm: 148, page_height_mm: 105, margin_top_mm: 8, margin_left_mm: 8, margin_right_mm: 14, line_height_factor: 1.2, line_limit: 11, active: true },
|
||||
{ key: 'din_lang', name: 'DIN Lang Kuvert', kind: 'umschlag', page_width_mm: 220, page_height_mm: 110, margin_top_mm: 50, margin_left_mm: 10, line_height_factor: 1.2, active: true },
|
||||
{ key: 'c6', name: 'C6 Kuvert', kind: 'umschlag', page_width_mm: 162, page_height_mm: 114, margin_top_mm: 60, margin_left_mm: 10, line_height_factor: 1.2, active: true },
|
||||
// Postkarten (nur manueller Druck): Text links, Absender+Empfänger rechts,
|
||||
// Briefmarkenfeld oben rechts frei. Ein SVG je Karte (ein Plotter-Durchlauf).
|
||||
{ key: 'a6_postkarte', name: 'A6 Postkarte (Text + Adresse)', kind: 'postkarte', page_width_mm: 148, page_height_mm: 105, margin_top_mm: 8, margin_left_mm: 8, line_height_factor: 1.2, active: true },
|
||||
{ key: 'dinlang_postkarte', name: 'DIN lang Postkarte (Text + Adresse)', kind: 'postkarte', page_width_mm: 210, page_height_mm: 105, margin_top_mm: 8, margin_left_mm: 8, line_height_factor: 1.2, active: true },
|
||||
];
|
||||
// Upsert (nicht nur anlegen), damit falsche Alt-Maße korrigiert werden – z. B.
|
||||
// Postkarten (a6p/a6l), die sonst nicht aufs Kartenformat passen.
|
||||
|
||||
Reference in New Issue
Block a user