Ich möchte gerne die Captchafunktion für angemeldete User deaktivieren. Dazu muss ich eine Varibale im Forms-Controller in der Methode checkFields setzten. Plugin sieht wie folgt aus: public function install() { $event = $this-\>createHook( 'Shopware\_Controllers\_Frontend\_Forms', 'checkFields', 'checkCaptcha', Enlight\_Hook\_HookHandler::TypeAfter, 0 ); $this-\>subscribeHook($event); return TRUE; } function checkCaptcha(Enlight\_Hook\_HookArgs $args) { die; // wenn user eingeloggt, dann // @unset($this-\>Errors["e"]["sCaptcha"]); // und captcha block im tpl überschreiben }
Normalerweise müsste das „die“ doch den Seitenaufbau abbrechen oder nicht? Es passiert aber nichts… Wie kann ich die Variable $this->Errors überschreiben?
Wird der Hook in die Proxies geschrieben (engine/Shopware/Proxies/ShopwareControllersFrontendFormsProxy.php)?
ja, Proxie ist drin
ich sehe gerade dass die Methode checkFields() private ist. Könnte es daran liegen? Aber selbst wenn ich indexAction() nehme, passiert nichts… irgendetwas übersehe ich doch oder?