ist es möglich per Plugin abzufangen wenn ein Artikel angelegt wird (bspw über die API Schnittstelle) und diesem Artikel direkt die Laststock Option zu setzen?
Wenn ja, welcher Ansatz wäre da der richtige? Hat mir jemand einen Tipp?
danke für die Hilfe, konnte es mit get- und setPost() lösen. Mit den drei Subscribern sollte ich doch alle Änderungen/Artikelanlagen abfangen können, die über die Schnittstelle oder händisch im Backend gemacht werden?
'Enlight\_Controller\_Action\_PreDispatch\_Backend\_Article' =\> 'onArticleSave', 'Enlight\_Controller\_Action\_PreDispatch\_Api\_Articles' =\> 'onArticleSave', 'Enlight\_Controller\_Action\_PreDispatch\_Api\_Variants' =\> 'onArticleSave', (Brauche ich diesen hier für die Varianten?)
Mein Problem ist noch, dass das lastStock bei den Varianten über die API-Schnittstelle nicht aktualisiert wird, wenn ein Artikel angelegt wird… Führe ich das POST aus, wird laststock in der s_articles korrekterweise auf 1 gesetzt selbst wenn ich in dem POST ein false mitgegeben habe. Leider passiert das nicht bei den Varianten (s_articles_details).
Alternativ gibs auch den weg von ORM Events. Dort auf preUpdate listen und den Wert immer auf 1 setzen
@Shyim
Hallo,
Danke für Eure Hilfe es hat funktioniert.
Eine Frage noch: wäre es nicht besser auf preFlush zu listen? Wenn ich die Dokue richtig verstanden habe, greife ich doch dann jegliche mögliche Änderung an meinem Artikel oder an meiner Variante ab?
Das preFlush Event greift erst nach dem preUpdate Event. Wäre auch ein Weg. Wenn du allerdings vor dem Flush schon mit deinem modidizierten Objekt weiter arbeiten willst, ist preUpdate besser.