# MLM Soft Integration #

## Changelog ##

## 2025-12-24 - version 3.15.13
* Added tax to cart&order subtotal. [EWalletApi.php]

## 2025-12-22 - version 3.15.12
* Increase axios timeouts

## 2025-12-17 - version 3.15.11
* Check the result of the `cancelOrder` function before proceeding. [EWalletCouponModule.php]

## 2025-12-15 - version 3.15.10
* New feature: Added the ability to use product variations.
	* Added `ProductTrait` class. [ProductTrait.php]
	* Added `MLMSoftWCProductVariation` class. [MLMSoftWCProductVariation.php]
	* Added `MLMSoftProductInterface` class. [MLMSoftProductInterface.php]
	* Updated `MLMSoftWCProduct` class. [MLMSoftWCProduct.php]
	* Updated `MLMSoftWCOrder` class. [MLMSoftWCOrder.php]

## 2025-12-10 - version 3.15.9
* Added the constant `MLMSOFT_PREVENT_CHECKING_APPLYING_COUPON` to prevent checking for applying coupon. This applies when using coupons other than `fixed_cart`.

## 2025-12-08 - version 3.15.8
* Prevent the use of a second coupon for the same order on the checkout page.

## 2025-12-05 - version 3.15.7
* Fixed the coupon be cancelled if it had already been used in an order.

## 2025-12-04 - version 3.15.6
* Using the `wooCheckoutPreserveShippingMethod` option to preserve the shipping method when applying an EWallet coupon.
* The rule to cancel an unpaid order with an expired coupon has been changed.
* Using the `woocommerce_blocks_loaded` action is deprecated. [WCPaymentBlockModule.php]
* MLMSoftAdminExtraPanel v.1.5.0
* Added new params for `MLMSoftWooCheckoutSupportForm`.
* Updated extra options, eWallet Block assets.

## 2025-12-01 - version 3.15.5
* Added new Checkout options tab.
* Added `woo_checkout_preserve_shipping_method` option.
* Woocommerce block support tab is deprecated.

## 2025-11-28 - version 3.15.4
* Added routing to the extra options page.

## 2025-11-26 - version 3.15.3
* Fixed issue with shipping method reset when applying bonus coupon. The selected shipping method is now preserved after applying eWallet coupon if it's still available. [EWalletCartHelper.php]

## 2025-11-24 - version 3.15.2
* Added routing for extra options page.

## 2025-11-20 - version 3.15.1
* Updated `About form fields` description. [AboutFormFields.php]
* Updated translations for extra options page. [MLMSoftAdminExtraPanel.php]
* Updated CSS rules for extra options page. [mlmsoft-extra-options.min.css]

## 2025-11-17 - version 3.15.0
* The `billing_phone` field can be added to the `my-account` registration form and processed before account creation.

## 2025-10-31 - version 3.14.0
* Storing the volume product fields (@see `volume_product_fields` option) to order meta.

## 2025-10-21 - version 3.13.0
* Using `has_block_in_checkout` function in `shippingMethodsUpdated` method. [EWalletBlockCartModule.php]
* Using `admin_notices` action instead of `wc_add_notice` function. [WCAccountModule.php]
* Added own `userProfileUpdate` callback function to `edit_user_profile_update` action. [WCAccountModule.php]
* Added a second attempt to save account data if an "Error while editing profile field" occurs. [WCAccountModule.php]

## 2025-10-20 - version 3.12.0
* Added `EWalletBlockCartHelper`, `EWalletBlockCartModule` classes.
* Updated `MLMSoftEWalletBlockGateway` class. [MLMSoftEWalletBlockGateway.php]
* Updated assets for `MLMSoftEWalletBlockGateway` class.
* Updated `MLMSoftEWalletGateway` class. [MLMSoftEWalletGateway.php]
* Updated `EWalletCartHelper` class. [EWalletCartHelper.php]

## 2025-10-17 - version 3.11.0
* Before remove the coupon, check the order status. [EWalletCartModule.php]
* Cancel an order containing an expired coupon. [EWalletCouponModule.php]

## 2025-10-15 - version 3.10.0
* If the coupon was created with an amount equal to 0, then you need to give the option to delete it. [EWalletCouponFrontend.php]
* Added filter for API error response. [MLMSoftApi3.php]

## 2025-10-09 - version 3.9.10
* Updated localization. [WCAccountModule.php]
* Updated PO/MO translations files.

## 2025-09-15 - version 3.9.9
* Updated `WCPaymentModule`, `MLMSoftEWalletBlockGateway` classes.
* Updated translations.

## 2025-09-12 - version 3.9.8
* Override payment localizations from WP on the checkout page in the payment module.

## 2025-08-12 - version 3.9.7
* Added automatic order note `[MSI] Order loaded to NRM` when volumes are successfully sent to MLM Soft. [WCOrderModule.php]
* Added translation support for order notes in Russian and English.

