Hallo,
ich versuche ein Plugin zu schreiben, welches:
- Ein Attribut zum Order-Model hinzufügt
- Ein Form-Element zu frontend/checkout/shipping_payment_core.tpl hinzufügt
- Den eingegebenen Wert in den sOrderVariables in der Session ablegt
- Den gespeicherten Wert in frontend/checkout/confirm.tpl anzeigt
- Und letzlich beim Speichern in s_order_attributes ablegt
Hört sich eigentlich nicht kompliziert an, aber ich verzweifele langsam.
Das einfachste ist erstmal geschafft:
- Mit der Installation wird das Attribut angelegt
- Die Views sind vorbereitet
Ab dann wird es komplizierter:
Mir ist kein schlauerer Weg eingefallen, als mittels einen Hooks (Shopware_Controllers_Frontend_Checkout::shippingPaymentAction::replace) die komplette Action auszutauschen, meine Request-Auswertung mit einzufügen, um den Wert in der Session zu speichern. Aber das will nicht richtig funktionieren. Der Request enthält die Daten meiner Felder nicht. Ein passendes Event (z.B. Enlight_Controller_Action_PostDispatchSecure_Frontend_Checkout) habe ich nicht ermitteln können.
Als kleines Add-on versuche ich auch noch in der ausgetauschten Action Daten aus sUserData auszulesen (die PLZ der Lieferadresse) und im o.e. View auszugeben. Auch das will nicht recht funktionieren. War blöd… Hab’s hinbekommen.
Wer kann mir hierbei auf’s Pferd helfen? Das sollte doch irgendwie einfacher gehen…
Danke schonmal,
Robert