Order Attribute mittels Plugin erstellen und im Checkout-Prozess bearbeitbar machen

Hallo,

ich versuche ein Plugin zu schreiben, welches:

  1. Ein Attribut zum Order-Model hinzufügt  Thumb-Up
  2. Ein Form-Element zu frontend/checkout/shipping_payment_core.tpl hinzufügt  Thumb-Up
  3. Den eingegebenen Wert in den sOrderVariables in der Session ablegt  Thumb-down
  4. Den gespeicherten Wert in frontend/checkout/confirm.tpl anzeigt  Thumb-down
  5. Und letzlich beim Speichern in s_order_attributes ablegt  Thumb-down

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