# addArticle:Zugriff auf View() von replace-Hook-Handler aus

**URL:** <https://forum.shopware.com/t/addarticle-zugriff-auf-view-von-replace-hook-handler-aus/21653>\
**Category:** Shopware 3.5\
**Tags:** programming\
**Created:** [31. Juli 2014 um 18:28 UTC](https://forum.shopware.com/t/addarticle-zugriff-auf-view-von-replace-hook-handler-aus/21653 "2014-07-31T18:28:10Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![minkis](https://avatars.discourse-cdn.com/v4/letter/m/45deac/32.png) [@minkis](https://forum.shopware.com/u/minkis)\
**Post date:** [31. Juli 2014 um 18:28 UTC](https://forum.shopware.com/t/addarticle-zugriff-auf-view-von-replace-hook-handler-aus/21653/1 "2014-07-31T18:28:10Z")

</div>

Hallihallo, Ursprüngliches Ziel: Artikel nur unter bestimmten Bedingungen dem Warenkorb hinzufügen, sonst nicht --\> dann Fehlermeldung ausgeben an der Stelle wo sonst "Artikel dem Warenkorb hinzugefügt steht). Bisherige Lösung (vereinfacht! funktioniert bis auf die gewünschte Fehlermeldung): $this-\>subscribeEvent( ‚sBasket::sAddArticle::replace‘, ‚onBasket\_AddArticle\_replace‘ ); public function onBasket\_AddArticle\_replace(Enlight\_Hook\_HookArgs $arguments){ //schauen obs okay ist und Ergebnis in die Variable $is\_okay schreiben… if(!$is\_okay){ $sErrorMessages = ‚Fehler!‘; $return=array(„sErrorFlag“ =\> true, „sErrorMessages“ =\> $sErrorMessages); $arguments-\>setReturn($return); } if($is\_okay){ $arguments-\>setReturn($arguments-\>getSubject()-\>executeParent( $arguments-\>getMethod(), $arguments-\>getArgs() ) ); } Funktioniert soweit, nur dass dieses doofe Ajax-Formular mir immer noch sagt „Artikel erfolgreich hinzugefügt“ obwohl der gar nicht hinzugefügt wird. Ich würde gerne die Template-Variable sBasketInfo ausnutzen um eine Fehlermeldung zu hinterlegen: Dafür müsste ich die jedoch füllen können! Wie komme ich denn aus so einer Replace-Methode überhaupt an den aktuellen View() dran? Der Controller (Checkout, Methode addArticle) kann da natürlich leicht drauf zugreifen, aber die überschriebene Methode (sBasket-\>sAddArticle) hat da ja selber auch keinen Zugriff drauf und so bietet sich mir kein vernünftiger Ansatzpunkt ohne jetzt das halbe Shopware hier zu „replacen“. Jemand Ideen? DANKE! Ich habe Shopware 4.1.3 und möchte auch grad nicht updaten, weil ich die Arbeit (meine ganzen replace-Hooks anzupassen) grad fürchte 🙂
