From 840996fce9f09cbb1139b6a7732e33295b83351e Mon Sep 17 00:00:00 2001 From: admin Date: Fri, 5 Jun 2026 21:39:08 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20'Speichern=20&=20=C3=BCbersetzen'=20im?= =?UTF-8?q?=20Edit-Formular?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Neuer Button im EditPairForm: speichert das Pair und öffnet direkt das Übersetzen-&-Prüfen-Modal (handleSave({translateAfter}) → onSavedAndTranslate → handleTranslate). Bestehender Speichern-Button unverändert. Co-Authored-By: Claude Opus 4.8 --- src/pages/ContentCreation.jsx | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/pages/ContentCreation.jsx b/src/pages/ContentCreation.jsx index 1a682a4..68f542c 100644 --- a/src/pages/ContentCreation.jsx +++ b/src/pages/ContentCreation.jsx @@ -465,7 +465,7 @@ function PairForm({ objectId, allObjects, onPairSaved }) { // ─── EditPairForm ───────────────────────────────────────────────────────────── -function EditPairForm({ pair, allObjects, onSaved, onCancel, onDeleted }) { +function EditPairForm({ pair, allObjects, onSaved, onCancel, onDeleted, onSavedAndTranslate }) { const lang = getUserLang(); const [loading, setLoading] = useState(true); const [saving, setSaving] = useState(false); @@ -592,7 +592,7 @@ function EditPairForm({ pair, allObjects, onSaved, onCancel, onDeleted }) { finally { setCreatingWord(false); } } - async function handleSave() { + async function handleSave({ translateAfter = false } = {}) { setSaving(true); try { const ph = t => withPlaceholders(t, wordMap, objectAssignments); @@ -646,7 +646,8 @@ function EditPairForm({ pair, allObjects, onSaved, onCancel, onDeleted }) { if (pair.answer_type !== type) patchPair.answer_type = type; if (pair.status !== pairStatus) patchPair.status = pairStatus; if (Object.keys(patchPair).length) await apiPatch('/pairs', pair.id, patchPair); - onSaved(); + if (translateAfter && onSavedAndTranslate) onSavedAndTranslate({ ...pair, answer_type: type }); + else onSaved(); } catch (e) { alert('Fehler: ' + e.message); } finally { setSaving(false); } } @@ -837,10 +838,17 @@ function EditPairForm({ pair, allObjects, onSaved, onCancel, onDeleted }) {
-
+ {onSavedAndTranslate && ( + + )} {!confirmDelete ? (