From a6d2719114ae21ee2fcc600ad96e22bfc301e9b9 Mon Sep 17 00:00:00 2001
From: Serhiy Shkolyarenko <sshkolyarenko@ebay.com>
Date: Wed, 8 Jul 2015 22:03:01 +0300
Subject: [PATCH] MAGETWO-39654: Missing events subscriptions after checkout
 reimplementation

fixed event areas
---
 .../CatalogRule/etc/webapi_soap/events.xml        | 15 +++++++++++++++
 .../Magento/Checkout/etc/webapi_rest/events.xml   | 12 ++++++++++++
 .../Magento/Checkout/etc/webapi_soap/events.xml   | 12 ++++++++++++
 .../Magento/Customer/etc/webapi_rest/events.xml   | 12 ++++++++++++
 .../Magento/Customer/etc/webapi_soap/events.xml   | 12 ++++++++++++
 .../Downloadable/etc/{adminhtml => }/events.xml   |  2 +-
 .../Magento/Downloadable/etc/frontend/events.xml  |  6 ------
 app/code/Magento/Msrp/etc/webapi_rest/events.xml  | 12 ++++++++++++
 app/code/Magento/Msrp/etc/webapi_soap/events.xml  | 12 ++++++++++++
 .../Magento/Quote/etc/{frontend => }/events.xml   |  2 +-
 .../Magento/Reports/etc/webapi_rest/events.xml    | 12 ++++++++++++
 .../Magento/Reports/etc/webapi_soap/events.xml    | 12 ++++++++++++
 app/code/Magento/Sales/etc/webapi_rest/events.xml | 12 ++++++++++++
 app/code/Magento/Sales/etc/webapi_soap/events.xml | 12 ++++++++++++
 14 files changed, 137 insertions(+), 8 deletions(-)
 create mode 100644 app/code/Magento/CatalogRule/etc/webapi_soap/events.xml
 create mode 100644 app/code/Magento/Checkout/etc/webapi_rest/events.xml
 create mode 100644 app/code/Magento/Checkout/etc/webapi_soap/events.xml
 create mode 100644 app/code/Magento/Customer/etc/webapi_rest/events.xml
 create mode 100644 app/code/Magento/Customer/etc/webapi_soap/events.xml
 rename app/code/Magento/Downloadable/etc/{adminhtml => }/events.xml (85%)
 create mode 100644 app/code/Magento/Msrp/etc/webapi_rest/events.xml
 create mode 100644 app/code/Magento/Msrp/etc/webapi_soap/events.xml
 rename app/code/Magento/Quote/etc/{frontend => }/events.xml (81%)
 create mode 100644 app/code/Magento/Reports/etc/webapi_rest/events.xml
 create mode 100644 app/code/Magento/Reports/etc/webapi_soap/events.xml
 create mode 100644 app/code/Magento/Sales/etc/webapi_rest/events.xml
 create mode 100644 app/code/Magento/Sales/etc/webapi_soap/events.xml

diff --git a/app/code/Magento/CatalogRule/etc/webapi_soap/events.xml b/app/code/Magento/CatalogRule/etc/webapi_soap/events.xml
new file mode 100644
index 00000000000..69fcd117f77
--- /dev/null
+++ b/app/code/Magento/CatalogRule/etc/webapi_soap/events.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="catalog_product_get_final_price">
+        <observer name="catalogrule" instance="Magento\CatalogRule\Model\Observer" method="processFrontFinalPrice" />
+    </event>
+    <event name="prepare_catalog_product_collection_prices">
+        <observer name="catalogrule" instance="Magento\CatalogRule\Model\Observer" method="prepareCatalogProductCollectionPrices" />
+    </event>
+</config>
diff --git a/app/code/Magento/Checkout/etc/webapi_rest/events.xml b/app/code/Magento/Checkout/etc/webapi_rest/events.xml
new file mode 100644
index 00000000000..64b405aacf3
--- /dev/null
+++ b/app/code/Magento/Checkout/etc/webapi_rest/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_save_after">
+        <observer name="set_checkout_quote_id" instance="Magento\Checkout\Model\Observer" method="salesQuoteSaveAfter" />
+    </event>
+</config>
diff --git a/app/code/Magento/Checkout/etc/webapi_soap/events.xml b/app/code/Magento/Checkout/etc/webapi_soap/events.xml
new file mode 100644
index 00000000000..64b405aacf3
--- /dev/null
+++ b/app/code/Magento/Checkout/etc/webapi_soap/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_save_after">
+        <observer name="set_checkout_quote_id" instance="Magento\Checkout\Model\Observer" method="salesQuoteSaveAfter" />
+    </event>
+</config>
diff --git a/app/code/Magento/Customer/etc/webapi_rest/events.xml b/app/code/Magento/Customer/etc/webapi_rest/events.xml
new file mode 100644
index 00000000000..a605a108201
--- /dev/null
+++ b/app/code/Magento/Customer/etc/webapi_rest/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_save_after">
+        <observer name="customer_visitor" instance="Magento\Customer\Model\Visitor" method="bindQuoteCreate" />
+    </event>
+</config>
diff --git a/app/code/Magento/Customer/etc/webapi_soap/events.xml b/app/code/Magento/Customer/etc/webapi_soap/events.xml
new file mode 100644
index 00000000000..a605a108201
--- /dev/null
+++ b/app/code/Magento/Customer/etc/webapi_soap/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_save_after">
+        <observer name="customer_visitor" instance="Magento\Customer\Model\Visitor" method="bindQuoteCreate" />
+    </event>
+</config>
diff --git a/app/code/Magento/Downloadable/etc/adminhtml/events.xml b/app/code/Magento/Downloadable/etc/events.xml
similarity index 85%
rename from app/code/Magento/Downloadable/etc/adminhtml/events.xml
rename to app/code/Magento/Downloadable/etc/events.xml
index 46f63240abd..47dc66111e8 100644
--- a/app/code/Magento/Downloadable/etc/adminhtml/events.xml
+++ b/app/code/Magento/Downloadable/etc/events.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
     <event name="sales_order_item_save_commit_after">
         <observer name="downloadable_observer" instance="Magento\Downloadable\Model\Observer" method="saveDownloadableOrderItem" />
     </event>
