<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
		xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
    <type name="Smartwave\Filterproducts\Block\Home\LatestList">
		<plugin name="MNM_filterproducts_sort_by_product_attribute" 
				type="MNM\Spitzner\Plugin\FilterproductsSortByProductAttribute" />
    </type>
    <type name="Magento\GroupedProduct\Model\Product\Type\Grouped">
		<plugin name="MNM_grouped_products_get_associated_products_collection" 
				type="MNM\Spitzner\Plugin\GroupedProductsGetAssociatedProductsCollection" />
    </type>
    <type name="Amasty\Stockstatus\Helper\Data">
		<plugin name="MNM_add_stock_label" 
				type="MNM\Spitzner\Plugin\AddStockLabel" />
    </type>
    <type name="Mageprince\Faq\Block\Index\Index">
		<plugin name="MNM_change_faq_collection" 
				type="MNM\Spitzner\Plugin\ChangeFaqCollection" />
    </type>
    <type name="\Magento\Checkout\Block\Checkout\LayoutProcessor">
		<plugin name="MNM_checkoutlayout_adaption" 
				type="MNM\Spitzner\Plugin\CheckoutLayoutAdaption" 
				sortOrder="10" />
    </type>
    <type name="Amasty\CheckoutCore\Model\ConfigProvider">
		<plugin name="MNM_reorder_checkout" 
				type="MNM\Spitzner\Plugin\ReorderCheckout" />
    </type>
    <type name="Magento\Checkout\Model\DefaultConfigProvider">
		<plugin name="MNM_add_checkout_item_price_per_unit" 
				type="MNM\Spitzner\Plugin\AddCheckoutItemPricePerUnit" />
    </type>
    <type name="Magento\Customer\Api\AddressRepositoryInterface">
    	<plugin name="repertus_packstation_customer_api_address_repository" 
				type="MNM\Spitzner\Plugin\Customer\Api\AddressRepositoryPlugin" />
    </type>
    <type name="Magento\Checkout\Block\Cart\AbstractCart">
    	<plugin name="Amasty_Stockstatus::ShowStatusonCart" 
				disabled="true" />
        <plugin name="mnm_cart_abstract_cart" 
				type="MNM\Spitzner\Plugin\Cart\AbstractCart" />
    </type>
    <type name="Amasty\Stockstatus\Helper\Data">
    	<plugin name="MNM_AddCheckoutItemPricePerUnit" 
				type="MNM\Spitzner\Plugin\Stockstatus\AddDefaultStockWrapper" />
    </type>
    <type name="Magento\SalesRule\Model\RulesApplier">
    	<plugin name="MNM_RemoveAmpromoSalesRuleLabel"
				type="MNM\Spitzner\Plugin\RemoveAmpromoSalesRuleLabel" />
    </type>
    <type name="Magento\Customer\Model\AccountManagement">
    	<plugin name="MNM_SaveCheckoutEmailInSession" 
				type="MNM\Spitzner\Plugin\SaveCheckoutEmailInSession" />
    </type>
    <type name="Magento\Catalog\Block\Product\ListProduct">
    	<plugin name="MNM_firstproductCategoryMod" 
				type="MNM\Spitzner\Plugin\ForwardSingleProductListToDetailView" />
	</type>
	<type name="Magento\Catalog\Block\Product\View\Gallery">
    	<plugin name="MNM_filtergalleryimages" 
				type="MNM\Spitzner\Plugin\FilterGalleryImages" />
	</type>
	<type name="Magento\Checkout\Model\ShippingInformationManagement">
        <plugin name="MNM_save_in_quote" 
				type="MNM\Spitzner\Plugin\Checkout\ShippingInformationManagementPlugin" 
				sortOrder="2" />
    </type>
    <type name="Magento\Customer\Model\Address">
        <plugin name="MNM_address_update" 
				type="MNM\Spitzner\Plugin\Customer\AddressUpdate" />
    </type>
    <type name="Amasty\Promo\Model\ItemRegistry\PromoItemRegistry">
    	<plugin name="MNM_prevent_reset" 
				type="MNM\Spitzner\Plugin\Amasty\Promo\PreventResetQtyAllowed" />
    </type> 
    <type name="Magento\Paypal\Model\Express\Checkout">
    	<plugin name="MNM_paypal_guest_add_name" 
				type="MNM\Spitzner\Plugin\AddCustomerNameToPaypalGuestQuote" />
    </type> 
    <type name="Magento\Quote\Observer\Frontend\Quote\Address\CollectTotalsObserver">
    	<plugin name="MNM_fix_paypal_gc_bug" 
				type="MNM\Spitzner\Plugin\Quote\FixPaypalGuestCheckoutBug" />
    </type>
	<type name="Magento\Review\Model\Review">
    	<plugin name="MNM_review_remove_required" 
				type="MNM\Spitzner\Plugin\Review\RemoveRequiredFields" />
    </type>
    <type name="Magento\Quote\Model\Quote">
    	<plugin name="MNM_fix_missing_housenumber" 
				type="MNM\Spitzner\Plugin\Quote\FixMissingHousenumber" />
    </type>
    <type name="Magento\Payment\Block\Info\Instructions">
        <plugin name="mnm_spitzner_payment_instructions" 
				type="MNM\Spitzner\Plugin\Payment\Block\Info\Instructions" 
				sortOrder="10"/>
    </type>
    <type name="Magento\Sales\Model\Order\Address">
        <plugin name="patch_prefix_integers_order"
                type="MNM\Spitzner\Plugin\Sales\Model\Order\Address\PrefixPatch" />
    </type>
    <type name="Magento\Quote\Model\Quote\Address">
        <plugin name="patch_prefix_integers_quote"
                type="MNM\Spitzner\Plugin\Quote\Model\Quote\Address\PrefixPatch" />
    </type>
    <type name="Magento\OfflineShipping\Model\Carrier\Tablerate">
        <plugin name="mnm_add_tablerate_condition"
                type="MNM\Spitzner\Plugin\OfflineShipping\AddTablerateConditionWithoutDiscount" />
    </type>

    <preference for="Magebees\Ajaxaddtocart\Controller\Cart\Add" 
				type="MNM\Spitzner\Controller\Cart\Add" />
    <preference for="Smartwave\Megamenu\Block\Topmenu" 
				type="MNM\Spitzner\Block\Topmenu" />
    <preference for="Magebees\Ajaxaddtocart\Observer\Addtocart" 
				type="MNM\Spitzner\Observer\Addtocart" /> 
    <preference for="Amasty\Conditions\Model\Rule\Condition\CustomerAttributes" 
				type="MNM\Spitzner\Model\Rule\Condition\CustomerAttributes" />
    <preference for="Threepartment\Debitpayment\Block\Info\Debitpayment" 
				type="MNM\Spitzner\Block\Info\Debitpayment" />
	<preference for="Magento\Review\Block\Adminhtml\Edit\Form" 
				type="MNM\Spitzner\Block\Magento\Review\Adminhtml\Edit\Form" />
	<preference for="Magento\Customer\Block\Widget\Name" 
				type="MNM\Spitzner\Block\Magento\Customer\Widget\Name" />
	<preference for="Sendinblue\Sendinblue\Model\Transport" 
				type="MNM\Spitzner\Overwrite\Model\Transport" />

    
    <type name="Magento\Framework\Console\CommandList">
       <arguments>
           <argument name="commands" xsi:type="array">
               <item name="mnm_spitzner_export_orders" 
					xsi:type="object">MNM\Spitzner\Console\ExportOrders</item>
           </argument>
       </arguments>
   </type> 
   
    <!-- Admin theme. Start -->
    <type name="Magento\Theme\Model\View\Design">
        <arguments>
             <argument name="themes" xsi:type="array">
                 <item name="adminhtml" xsi:type="string">MNM/spitzner</item>
             </argument>
         </arguments>
    </type>
    <!-- Admin theme. End -->
</config>