PriceBackend.php 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Bundle\Model\Plugin;
  7. /**
  8. * Class PriceBackend
  9. *
  10. * Make price validation optional for bundle dynamic
  11. */
  12. class PriceBackend
  13. {
  14. /**
  15. * @param \Magento\Catalog\Model\Product\Attribute\Backend\Price $subject
  16. * @param \Closure $proceed
  17. * @param \Magento\Catalog\Model\Product|\Magento\Framework\DataObject $object
  18. * @return bool
  19. * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  20. */
  21. public function aroundValidate(
  22. \Magento\Catalog\Model\Product\Attribute\Backend\Price $subject,
  23. \Closure $proceed,
  24. $object
  25. ) {
  26. if ($object instanceof \Magento\Catalog\Model\Product
  27. && $object->getTypeId() == \Magento\Catalog\Model\Product\Type::TYPE_BUNDLE
  28. && $object->getPriceType() == \Magento\Bundle\Model\Product\Price::PRICE_TYPE_DYNAMIC
  29. ) {
  30. return true;
  31. }
  32. return $proceed($object);
  33. }
  34. }