diff --git a/app/code/Magento/Downloadable/etc/frontend/events.xml b/app/code/Magento/Downloadable/etc/frontend/events.xml
index ac54f059a37..0b39fd0e390 100644
--- a/app/code/Magento/Downloadable/etc/frontend/events.xml
+++ b/app/code/Magento/Downloadable/etc/frontend/events.xml
@@ -6,12 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
-    <event name="sales_order_item_save_commit_after">
-        <observer name="downloadable_observer" instance="Magento\Downloadable\Model\Observer" method="saveDownloadableOrderItem" />
-    </event>
-    <event name="sales_order_save_commit_after">
-        <observer name="downloadable_observer" instance="Magento\Downloadable\Model\Observer" method="setLinkStatus" />
-    </event>
     <event name="sales_model_service_quote_submit_success">
         <observer name="checkout_type_onepage_save_order_after" instance="Magento\Downloadable\Model\Observer" method="setHasDownloadableProducts" />
     </event>
diff --git a/app/code/Magento/Msrp/etc/webapi_rest/events.xml b/app/code/Magento/Msrp/etc/webapi_rest/events.xml
new file mode 100644
index 00000000000..e4fb9f4b8aa
--- /dev/null
+++ b/app/code/Magento/Msrp/etc/webapi_rest/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_collect_totals_after">
+        <observer name="catalog_msrp" instance="Magento\Msrp\Model\Observer\Frontend\Quote\SetCanApplyMsrp" method="execute" />
+    </event>
+</config>
diff --git a/app/code/Magento/Msrp/etc/webapi_soap/events.xml b/app/code/Magento/Msrp/etc/webapi_soap/events.xml
new file mode 100644
index 00000000000..e4fb9f4b8aa
--- /dev/null
+++ b/app/code/Magento/Msrp/etc/webapi_soap/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_collect_totals_after">
+        <observer name="catalog_msrp" instance="Magento\Msrp\Model\Observer\Frontend\Quote\SetCanApplyMsrp" method="execute" />
+    </event>
+</config>
diff --git a/app/code/Magento/Quote/etc/frontend/events.xml b/app/code/Magento/Quote/etc/events.xml
similarity index 81%
rename from app/code/Magento/Quote/etc/frontend/events.xml
rename to app/code/Magento/Quote/etc/events.xml
index 8c38cda0dbe..b14058b03e5 100644
--- a/app/code/Magento/Quote/etc/frontend/events.xml
+++ b/app/code/Magento/Quote/etc/events.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
     <event name="sales_quote_address_collect_totals_before">
         <observer name="sales_customer_validate_vat_number" instance="Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals" method="dispatch" />
     </event>
diff --git a/app/code/Magento/Reports/etc/webapi_rest/events.xml b/app/code/Magento/Reports/etc/webapi_rest/events.xml
new file mode 100644
index 00000000000..6e8d93278a9
--- /dev/null
+++ b/app/code/Magento/Reports/etc/webapi_rest/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_item_save_before">
+        <observer name="reports" instance="Magento\Reports\Model\Event\Observer" method="checkoutCartAddProduct" />
+    </event>
+</config>
diff --git a/app/code/Magento/Reports/etc/webapi_soap/events.xml b/app/code/Magento/Reports/etc/webapi_soap/events.xml
new file mode 100644
index 00000000000..6e8d93278a9
--- /dev/null
+++ b/app/code/Magento/Reports/etc/webapi_soap/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_item_save_before">
+        <observer name="reports" instance="Magento\Reports\Model\Event\Observer" method="checkoutCartAddProduct" />
+    </event>
+</config>
diff --git a/app/code/Magento/Sales/etc/webapi_rest/events.xml b/app/code/Magento/Sales/etc/webapi_rest/events.xml
new file mode 100644
index 00000000000..763c0dcd5bc
--- /dev/null
+++ b/app/code/Magento/Sales/etc/webapi_rest/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_address_collect_totals_after">
+        <observer name="sales_customer_validate_vat_number" instance="Magento\Sales\Model\Observer\Frontend\Quote\RestoreCustomerGroupId" method="execute" />
+    </event>
+</config>
diff --git a/app/code/Magento/Sales/etc/webapi_soap/events.xml b/app/code/Magento/Sales/etc/webapi_soap/events.xml
new file mode 100644
index 00000000000..763c0dcd5bc
--- /dev/null
+++ b/app/code/Magento/Sales/etc/webapi_soap/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_address_collect_totals_after">
+        <observer name="sales_customer_validate_vat_number" instance="Magento\Sales\Model\Observer\Frontend\Quote\RestoreCustomerGroupId" method="execute" />
+    </event>
+</config>
-- 
GitLab