Der Bereich Shopware Labs ist die Plattform für alle Entwickler. Hier findet man technische Dokumentationen und zahlreiche Tipps und Tricks rund um das Thema Programmieren. In dieser Rubrik stellen außerdem die Entwickler der shopware AG neue und experimentelle Lösungsansätze vor. Neue Funktionen, die in dieser Rubrik bereitgestellt werden, sind teilweise auch für zukünftige Releases geplant. Die Funktionen können dann ohne Programmierkenntnisse zukünftig direkt im Shopware Backend konfiguriert werden oder werden über Plugins bereitgestellt. Informationen über neue, geplante Funktionen finden Sie in unserer Roadmap.
Bitte beachten Sie, dass die hier bereitgestellten Lösungsansätze nicht offiziell supportet werden und nur eingebaut werden sollten, sofern Sie über das entsprechende, technische Wissen verfügen.
Event Übersicht 3.5.0
0 KommentareInhaltsverzeichnis
- 1 Einführung
- 1.1 Beispiele für Controller-Events
- 1.1.1 Eigener Code soll bei jedem Frontend-Controller ausgeführt werden
- 1.1.2 Eigener Code soll generell im Detail - Controller ausgeführt werden
- 1.1.3 Neue Action im Detail-Controller hinzufügen / Eine vorhandene Action ersetzen
- 1.1.4 Eigener Code soll auf der Backend-Startseite ausgeführt werden
- 1.2 System - Events (Sortiert nach Ausführung)
- 1.2.1 Enlight_Controller_Front_StartDispatch
- 1.2.2 Enlight_Controller_Front_RouteStartup
- 1.2.3 Enlight_Controller_Router_Route
- 1.2.4 Enlight_Controller_Router_FilterRouteParams
- 1.2.5 Enlight_Controller_Router_PreAssemble
- 1.2.6 Enlight_Controller_Router_FilterAssembleParams
- 1.2.7 Enlight_Controller_Router_Assemble
- 1.2.8 Enlight_Controller_Router_FilterUrl
- 1.2.9 Enlight_Controller_Front_RouteShutdown
- 1.2.10 Enlight_Controller_Front_DispatchLoopStartup
- 1.2.11 Enlight_Controller_Front_PreDispatch
- 1.2.12 Enlight_Controller_Action_Init
- 1.2.13 Enlight_Controller_Action_Init_*
- 1.2.14 Enlight_Controller_Action_PreDispatch
- 1.2.15 Enlight_Controller_Action_PreDispatch_*
- 1.2.16 Enlight_Controller_Action_PostDispatch
- 1.2.17 Enlight_Controller_Action_PostDispatch_*
- 1.2.18 Enlight_Plugins_ViewRenderer_PreRender
- 1.2.19 Enlight_Plugins_ViewRenderer_FilterRender
- 1.2.20 Enlight_Plugins_ViewRenderer_PostRender
- 1.2.21 Enlight_Controller_Front_PostDispatch (Wird nach jedem Dispatch aufgerufen)
- 1.2.22 Enlight_Controller_Front_DispatchLoopShutdown (Wird nur einmal je Request aufgerufen)
- 1.2.23 Enlight_Controller_Front_SendResponse
- 1.2.24 Enlight_Controller_Front_AfterSendResponse
- 1.2.25 Enlight_Bootstrap_InitResource_*
- 1.2.26 Enlight_Bootstrap_AfterInitResource_*
- 1.3 Core - Events
- 1.3.1 sArticles.php
- 1.3.1.1 Shopware_Modules_Articles_sGetArticlesByCategory_Start
- 1.3.1.2 Shopware_Modules_Articles_sGetArticlesByCategory_FilterSql
- 1.3.1.3 Shopware_Modules_Articles_sGetArticlesByCategory_FilterLoopStart
- 1.3.1.4 Shopware_Modules_Articles_sGetArticlesByCategory_FilterLoopEnd
- 1.3.1.5 Shopware_Modules_Articles_sGetArticlesByCategory_FilterResult
- 1.3.1.6 Shopware_Modules_Articles_GetArticleById_FilterSQL
- 1.3.1.7 Shopware_Modules_Articles_GetArticleById_FilterArticle
- 1.3.1.8 Shopware_Modules_Articles_GetArticleById_FilterSqlVariants
- 1.3.1.9 Shopware_Modules_Articles_GetArticleById_FilterVariants
- 1.3.1.10 Shopware_Modules_Articles_GetArticleById_FilterResult
- 1.3.1.11 Shopware_Modules_Articles_GetPromotionById_Start
- 1.3.1.12 Shopware_Modules_Articles_GetPromotionById_FilterSqlRandom
- 1.3.1.13 Shopware_Modules_Articles_GetPromotionById_FilterSqlNew
- 1.3.1.14 Shopware_Modules_Articles_GetPromotionById_FilterSqlTop
- 1.3.1.15 Shopware_Modules_Articles_GetPromotionById_FilterGfx
- 1.3.1.16 Shopware_Modules_Articles_GetPromotionById_FilterSqlPremium
- 1.3.1.17 Shopware_Modules_Articles_GetPromotionById_FilterSql
- 1.3.1.18 Shopware_Modules_Articles_GetPromotionById_FilterResult
- 1.3.1.19 Shopware_Modules_Articles_GetArticlePictures_Start
- 1.3.1.20 Shopware_Modules_Articles_GetArticlePictures_FilterResult
- 1.3.1.21 Shopware_Modules_Articles_GetPromotions_FilterSQL
- 1.3.1.22 Shopware_Modules_Articles_GetPromotions_FilterResult
- 1.3.2 sAdmin.php
- 1.3.2.1 Shopware_Modules_Admin_Logout_Start
- 1.3.2.2 Shopware_Modules_Admin_CheckTaxID_MessagesFilter
- 1.3.2.3 Shopware_Modules_Admin_GetPaymentMeanById_DataFilter
- 1.3.2.4 Shopware_Modules_Admin_GetPaymentMeans_DataFilter
- 1.3.2.5 Shopware_Modules_Admin_UpdateBilling_FilterSql
- 1.3.2.6 Shopware_Modules_Admin_UpdateShipping_FilterSql
- 1.3.2.7 Shopware_Modules_Admin_UpdatePayment_FilterSql
- 1.3.2.8 Shopware_Modules_Admin_UpdateAccount_FilterPasswordSql
- 1.3.2.9 Shopware_Modules_Admin_UpdateAccount_FilterEmailSql
- 1.3.2.10 Shopware_Modules_Admin_ValidateStep2_FilterStart
- 1.3.2.11 Shopware_Modules_Admin_ValidateStep2_FilterResult
- 1.3.2.12 Shopware_Modules_Admin_ValidateStep2Shipping_FilterResult
- 1.3.2.13 Shopware_Modules_Admin_ValidateStep1_FilterResult
- 1.3.2.14 Shopware_Modules_Admin_Login_Start
- 1.3.2.15 Shopware_Modules_Admin_Login_Successful
- 1.3.2.16 Shopware_Modules_Admin_Login_Failure
- 1.3.2.17 Shopware_Modules_Admin_Login_FilterResult
- 1.3.2.18 Shopware_Modules_Admin_CheckUser_Start
- 1.3.2.19 Shopware_Modules_Admin_CheckUser_FilterGetUser
- 1.3.2.20 Shopware_Modules_Admin_CheckUser_Successful
- 1.3.2.21 Shopware_Modules_Admin_CheckUser_Failure
- 1.3.2.22 Shopware_Modules_Admin_GetCountries_FilterResult
- 1.3.2.23 Shopware_Modules_Admin_SaveRegisterMainData_FilterSql
- 1.3.2.24 Shopware_Modules_Admin_SaveRegisterMainData_Return
- 1.3.2.25 Shopware_Modules_Admin_SaveRegisterBilling_FilterSql
- 1.3.2.26 Shopware_Modules_Admin_SaveRegisterBilling_Return
- 1.3.2.27 Shopware_Modules_Admin_SaveRegisterShipping_FilterSql
- 1.3.2.28 Shopware_Modules_Admin_SaveRegisterShipping_Return
- 1.3.2.29 Shopware_Modules_Admin_SaveRegisterSendConfirmation_Start
- 1.3.2.30 Shopware_Modules_Admin_SaveRegisterSendConfirmation_BeforeSend
- 1.3.2.31 Shopware_Modules_Admin_SaveRegister_Start
- 1.3.2.32 Shopware_Modules_Admin_SaveRegister_FilterNeededFields
- 1.3.2.33 Shopware_Modules_Admin_SaveRegister_FilterErrors
- 1.3.2.34 Shopware_Modules_Admin_SaveRegister_GetCustomerNumber
- 1.3.2.35 Shopware_Modules_Admin_GetDownloads_FilterResult
- 1.3.2.36 Shopware_Modules_Admin_GetOpenOrderData_FilterResult
- 1.3.2.37 Shopware_Modules_Admin_GetUserData_Start
- 1.3.2.38 Shopware_Modules_Admin_GetUserData_FilterResult
- 1.3.3 sBasket.php
- 1.3.3.1 Shopware_Modules_Basket_AddVoucher_Start
- 1.3.3.2 Shopware_Modules_Basket_AddVoucher_FilterSql
- 1.3.3.3 Shopware_Modules_Basket_GetBasket_FilterSQL
- 1.3.3.4 Shopware_Modules_Basket_GetBasket_FilterItemStart
- 1.3.3.5 Shopware_Modules_Basket_GetBasket_FilterItemEnd
- 1.3.3.6 Shopware_Modules_Basket_GetBasket_FilterResult
- 1.3.3.7 Shopware_Modules_Basket_UpdateArticle_Start
- 1.3.3.8 Shopware_Modules_Basket_UpdateArticle_FilterSqlDefault
- 1.3.3.9 Shopware_Modules_Basket_UpdateArticle_FilterSqlConfigurator
- 1.3.3.10 Shopware_Modules_Basket_AddArticle_Start
- 1.3.3.11 Shopware_Modules_Basket_AddArticle_FilterSql
- 1.3.4 sOrder.php
- 1.3.4.1 Shopware_Modules_Order_GetOrdernumber_FilterOrdernumber
- 1.3.4.2 Shopware_Modules_Order_SaveOrder_FilterSQL
- 1.3.4.3 Shopware_Modules_Order_SaveOrder_FilterDetailsSQL
- 1.3.4.4 Shopware_Modules_Order_SaveOrder_ProcessDetails
- 1.3.4.5 Shopware_Modules_Order_SendMail_FilterVariables
- 1.3.4.6 Shopware_Modules_Order_SendMail_BeforeSend
- 1.3.4.7 Shopware_Modules_Order_SaveBilling_FilterSQL
- 1.3.4.8 Shopware_Modules_Order_SaveBilling_FilterSQL
- 1.3.4.9 Shopware_Modules_Order_SaveBilling_FilterSQL
- 1.3.4.10 Shopware_Modules_Order_SaveShipping_FilterArray
- 1.3.5 /Controllers/Frontend/Register.php
- 1.3.5.1 Shopware_Controllers_Frontend_Register_validatePersonal_FilterRules
- 1.3.5.2 Shopware_Controllers_Frontend_Register_validateBilling_FilterRules
- 1.3.5.3 Shopware_Controllers_Frontend_Register_validateShipping_FilterRules
- 1.4 Event Typen
- 1.4.1 Notify
- 1.4.2 Notify-Until
- 1.4.3 Notify-Filter
- 1.5 Event Listener Methoden Argumente
- 1.6 Unterschied Events / Hooks
- 1.7 Event-Vorschläge
Einführung
In diesem Wiki-Artikel finden Sie eine vollständige Liste, aller in Shopware definierter Standard-Events.
Beispiele für Controller-Events
Mit dem Shopware Event-System können Sie Ihre Anpassungen flexibel in jeden Controller und jede Controller-Action integrieren.
Formaler-Aufbau für Pre- und Post-Dispatch Events auf Controller-Ebene:
(Die Parameter CONTROLLER und ACTIONNAME sind optional!)
Post-Dispatch (Nach Ausführung): Enlight_Controller_Action_PostDispatch_MODULE_CONTROLLER_ACTIONNAME
Pre-Dispatch (Vor Ausführung): Enlight_Controller_Action_PreDispatch_MODULE_CONTROLLER_ACTIONNAME
Eigener Code soll bei jedem Frontend-Controller ausgeführt werden
public function install() { $event = $this->createEvent( 'Enlight_Controller_Action_PostDispatch', 'onTest' ); $this->subscribeEvent($event); } public static function onTest(Enlight_Event_EventArgs $args) { $request = $args->getSubject()->Request(); $response = $args->getSubject()->Response(); $view = $args->getSubject()->View(); if(!$request->isDispatched() // Nur wenn es kein Forward / keine Weiterleitung gibt || $response->isException() // Kein Fehler wurde vorher geworfen || $request->getModuleName() != 'frontend') { // Nur bei einem Frontend-Controller return; } $view->foo = "bar"; }
Eigener Code soll generell im Detail - Controller ausgeführt werden
public function install() { $event = $this->createEvent( 'Enlight_Controller_Action_PostDispatch_Frontend_Detail', 'onTest' ); $this->subscribeEvent($event); } public static function onTest(Enlight_Event_EventArgs $args) { $request = $args->getSubject()->Request(); $response = $args->getSubject()->Response(); $view = $args->getSubject()->View(); $view->foo = "bar"; }
Neue Action im Detail-Controller hinzufügen / Eine vorhandene Action ersetzen
public function install() { $event = $this->createEvent( 'Enlight_Controller_Action_Frontend_Detail_Index', 'onTest' ); $this->subscribeEvent($event); } public static function onTest(Enlight_Event_EventArgs $args) { $request = $args->getSubject()->Request(); $response = $args->getSubject()->Response(); $view = $args->getSubject()->View(); $view->foo = "bar"; return false; // Action gefunden / Orginale Action nicht ausführen }
Eigener Code soll auf der Backend-Startseite ausgeführt werden
public function install() { $event = $this->createEvent( 'Enlight_Controller_Action_PostDispatch_Backend_Index', 'onTest' ); $this->subscribeEvent($event); } public static function onTest(Enlight_Event_EventArgs $args) { $request = $args->getSubject()->Request(); $response = $args->getSubject()->Response(); $view = $args->getSubject()->View(); $view->foo = "bar"; }
System - Events (Sortiert nach Ausführung)
Enlight_Controller_Front_StartDispatch
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 26
Kurzbeschreibung: Hier kann man z.B. manuell den Router, Dispatcher, Request und das Response-Objekt setzen.
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_StartDispatch', array('subject'=>$this));
Enlight_Controller_Front_RouteStartup
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 42
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_RouteStartup', array('subject'=>$this));
Enlight_Controller_Router_Route
Definition:
Enlight()->Events()->notifyUntil('Enlight_Controller_Router_Route', array('subject'=>$this, 'request'=>$request));
Enlight_Controller_Router_FilterRouteParams
Definition:
Enlight()->Events()->filter('Enlight_Controller_Router_FilterRouteParams', $params);
Enlight_Controller_Router_PreAssemble
Definition:
Enlight()->Events()->notify('Enlight_Controller_Router_PreAssemble', array('subject'=>$this, 'request'=>$request));
Enlight_Controller_Router_FilterAssembleParams
Definition:
$params = Enlight()->Events()->filter('Enlight_Controller_Router_FilterAssembleParams', $params, array('subject'=>$this, 'request'=>$request));
Enlight_Controller_Router_Assemble
Definition:
Enlight()->Events()->notifyUntil('Enlight_Controller_Router_Assemble', array('subject'=>$this, 'params'=>$params, 'userParams'=>$userParams));
Enlight_Controller_Router_FilterUrl
Definition:
$url = Enlight()->Events()->filter('Enlight_Controller_Router_FilterUrl', $url, array('subject'=>$this, 'params'=>$params, 'userParams'=>$userParams));
Enlight_Controller_Front_RouteShutdown
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 56
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_RouteShutdown', array('subject'=>$this, 'request'=>$this->Request()));
Enlight_Controller_Front_DispatchLoopStartup
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 61
Kurzbeschreibung: Hier kann man z.B. den Controller/Action vor dem Dispatch noch modifizieren (Wird nur einmal aufgrufen)
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_DispatchLoopStartup', array('subject'=>$this, 'request'=>$this->Request()));
Enlight_Controller_Front_PreDispatch
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 75
Kurzbeschreibung: Hier kann man z.B. verhindern das Actions ohne Autorisierung aufgerufen werden und auf einen anderen Controller umleiten (Wird vor jeder Dispatch-Runde aufgerufen).
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_PreDispatch', array('subject'=>$this, 'request'=>$this->Request()));
Enlight_Controller_Action_Init
Definiert in: /engine/Enlight/Enlight/Controller/Action.php Zeile 27
Definition:
Enlight()->Events()->notify(__CLASS__.'_Init', array('subject'=>$this, 'request'=>$this->Request(), 'response'=>$this->Response()));
Enlight_Controller_Action_Init_*
* = Controller-Name z.B. Checkout
Definiert in: /engine/Enlight/Enlight/Controller/Action.php Zeile 28
Definition:
Enlight()->Events()->notify(__CLASS__.'_Init_'.$this->controller_name, array('subject'=>$this, 'request'=>$this->Request(), 'response'=>$this->Response()));
Enlight_Controller_Action_PreDispatch
Definiert in: /engine/Enlight/Enlight/Controller/Action.php Zeile 45
Definition:
Enlight()->Events()->notify(__CLASS__.'_PreDispatch', array('subject'=>$this,'request'=>$this->Request()));
Enlight_Controller_Action_PreDispatch_*
* = Controller-Name z.B. Checkout
Definiert in: /engine/Enlight/Enlight/Controller/Action.php Zeile 46
Definition:
Enlight()->Events()->notify(__CLASS__.'_PreDispatch_'.$this->controller_name, array('subject'=>$this, 'request'=>$this->Request()));
Enlight_Controller_Action_PostDispatch
Definiert in: /engine/Enlight/Enlight/Controller/Action.php Zeile 61
Definition:
Enlight()->Events()->notify(__CLASS__.'_PostDispatch_'.$this->controller_name, array('subject'=>$this, 'request'=>$this->Request()));
Enlight_Controller_Action_PostDispatch_*
* = Controller-Name z.B. Checkout
Definiert in: /engine/Enlight/Enlight/Controller/Action.php Zeile 62
Definition:
Enlight()->Events()->notify(__CLASS__.'_PostDispatch', array('subject'=>$this,'request'=>$this->Request()));
Enlight_Plugins_ViewRenderer_PreRender
Definiert in: /engine/Enlight/Enlight/Controller/Plugins/ViewRenderer/Bootstrap.php Zeile 87
Definition:
Enlight()->Events()->notify('Enlight_Plugins_ViewRenderer_PreRender', array('subject'=>$this, 'template'=>$template));
Enlight_Plugins_ViewRenderer_FilterRender
Definiert in: /engine/Enlight/Enlight/Controller/Plugins/ViewRenderer/Bootstrap.php Zeile 89
Definition:
$render = $this->View()->render($template); $render = Enlight()->Events()->filter('Enlight_Plugins_ViewRenderer_FilterRender', $render, array('subject'=>$this, 'template'=>$template));
Enlight_Plugins_ViewRenderer_PostRender
Definiert in: /engine/Enlight/Enlight/Controller/Plugins/ViewRenderer/Bootstrap.php Zeile 98
Definition:
Enlight()->Events()->notify('Enlight_Plugins_ViewRenderer_PostRender', array('subject'=>$this));
Enlight_Controller_Front_PostDispatch (Wird nach jedem Dispatch aufgerufen)
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 106
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_PostDispatch', array('subject'=>$this, 'request'=>$this->Request()));
Enlight_Controller_Front_DispatchLoopShutdown (Wird nur einmal je Request aufgerufen)
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 120
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_DispatchLoopShutdown', array('subject'=>$this));
Enlight_Controller_Front_SendResponse
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 132
Definition:
if(!Enlight()->Events()->notifyUntil('Enlight_Controller_Front_SendResponse', array('subject'=>$this, 'response'=>$this->Response(), 'request'=>$this->Request()))) { $this->Response()->sendResponse(); }
Enlight_Controller_Front_AfterSendResponse
Definiert in: /engine/Enlight/Enlight/Controller/Front.php Zeile 137
Definition:
Enlight()->Events()->notify('Enlight_Controller_Front_AfterSendResponse', array('subject'=>$this, 'request'=>$this->Request()));
Enlight_Bootstrap_InitResource_*
Definiert in: /engine/Enlight/Enlight/Bootstrap.php Zeile 96
Definition:
$this->resource_status[$name] = self::StatusBootstrap; if($event = Enlight()->Events()->notifyUntil('Enlight_Bootstrap_InitResource_'.$name, array('subject'=>$this))) { $this->resource_list[$name] = $event->getReturn(); } elseif(method_exists($this, 'init'.$name)) { $this->resource_list[$name] = call_user_func(array($this, 'init'.$name)); }
Enlight_Bootstrap_AfterInitResource_*
* = Name der Ressource
Definiert in: /engine/Enlight/Enlight/Bootstrap.php Zeile 101
Definition:
Enlight()->Events()->notify('Enlight_Bootstrap_AfterInitResource_'.$name, array('subject'=>$this));
Core - Events
sArticles.php
Shopware_Modules_Articles_sGetArticlesByCategory_Start
Funktion: sGetArticlesByCategory, Zeile 719
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Articles_sGetArticlesByCategory_Start', array('subject'=>$this,'id'=>$id,'blog'=>$blog,'limit'=>$limit))){ return false; }
Shopware_Modules_Articles_sGetArticlesByCategory_FilterSql
Funktion: sGetArticlesByCategory, Zeile 1066
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Articles_sGetArticlesByCategory_FilterSql', $sql, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sCategory']));
Shopware_Modules_Articles_sGetArticlesByCategory_FilterLoopStart
Funktion: sGetArticlesByCategory, Zeile 1220
Definition:
$articles[$articleKey] = Enlight()->Events()->filter('Shopware_Modules_Articles_sGetArticlesByCategory_FilterLoopStart', $articles[$articleKey], array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sCategory']));
Shopware_Modules_Articles_sGetArticlesByCategory_FilterLoopEnd
Funktion: sGetArticlesByCategory, Zeile 1323
Definition:
$articles[$articleKey] = Enlight()->Events()->filter('Shopware_Modules_Articles_sGetArticlesByCategory_FilterLoopEnd', $articles[$articleKey], array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sCategory']));
Shopware_Modules_Articles_sGetArticlesByCategory_FilterResult
Funktion: sGetArticlesByCategory, Zeile 1384
Definition:
$result = Enlight()->Events()->filter('Shopware_Modules_Articles_sGetArticlesByCategory_FilterResult', $result, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sCategory']));
Shopware_Modules_Articles_GetArticleById_FilterSQL
Funktion: sGetArticleById, Zeile 2650
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetArticleById_FilterSQL', $sql, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sArticle'],'isBlog'=>$isBlog,'customergroup'=>$this->sSYSTEM->sUSERGROUP));
Shopware_Modules_Articles_GetArticleById_FilterArticle
Funktion: sGetArticleById, Zeile 2694
Definition:
$getArticle = Enlight()->Events()->filter('Shopware_Modules_Articles_GetArticleById_FilterArticle', $getArticle, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sArticle'],'isBlog'=>$isBlog,'customergroup'=>$this->sSYSTEM->sUSERGROUP));
Shopware_Modules_Articles_GetArticleById_FilterSqlVariants
Funktion: sGetArticleById, Zeile 2883
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetArticleById_FilterSqlVariants', $sql, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sArticle'],'isBlog'=>$isBlog,'customergroup'=>$this->sSYSTEM->sUSERGROUP));
Shopware_Modules_Articles_GetArticleById_FilterVariants
Funktion: sGetArticleById, Zeile 2889
Definition:
$getArticleVariants = Enlight()->Events()->filter('Shopware_Modules_Articles_GetArticleById_FilterVariants', $getArticleVariants, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sArticle'],'isBlog'=>$isBlog,'customergroup'=>$this->sSYSTEM->sUSERGROUP));
Shopware_Modules_Articles_GetArticleById_FilterResult
Funktion: sGetArticleById, Zeile 3265
Definition:
$getArticle = Enlight()->Events()->filter('Shopware_Modules_Articles_GetArticleById_FilterResult', $getArticle, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sArticle'],'isBlog'=>$isBlog,'customergroup'=>$this->sSYSTEM->sUSERGROUP));
Shopware_Modules_Articles_GetPromotionById_Start
Funktion: sGetPromotionById, Zeile 3364
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Articles_GetPromotionById_Start', array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value))){ return false; }
Shopware_Modules_Articles_GetPromotionById_FilterSqlRandom
Funktion: sGetPromotionById, Zeile 3391
Definition:
$sql = "SELECT a.id as articleID FROM s_articles a $categoryFrom WHERE a.active=1 AND a.mode = 0 $categorySQL ORDER BY rand()"; $sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotionById_FilterSqlRandom', $sql, array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value));
Shopware_Modules_Articles_GetPromotionById_FilterSqlNew
Funktion: sGetPromotionById, Zeile 3424
Definition:
$sql = "SELECT a.id as articleID FROM s_articles a $categoryFrom WHERE a.mode=0 AND a.active=1 AND datum={$results["date"]} $categorySQL $cacheSQL LIMIT $randLimit,1"; $sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotionById_FilterSqlNew', $sql, array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value));
Shopware_Modules_Articles_GetPromotionById_FilterSqlTop
Funktion: sGetPromotionById, Zeile 3442
Definition:
$sql = " SELECT od.articleID FROM s_order as o, s_order_details od, s_articles a $categoryFrom WHERE o.ordertime>DATE_SUB(NOW(),INTERVAL $promotionTime DAY) AND o.id=od.orderID AND od.modus=0 AND od.articleID=a.id AND a.active=1 $categorySQL $cacheSQL GROUP BY od.articleID ORDER BY COUNT(od.articleID) DESC"; $sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotionById_FilterSqlTop', $sql, array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value));
Shopware_Modules_Articles_GetPromotionById_FilterGfx
Funktion: sGetPromotionById, Zeile 3457
Definition:
$rs = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotionById_FilterGfx', $rs, array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value));
Shopware_Modules_Articles_GetPromotionById_FilterSqlPremium
Funktion: sGetPromotionById, Zeile 3485
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotionById_FilterSqlPremium', $sql, array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value));
Shopware_Modules_Articles_GetPromotionById_FilterSql
Funktion: sGetPromotionById, Zeile 3553
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotionById_FilterSql', $sql, array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value));
Shopware_Modules_Articles_GetPromotionById_FilterResult
Funktion: sGetPromotionById, Zeile 3677
Definition:
$getPromotionResult = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotionById_FilterResult', $getPromotionResult, array('subject'=>$this,'mode'=>$mode,'category'=>$category,'value'=>$value));
Shopware_Modules_Articles_GetArticlePictures_Start
Funktion: sGetArticlePictures, Zeile 3716
Definition:
Enlight()->Events()->notify('Shopware_Modules_Articles_GetArticlePictures_Start',array('subject'=>$this,'id'=>$sArticleID));
Shopware_Modules_Articles_GetArticlePictures_FilterResult
Funktion: sGetArticlePictures, Zeile 3795
Definition:
$result = Enlight()->Events()->filter('Shopware_Modules_Articles_GetArticlePictures_FilterResult', $result, array('subject'=>$this,'id'=>$sArticleID));
Shopware_Modules_Articles_GetPromotions_FilterSQL
Funktion: sGetPromotions, Zeile 3973
Definition:
$sql = "SELECT category,mode, TRIM(ordernumber) as ordernumber, link, description, link_target, img, liveshoppingID FROM s_emarketing_promotions WHERE category=$category AND ((TO_DAYS(valid_from) <= TO_DAYS('$sToday') AND TO_DAYS(valid_to) >= TO_DAYS('$sToday')) OR (valid_from='0000-00-00' AND valid_to='0000-00-00')) ORDER BY position ASC "; $sql = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotions_FilterSQL', $sql, array('subject'=>$this,'category'=>$category));
Shopware_Modules_Articles_GetPromotions_FilterResult
Funktion: sGetPromotions, Zeile 4029
Definition:
$promote = Enlight()->Events()->filter('Shopware_Modules_Articles_GetPromotions_FilterResult', $promote, array('subject'=>$this,'category'=>$category));
sAdmin.php
Shopware_Modules_Admin_Logout_Start
Funktion: sLogout, Zeile 26
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Admin_Logout_Start', array('subject'=>$this))){ return false; }
Shopware_Modules_Admin_CheckTaxID_MessagesFilter
Funktion: sValidateVat, Zeile 166
Definition:
$messages = Enlight()->Events()->filter('Shopware_Modules_Admin_CheckTaxID_MessagesFilter', $messages, array('subject'=>$this,"post"=>$this->sSYSTEM->_POST));
Shopware_Modules_Admin_GetPaymentMeanById_DataFilter
Funktion: sGetPaymentMeanById, Zeile 337
Definition:
$data = Enlight()->Events()->filter('Shopware_Modules_Admin_GetPaymentMeanById_DataFilter', $data, array('subject'=>$this,"id"=>$id,"user"=>$user));
Shopware_Modules_Admin_GetPaymentMeans_DataFilter
Funktion: sGetPaymentMeanById, Zeile 433
Definition:
$data = Enlight()->Events()->filter('Shopware_Modules_Admin_GetPaymentMeans_DataFilter', $data, array('subject'=>$this));
Shopware_Modules_Admin_UpdateBilling_FilterSql
Funktion: sUpdateBilling, Zeile 553
Definition:
list($data,$where) = Enlight()->Events()->filter('Shopware_Modules_Admin_UpdateBilling_FilterSql', array($data,$where), array('subject'=>$this,"id"=>$this->sSYSTEM->_SESSION['sUserId'],"user"=>$userObject));
Shopware_Modules_Admin_UpdateShipping_FilterSql
Funktion: sUpdateShipping, Zeile 698
Definition:
list($data,$where) = Enlight()->Events()->filter('Shopware_Modules_Admin_UpdateShipping_FilterSql', array($data,$where), array('subject'=>$this,"id"=>$this->sSYSTEM->_SESSION['sUserId'],"user"=>$userObject));
Shopware_Modules_Admin_UpdatePayment_FilterSql
Funktion: sUpdatePayment, Zeile 732
Definition:
$sqlPayment = Enlight()->Events()->filter('Shopware_Modules_Admin_UpdatePayment_FilterSql', $sqlPayment, array('subject'=>$this,"id"=>$this->sSYSTEM->_SESSION['sUserId']));
Shopware_Modules_Admin_UpdateAccount_FilterPasswordSql
Funktion: sUpdateAccount, Zeile 764
Definition:
$sqlAccount = Enlight()->Events()->filter('Shopware_Modules_Admin_UpdateAccount_FilterPasswordSql', $sqlAccount, array('email'=>$email,'password'=>$password,'subject'=>$this,"id"=>$this->sSYSTEM->_SESSION['sUserId']));
Shopware_Modules_Admin_UpdateAccount_FilterEmailSql
Funktion: sUpdateAccount, Zeile 771
Definition:
$sqlAccount = Enlight()->Events()->filter('Shopware_Modules_Admin_UpdateAccount_FilterEmailSql', $sqlAccount, array('email'=>$email,'password'=>$password,'subject'=>$this,"id"=>$this->sSYSTEM->_SESSION['sUserId']));
Shopware_Modules_Admin_ValidateStep2_FilterStart
Funktion: sValidateStep2, Zeile 797
Definition:
list($sErrorMessages,$sErrorFlag) = Enlight()->Events()->filter('Shopware_Modules_Admin_ValidateStep2_FilterResult', array($sErrorMessages,$sErrorFlag), array('edit'=>$edit,'rules'=>$rules,'subject'=>$this,"post"=>$this->sSYSTEM->_POST));
Shopware_Modules_Admin_ValidateStep2_FilterResult
Funktion: sValidateStep2, Zeile 831
Definition:
list($sErrorMessages,$sErrorFlag) = Enlight()->Events()->filter('Shopware_Modules_Admin_ValidateStep2_FilterResult', array($sErrorMessages,$sErrorFlag), array('edit'=>$edit,'rules'=>$rules,'subject'=>$this,"post"=>$this->sSYSTEM->_POST));
Shopware_Modules_Admin_ValidateStep2Shipping_FilterResult
Funktion: sValidateStep2ShippingAddress, Zeile 885
Definition:
list($sErrorMessages,$sErrorFlag) = Enlight()->Events()->filter('Shopware_Modules_Admin_ValidateStep2Shipping_FilterResult', array($sErrorMessages,$sErrorFlag), array('edit'=>$edit,'rules'=>$rules,'subject'=>$this,"post"=>$this->sSYSTEM->_POST));
Shopware_Modules_Admin_ValidateStep1_FilterResult
Funktion: sValidateStep1, Zeile 984
Definition:
list($sErrorMessages,$sErrorFlag) = Enlight()->Events()->filter('Shopware_Modules_Admin_ValidateStep1_FilterResult', array($sErrorMessages,$sErrorFlag), array('edit'=>$edit,'subject'=>$this,"post"=>$this->sSYSTEM->_POST));
Shopware_Modules_Admin_Login_Start
Funktion: sLogin, Zeile 996
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Admin_Login_Start', array('subject'=>$this,"ignoreAccountMode"=>$ignoreAccountMode,"post"=>$this->sSYSTEM->_POST))){ return false; }
Shopware_Modules_Admin_Login_Successful
Funktion: sLogin, Zeile 1032
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_Login_Successful', array('subject'=>$this,'email'=>$email,'password'=>$password,'user'=>$getUser));
Shopware_Modules_Admin_Login_Failure
Funktion: sLogin, Zeile 1048
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_Login_Failure', array('subject'=>$this,'email'=>$email,'password'=>$password,'error'=>$sErrorMessages));
Shopware_Modules_Admin_Login_FilterResult
Funktion: sLogin, Zeile 1056
Definition:
list($sErrorMessages,$sErrorFlag) = Enlight()->Events()->filter('Shopware_Modules_Admin_Login_FilterResult', array($sErrorMessages,$sErrorFlag), array('subject'=>$this,'email'=>$email,'password'=>$password,'error'=>$sErrorMessages));
Shopware_Modules_Admin_CheckUser_Start
Funktion: sCheckUser, Zeile 1056
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Admin_CheckUser_Start', array('subject'=>$this))){ return false; }
Shopware_Modules_Admin_CheckUser_FilterGetUser
Funktion: sCheckUser, Zeile 1090
Definition:
$getUser = Enlight()->Events()->filter('Shopware_Modules_Admin_CheckUser_FilterGetUser', $getUser, array('subject'=>$this,'sql'=>$sql,'session'=>$this->sSYSTEM->_SESSION));
Shopware_Modules_Admin_CheckUser_Successful
Funktion: sCheckUser, Zeile 1120
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_CheckUser_Successful', array('subject'=>$this,'session'=>$this->sSYSTEM->_SESSION,'user'=>$getUser));
Shopware_Modules_Admin_CheckUser_Failure
Funktion: sCheckUser, Zeile 1127
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_CheckUser_Failure', array('subject'=>$this,'session'=>$this->sSYSTEM->_SESSION,'user'=>$getUser));
Shopware_Modules_Admin_GetCountries_FilterResult
Funktion: sGetCountries, Zeile 1265
Definition:
$getCountries = Enlight()->Events()->filter('Shopware_Modules_Admin_GetCountries_FilterResult', $getCountries, array('subject'=>$this));
Shopware_Modules_Admin_SaveRegisterMainData_FilterSql
Funktion: sSaveRegisterMainData, Zeile 1322
Definition:
list($sql,$data) = Enlight()->Events()->filter('Shopware_Modules_Admin_SaveRegisterMainData_FilterSql', array($sql,$data), array('subject'=>$this));
Shopware_Modules_Admin_SaveRegisterMainData_Return
Funktion: sSaveRegisterMainData, Zeile 1325
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_SaveRegisterMainData_Return', array('subject'=>$this,'insertObject'=>$saveUserData));
Shopware_Modules_Admin_SaveRegisterBilling_FilterSql
Funktion: sSaveRegisterBilling, Zeile 1404
Definition:
list($sqlBilling,$data) = Enlight()->Events()->filter('Shopware_Modules_Admin_SaveRegisterBilling_FilterSql', array($sqlBilling,$data), array('subject'=>$this));
Shopware_Modules_Admin_SaveRegisterBilling_Return
Funktion: sSaveRegisterBilling, Zeile 1407
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_SaveRegisterBilling_Return', array('subject'=>$this,'insertObject'=>$saveUserData));
Shopware_Modules_Admin_SaveRegisterShipping_FilterSql
Funktion: sSaveRegisterShipping, Zeile 1442
Definition:
$sqlShipping = Enlight()->Events()->filter('Shopware_Modules_Admin_SaveRegisterShipping_FilterSql', $sqlShipping, array('subject'=>$this,'user'=>$userObject,'id'=>$userID));
Shopware_Modules_Admin_SaveRegisterShipping_Return
Funktion: sSaveRegisterShipping, Zeile 1447
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_SaveRegisterShipping_Return', array('subject'=>$this,'insertObject'=>$saveUserData));
Shopware_Modules_Admin_SaveRegisterSendConfirmation_Start
Funktion: sSaveRegisterSendConfirmation, Zeile 1460
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Admin_SaveRegisterSendConfirmation_Start', array('subject'=>$this,'email'=>$email))){ return false; }
Shopware_Modules_Admin_SaveRegisterSendConfirmation_BeforeSend
Funktion: sSaveRegisterSendConfirmation, Zeile 1517
Definition:
Enlight()->Events()->notify('Shopware_Modules_Admin_SaveRegisterSendConfirmation_BeforeSend', array('subject'=>$this,'mail'=>$mail));
Shopware_Modules_Admin_SaveRegister_Start
Funktion: sSaveRegister, Zeile 1528
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Admin_SaveRegister_Start', array('subject'=>$this))){ return false; }
Shopware_Modules_Admin_SaveRegister_FilterNeededFields
Funktion: sSaveRegister, Zeile 1538
Definition:
$neededFields = Enlight()->Events()->filter('Shopware_Modules_Admin_SaveRegister_FilterNeededFields', $neededFields, array('subject'=>$this));
Shopware_Modules_Admin_SaveRegister_FilterErrors
Funktion: sSaveRegister, Zeile 1558
Definition:
$errorFields = Enlight()->Events()->filter('Shopware_Modules_Admin_SaveRegister_FilterErrors', $errorFields, array('subject'=>$this));
Shopware_Modules_Admin_SaveRegister_GetCustomerNumber
Funktion: sSaveRegister, Zeile 1595
Definition:
if (!Enlight()->Events()->notifyUntil('Shopware_Modules_Admin_SaveRegister_GetCustomerNumber', array('subject'=>$this,'id'=>$userId))){ $sql = "UPDATE `s_order_number`,`s_user_billingaddress` SET `s_order_number`.`number`=`s_order_number`.`number`+1, `s_user_billingaddress`.`customernumber`=`s_order_number`.`number`+1 WHERE `s_order_number`.`name` ='user' AND `s_user_billingaddress`.`userID`=?"; $this->sSYSTEM->sDB_CONNECTION->Execute($sql,array($userId)); }
Shopware_Modules_Admin_GetDownloads_FilterResult
Funktion: sGetDownloads, Zeile 1722
Definition:
$getOrders = Enlight()->Events()->filter('Shopware_Modules_Admin_GetDownloads_FilterResult', $getOrders, array('subject'=>$this,'id'=>$this->sSYSTEM->_SESSION["sUserId"]));
Shopware_Modules_Admin_GetOpenOrderData_FilterResult
Funktion: sGetOpenOrderData, Zeile 1788
Definition:
$getOrders = Enlight()->Events()->filter('Shopware_Modules_Admin_GetOpenOrderData_FilterResult', $getOrders, array('subject'=>$this,'id'=>$this->sSYSTEM->_SESSION["sUserId"],'subshopID'=>$this->sSYSTEM->sSubShop["id"]));
Shopware_Modules_Admin_GetUserData_Start
Funktion: sGetUserData, Zeile 1839
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Admin_GetUserData_Start', array('subject'=>$this))){ return false; }
Shopware_Modules_Admin_GetUserData_FilterResult
Funktion: sGetUserData, Zeile 1937
Definition:
$userData = Enlight()->Events()->filter('Shopware_Modules_Admin_GetUserData_FilterResult', $userData, array('subject'=>$this,'id'=>$this->sSYSTEM->_SESSION["sUserId"]));
sBasket.php
Shopware_Modules_Basket_AddVoucher_Start
Funktion: sAddVoucher, Zeile 326
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Basket_AddVoucher_Start', array('subject'=>$this,'code'=>$sTicket,"basket"=>$BASKET))){ return false; }
Shopware_Modules_Basket_AddVoucher_FilterSql
Funktion: sAddVoucher, Zeile 525
Definition:
$sql = " INSERT INTO s_order_basket (sessionID, articlename, articleID, ordernumber, shippingfree, quantity, price, netprice, datum, modus, currencyFactor) VALUES ('".$this->sSYSTEM->sSESSION_ID."','".$vouchername."',{$ticketResult["id"]},'{$ticketResult["ordercode"]}',$shippingfree,1,{$ticketResult["value"]},$tax,'$timeInsert',2,".$this->sSYSTEM->sCurrency["factor"].") "; $sql = Enlight()->Events()->filter('Shopware_Modules_Basket_AddVoucher_FilterSql',$sql, array('subject'=>$this,"voucher"=>$ticketResult,"name"=>$vouchername,"shippingfree"=>$shippingfree,"tax"=>$tax));
Shopware_Modules_Basket_GetBasket_FilterSQL
Funktion: sGetBasket, Zeile 822
Definition:
$sql = " SELECT s_order_basket.*, a.packunit, minpurchase,taxID,IF (ad.instock,ad.instock,av.instock) AS `instock`,suppliernumber,maxpurchase,purchasesteps,purchaseunit,unitID,laststock,shippingtime,releasedate,releasedate AS sReleaseDate,stockmin,esd, su.description AS itemUnit, ob_attr1,ob_attr2,ob_attr3,ob_attr4,ob_attr5,ob_attr6 FROM s_order_basket LEFT JOIN s_articles_details AS ad ON ad.ordernumber = s_order_basket.ordernumber LEFT JOIN s_articles_groups_value AS av ON av.ordernumber = s_order_basket.ordernumber LEFT JOIN s_articles a ON (a.id = ad.articleID OR a.id = av.articleID) LEFT JOIN s_core_units su ON su.id = a.unitID WHERE sessionID=? ORDER BY id ASC, datum DESC "; $sql = Enlight()->Events()->filter('Shopware_Modules_Basket_GetBasket_FilterSQL', $sql, array('subject'=>$this));
Shopware_Modules_Basket_GetBasket_FilterItemStart
Funktion: sGetBasket, Zeile 833
Definition:
foreach ($getArticles as $key => $value){ $getArticles[$key] = Enlight()->Events()->filter('Shopware_Modules_Basket_GetBasket_FilterItemStart', $getArticles[$key], array('subject'=>$this,'getArticles'=>$getArticles)); // ...
Shopware_Modules_Basket_GetBasket_FilterItemEnd
Funktion: sGetBasket, Zeile 1031
Definition:
// .... $getArticles[$key] = Enlight()->Events()->filter('Shopware_Modules_Basket_GetBasket_FilterItemEnd', $getArticles[$key], array('subject'=>$this,'getArticles'=>$getArticles)); // ...
Shopware_Modules_Basket_GetBasket_FilterResult
Funktion: sGetBasket, Zeile 1084
Definition:
$result = Enlight()->Events()->filter('Shopware_Modules_Basket_GetBasket_FilterResult', $result, array('subject'=>$this));
Shopware_Modules_Basket_UpdateArticle_Start
Funktion: sUpdateArticle, Zeile 1189
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Basket_UpdateArticle_Start', array('subject'=>$this,'id'=>$id,"quantity"=>$quantity))){ return false; }
Shopware_Modules_Basket_UpdateArticle_FilterSqlDefault
Funktion: sUpdateArticle, Zeile 1449
Definition:
$sql = " UPDATE s_order_basket SET $sqlLive quantity=$quantity, price=$brutto, netprice=$netprice, currencyFactor=".$this->sSYSTEM->sCurrency["factor"]." WHERE id=$id AND sessionID='".$this->sSYSTEM->sSESSION_ID."' AND modus=0 "; $sql = Enlight()->Events()->filter('Shopware_Modules_Basket_UpdateArticle_FilterSqlDefault',$sql, array('subject'=>$this,'id'=>$id,"quantity"=>$quantity,"price"=>$brutto,"netprice"=>$netprice,"currencyFactor"=>$this->sSYSTEM->sCurrency["factor"]));
Shopware_Modules_Basket_UpdateArticle_FilterSqlConfigurator
Funktion: sUpdateArticle, Zeile 1565
Definition:
$sql = " UPDATE s_order_basket SET $sqlLive quantity=$quantity,price=$brutto, netprice=$netprice, currencyFactor=".$this->sSYSTEM->sCurrency["factor"]." WHERE id=$id AND sessionID='".$this->sSYSTEM->sSESSION_ID."' AND modus=0 "; $sql = Enlight()->Events()->filter('Shopware_Modules_Basket_UpdateArticle_FilterSqlConfigurator',$sql, array('subject'=>$this,'id'=>$id,"quantity"=>$quantity,"price"=>$brutto,"netprice"=>$netprice,"currencyFactor"=>$this->sSYSTEM->sCurrency["factor"]));
Shopware_Modules_Basket_AddArticle_Start
Funktion: sAddArticle, Zeile 1682
Definition:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Basket_AddArticle_Start', array('subject'=>$this,'id'=>$id,"quantity"=>$quantity))){ return false; }
Shopware_Modules_Basket_AddArticle_FilterSql
Funktion: sAddArticle, Zeile 2017
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Basket_AddArticle_FilterSql',$sql, array('subject'=>$this,"article"=>$getArticle,"price"=>$getPrice,"esd"=>$sEsd,"quantity"=>$quantity,"partner"=>$this->sSYSTEM->_SESSION["sPartner"]));
sOrder.php
Shopware_Modules_Order_GetOrdernumber_FilterOrdernumber
Funktion: sGetOrderNumber, Zeile 135
Definition:
$ordernumber = Enlight()->Events()->filter('Shopware_Modules_Order_GetOrdernumber_FilterOrdernumber', $ordernumber, array('subject'=>$this));
Shopware_Modules_Order_SaveOrder_FilterSQL
Funktion: sSaveOrder, Zeile 551
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Order_SaveOrder_FilterSQL', $sql, array('subject'=>$this));
Shopware_Modules_Order_SaveOrder_FilterDetailsSQL
Funktion: sSaveOrder, Zeile 670
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Order_SaveOrder_FilterDetailsSQL', $sql, array('subject'=>$this,'row'=>$basketRow,'user'=>$this->sUserData,'order'=>array("id"=>$orderID,"number"=>$orderNumber)));
Shopware_Modules_Order_SaveOrder_ProcessDetails
Funktion: sSaveOrder, Zeile 747
Definition:
Enlight()->Events()->notify('Shopware_Modules_Order_SaveOrder_ProcessDetails', array('subject'=>$this,'details'=>$this->sBasketData["content"]));
Shopware_Modules_Order_SendMail_FilterVariables
Funktion: sendMail, Zeile 873
Definition:
$variables = Enlight()->Events()->filter('Shopware_Modules_Order_SendMail_FilterVariables', $variables, array('subject'=>$this));
Shopware_Modules_Order_SendMail_BeforeSend
Funktion: sendMail, Zeile 953
Definition:
Enlight()->Events()->notify('Shopware_Modules_Order_SendMail_BeforeSend', array('subject'=>$this, 'mail'=>$mail));
Shopware_Modules_Order_SaveBilling_FilterSQL
Funktion: sSaveBillingAddress, Zeile 1014
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Order_SaveBilling_FilterSQL', $sql, array('subject'=>$this,'address'=>$address,'id'=>$id));
Shopware_Modules_Order_SaveBilling_FilterSQL
Funktion: sSaveBillingAddress, Zeile 1038
Definition:
$array = Enlight()->Events()->filter('Shopware_Modules_Order_SaveBilling_FilterArray', $array, array('subject'=>$this,'address'=>$address,'id'=>$id));
Shopware_Modules_Order_SaveBilling_FilterSQL
Funktion: sSaveShippingAddress, Zeile 1091
Definition:
$sql = Enlight()->Events()->filter('Shopware_Modules_Order_SaveShipping_FilterSQL', $sql, array('subject'=>$this,'address'=>$address,'id'=>$id));
Shopware_Modules_Order_SaveShipping_FilterArray
Funktion: sSaveShippingAddress, Zeile 1112
Definition:
$array = Enlight()->Events()->filter('Shopware_Modules_Order_SaveShipping_FilterArray', $array, array('subject'=>$this,'address'=>$address,'id'=>$id));
/Controllers/Frontend/Register.php
Shopware_Controllers_Frontend_Register_validatePersonal_FilterRules
Funktion: validatePersonal, Zeile 336
Definition:
$rules = array( 'customer_type'=>array('required'=>0), 'salutation'=>array('required'=>1), //'company'=>array('addicted'=>array('salutation'=>'company'),'required'=>1), 'firstname'=>array('required'=>1), 'lastname'=>array('required'=>1), //'street'=>array('required'=>1), //'streetnumber'=>array('required'=>1), //'zipcode'=>array('required'=>1), //'city'=>array('required'=>1), 'phone'=>array('required'=>1), //'country'=>array('required'=>1), //'department'=>array('required'=>0), 'fax'=>array('required'=>0), //'shippingAddress'=>array('required'=>0), //'ustid'=>array('required'=>0), 'text1'=>array('required'=>0), 'text2'=>array('required'=>0), 'text3'=>array('required'=>0), 'text4'=>array('required'=>0), 'text5'=>array('required'=>0), 'text6'=>array('required'=>0), 'sValidation'=>array('required'=>0), 'birthyear'=>array('required'=>0), 'birthmonth'=>array('required'=>0), 'birthday'=>array('required'=>0), 'dpacheckbox'=>array('required'=>(Shopware()->Config()->get('ACTDPRCHECK'))?1:0) ); $rules = Enlight()->Events()->filter('Shopware_Controllers_Frontend_Register_validatePersonal_FilterRules', $rules, array('subject'=>$this));
Shopware_Controllers_Frontend_Register_validateBilling_FilterRules
Funktion: validateBilling, Zeile 383
Definition:
$rules = array( //'salutation'=>array('required'=>1), 'company'=>array('required'=>0), //'firstname'=>array('required'=>1), //'lastname'=>array('required'=>1), 'street'=>array('required'=>1), 'streetnumber'=>array('required'=>1), 'zipcode'=>array('required'=>1), 'city'=>array('required'=>1), //'phone'=>array('required'=>1), 'country'=>array('required'=>1), 'department'=>array('required'=>0), //'fax'=>array('required'=>0), 'shippingAddress'=>array('required'=>0), //'ustid'=>array('required'=>0), //'text1'=>array('required'=>0), //'text2'=>array('required'=>0), //'text3'=>array('required'=>0), //'text4'=>array('required'=>0), //'text5'=>array('required'=>0), //'text6'=>array('required'=>0), //'sValidation'=>array('required'=>0), //'birthyear'=>array('required'=>0), //'birthmonth'=>array('required'=>0), //'birthday'=>array('required'=>0), //'dpacheckbox'=>array('required'=>Shopware()->Config()->get('sACTDPRCHECK'))?1:0 ); $rules = Enlight()->Events()->filter('Shopware_Controllers_Frontend_Register_validateBilling_FilterRules', $rules, array('subject'=>$this));
Shopware_Controllers_Frontend_Register_validateShipping_FilterRules
Funktion: validateShipping, Zeile 396
Definition:
$rules = array( 'salutation'=>array('required'=>1), 'company'=>array('required'=>0), 'firstname'=>array('required'=>1), 'lastname'=>array('required'=>1), 'street'=>array('required'=>1), 'streetnumber'=>array('required'=>1), 'zipcode'=>array('required'=>1), 'city'=>array('required'=>1), 'department'=>array('required'=>0), 'text1'=>array('required'=>0), 'text2'=>array('required'=>0), 'text3'=>array('required'=>0), 'text4'=>array('required'=>0), 'text5'=>array('required'=>0), 'text6'=>array('required'=>0), 'country'=>array('required'=>(Shopware()->Config()->get('sCOUNTRYSHIPPING'))?1:0) ); $rules = Enlight()->Events()->filter('Shopware_Controllers_Frontend_Register_validateShipping_FilterRules', $rules, array('subject'=>$this));
Event Typen
Shopware unterscheidet zwischen 3 Event-Arten:
Notify
Der Notify-Event informiert alle Plugins, die sich für das spezifische Event registriert haben. Eine weitergehende Verarbeitung findet nicht statt!
Beispiel für Erstellung:
Enlight()->Events()->notify('Shopware_Modules_Articles_GetArticlePictures_Start',array('subject'=>$this,'id'=>$sArticleID));
- Parameter 1 = Name des Events
- Parameter 2 = Event Parameter (Array)
Beispiel für Registrierung Listener:
$event = $this->createEvent( 'Shopware_Modules_Articles_GetArticlePictures_Start', 'onPicturesStart' ); $this->subscribeEvent($event);
- Parameter 1 = Name des Events
- Parameter 2 = Name der lokalen Methode, die mit dem Event verknüpft werden soll
Notify-Until
Das Until-Event wird so lange ausgeführt, bis eine der registerierten Methoden "true" zurückgibt.
Beispiel für Erstellung:
if (Enlight()->Events()->notifyUntil('Shopware_Modules_Articles_sGetArticlesByCategory_Start', array('subject'=>$this,'id'=>$id,'blog'=>$blog,'limit'=>$limit))){ return false; }
- Parameter 1 = Name des Events
- Parameter 2 = Event Parameter (Array)
Beispiel für Registrierung Listener:
$event = $this->createEvent( 'Shopware_Modules_Articles_GetArticlePictures_Start', 'onPicturesStart' ); $this->subscribeEvent($event);
- Parameter 1 = Name des Events
- Parameter 2 = Name der lokalen Methode, die mit dem Event verknüpft werden soll
Notify-Filter
Das Filter-Event kann zur Manipulation von Daten und Rückgabewerten verwendet werden. Zum Beispiel um eine SQL-Abfrage zu modifizieren.
Beispiel für Erstellung:
$sql = Enlight()->Events()->filter('Shopware_Modules_Articles_sGetArticlesByCategory_FilterSql', $sql, array('subject'=>$this,'id'=>$this->sSYSTEM->_GET['sCategory']));
- Parameter 1 = Name des Events
- Parameter 2 = Variable die modifiziert werden soll
- Parameter 3 = Event Parameter (Array)
Beispiel für Registrierung Listener:
$event = $this->createEvent( 'Shopware_Modules_Articles_GetArticlePictures_Start', 'onPicturesStart' ); $this->subscribeEvent($event);
- Parameter 1 = Name des Events
- Parameter 2 = Name der lokalen Methode, die mit dem Event verknüpft werden soll
Bei Notify-Filter Methoden, muss die Rückgabe über
return $returning
gesetzt werden und nicht mit $args->setReturn();
Event Listener Methoden Argumente
Jede Listener-Methode muss als statische, öffentlich verfügbare Methode deklariert werden und einen Parameter vom Typ "Enlight_Event_EventArgs" akzeptieren.
Beispiel für Funktionsrumpf:
public static function onGetControllerPathBackend(Enlight_Event_EventArgs $args) { }
Methoden des Argument-Objekts:
- Args->stop()
- Args->setProcessed()
- Args->isProcessed()
- Args->setName()
- Args->getName()
- Args->setReturn()
- Args->getReturn()
- Args->getSubject()
Unterschied Events / Hooks
Neben der Event gesteuerten Programmierung, besteht auch die Möglichkeit Core-Funktionen direkt zu modifizieren. Hierzu können die Funktionen über so genannte Hooks überlagert werden. Im Unterschied zum Event-System, welches die Modifizierung nur an definierten Stellen erlaubt, ermöglichen Hooks die übergreifende Veränderung von Core-Funktionalität!
Event-Vorschläge
Falls Ihnen bei der Entwicklung Events fehlen, zögern Sie nicht uns darüber im Forum oder per eMail zu informieren. Wir prüfen jeden Vorschlag und nehmen die neuen Events ggf. in einem zukünftigen Release auf!
Artikel-PDF erstellen
Artikel bewerten
Kommentare:
Artikel kommentieren
Weitere interessante Artikel:
Bestell-Nr.: SW1476
Lieferzeit ca. 5 Tage
Preise inkl. gesetzlicher
MwSt. zzgl. Versandkosten*
Preise inkl. gesetzlicher
MwSt. + Versandkosten*
Kategorien: