Kurz notiert, da ich gerade mit einem Kollegen nochmals davon hatte. Folgendes Beispiel (nur für enaio®) erzwingt die Variantierung vor dem Speichern:
let autoVariantInterceptor = {
beforeSave(instance, info, settings, saveParameter, viewer) {
return new Promise((resolve, reject) => {
fetch(`ed-api/variants/${info.typeId}/${info.id}`, { headers: { Accept: 'application/json' } })
.then(async (response) => {
var variants = await response.json();
if (info.permissions.createVariant) {
if (variants.length == 1) {
saveParameter.variant = true;
saveParameter.checkSaveStatus = false;
}
resolve();
} else {
reject("Variantierung unmöglich: Der Dokumenttyp erlaubt keine Varianten oder die persönliche Berechtigung zur Variantierung fehlt.");
}
})
.catch((error) => {
reject(error);
});
});
},
};
window.ed.registerInterceptor(autoVariantInterceptor);
Ich würde dies aber unbedingt nur dann nutzen, wenn alle anderen Entscheidungen und besseren Umsetzungsmöglichkeiten, wie unter Beim Klick auf Speichern-Button, direkt neue aktive Untervariante anlegen möglich? - #2 von rk beschrieben, wirklich ausgeschlossen sind.