assignValues4x hat keine $args mehr?

Hallo Forum,

ich habe einen Shop von Version 5.4 auf 5.5.6 geupdatet. Nun streikt ein Plugin welches beim erstellen der Pickliste im PDF noch Daten hinzufügen soll.

Das Plugin ist über einen Hook wie folgt eingebunden:

    public static function getSubscribedEvents() {
        return array_merge(
            parent::getSubscribedEvents(),
            [
            'Shopware_Components_Document::assignValues4x::after' => 'preparePickList'
            ]
        );
    }

Und so sieht die Funktion aus:

    public function preparePickList(Enlight_Event_EventArgs $args) {
        $document = $args->get('class');
        $reflClass = new ReflectionClass($document);

Leider fliegt er schon bei der 2. Zeile raus und meldet:

[2019-02-06 13:36:18] core.CRITICAL: Class does not exist [] {"uid":"6abebf8"}

Es scheint irgendwie als wäre $args leer… kann das sein?

Jemand eine Idee was hier falsch laufen kann? Andere Hooks des Plugins funktionieren weiterhin problemlos…

Vielen Dank schonmal!

Thomas

Ich hatte auch schonmal versucht das Beispiel in diesem Thread genau nachzubauen, hat aber auch nicht funktioniert: https://forum.shopware.com/discussion/50157/zwei-verschiedene-waehrungen-auf-derselben-rechnung

Wieder das gleiche Problem, $args scheint leer zu sein.

Also scheinbar ist $args nicht leer, aber der Zugriff “$args->get(‘class’);” liefert keinen Returnwert… warum?

Ich habe nun statt

$args->get('class');

das hier gemacht:

$document = $args->getReturn();

-> Das scheint zu funktionieren. Kann mich jetzt noch jemand vielleicht erleuchten was hier schief gelaufen ist, und warum get(‚class‘) nicht mehr funktioniert, getReturn() aber schon?