MultipleValue.php 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Braintree\Model\Report\ConditionAppliers;
  7. use Braintree\MultipleValueNode;
  8. /**
  9. * MultipleValue applier
  10. */
  11. class MultipleValue implements ApplierInterface
  12. {
  13. /**
  14. * Apply filter condition
  15. *
  16. * @param MultipleValueNode $field
  17. * @param string $condition
  18. * @param mixed $value
  19. * @return bool
  20. */
  21. public function apply($field, $condition, $value)
  22. {
  23. $result = false;
  24. switch ($condition) {
  25. case ApplierInterface::IN:
  26. $field->in($value);
  27. $result = true;
  28. break;
  29. case ApplierInterface::EQ:
  30. $field->is($value);
  31. $result = true;
  32. break;
  33. case ApplierInterface::LIKE:
  34. $value = trim($value, "% \r\n\t");
  35. $field->is($value);
  36. $result = true;
  37. break;
  38. }
  39. return $result;
  40. }
  41. }