## 2025-07-22 - version 3.9.6
* Prevent coupon being removed using ajax action. [MLM-3163] [EWalletCouponModule.php]
* Prevent the removing of the coupon and the return of points to the bonus wallet in case of problems on the payment system payment page. [MLM-3172] [EWalletCartModule.php]

## 2025-07-01 - version 3.9.5
* Updated `EWalletCouponFrontend` class. [EWalletCouponFrontend.php]
* Prevent coupon being removed from URL. See an issue [MLM-3112] [EWalletCouponModule.php]

## 2025-06-08 - version 3.9.4
* Updated `EWalletCouponFrontend` class. See an issue [MLM-3029] [EWalletCouponFrontend.php]
* Block login for user blocked in NRM [MLM-3033]. [MLMSoftRemoteUser.php]
* Updated translations.

## 2025-06-04 - version 3.9.3
* Fixed an issue [MLM-3029] with cancel of coupon for completed orders. [EWalletCouponFrontend.php]
* Added localization for the payment module. [WCPaymentModule.php]

## 2025-03-24 - version 3.9.2
* EWalletApi: Added shipping tax to `shipping_total` property before creating coupon.

## 2025-03-17 - version 3.9.1
* Updated Extra Options admin page.
* Added support for external modules to prevent conflicts.
* Added translations.

## 2025-03-12 - version 3.9.0
* Added Extra Options admin page.
* Added support for Woocommerce blocks on the checkout page.
* New translations added.

## 2025-02-24 - version 3.8.4
* Changed text domain.
* Updated po/mo files.
* Add `mlmsoft_integration_translate` filter [class `MLMSoftPlugin`].

## 2025-02-21 - version 3.8.3
* Added the ability to go from the registration page to the OnlineOffice immediately after registration.

## 2025-02-20 - version 3.8.2
* Added class `deprecated-api2` to properly manage element visibility.

## 2025-02-17 - version 3.8.1
* Update deploy.sh

## 2025-01-31 - version 3.8.0
* Deprecated Api2.

## 2024-12-27 - version 3.7.2
* Added `simple-number-input` prop for EWallet payment component.
* Added filter the properties for EWallet payment component.

## 2024-12-23 - version 3.7.1
* EWalletApi: Added filter before creating a coupon.
* EWalletCartModule: Added filter for customizing translation.
* EWalletOrder: Fixed getting $operationTypeId.
* WCAccountModule: Added checking the payment method.
* WCAccountModule: Added filter for customizing translation.
* MLMSoftEWalletGateway: Added filter for customizing translation.

## 2024-11-27 - version 3.7.0
* Added WCOnlineOfficeModule.
* Tested up WP to: 6.7

## 2024-11-02 - version 3.6.7
* Added `key` prop for `showComponent` function in `MLMSoftEWalletGateway` class.
* Tested up WP to: 6.6

## 2024-09-04 - version 3.6.6
* Possibility of using custom CSS for checkout page.

## 2024-07-08 - version 3.6.5
* Tested up to: 6.5
* Updated translations.

## 2024-07-04 - version 3.6.4
* Added  a `registration_sponsor_field_attribute` option.
* Remove red error (issue MLM-1101).

## 2024-06-05 - version 3.6.3
* Using the walletId in the coupon code and $couponItems.

## 2024-03-04 - version 3.6.2
* Added use of the `sponsorID` field from the plugin on the `my-account` and `checkout` pages.

## 2024-03-01 - version 3.6.1
* A second e-wallet has been added.

## 2024-02-21 - version 3.5.8
* Small css and translation fixes.

## 2024-01-31 - version 3.5.7
* Checking the activity of coupons to prevent incorrect use of the e-wallet.

## 2024-01-23 - version 3.5.5
* Added $domainSignature property to the documentPayload array.

## 2023-12-21 - version 3.5.4
* Замена `add_post_meta` на `update_post_meta` чтобы не добавлять несколько мета.

## 2023-12-27 - version 3.5.4
* Fix the layout in coupon option tab.

## 2023-11-03 - version 3.5.2
* Редирект после аутентификации из внешнего сервиса на заданую в опциях страницу.

## 2023-10-30 - version 3.5.1
* Добавлена аутентификация из внешнего сервиса.

## 2023-07-27 - version 3.4.13
* Class `MLMSoftAccountInfoBlock`: Typecast to prevent `PHP Fatal error: Argument $haystack must be of type array, string given` in in_array function.
* Class `MLMSoftLocalUser`: Using `update_user_meta` function only to prevent adding multiple meta for each update.
  ( @see Description https://developer.wordpress.org/reference/functions/update_user_meta/ )
* Class `MLMSoftAdminPanel`: Revising of the function with the addition of an action.