This commit is contained in:
Patrick Henninger
2020-08-29 22:12:00 +02:00
parent 43e440c485
commit a215c63165
5 changed files with 6 additions and 8 deletions

View File

@@ -7,7 +7,7 @@ use Gloudemans\Shoppingcart\Contracts\Calculator;
class DefaultCalculator implements Calculator class DefaultCalculator implements Calculator
{ {
static function getAttribute(string $attribute, CartItem $cartItem) public static function getAttribute(string $attribute, CartItem $cartItem)
{ {
$decimals = config('cart.format.decimals', 2); $decimals = config('cart.format.decimals', 2);

View File

@@ -7,7 +7,7 @@ use Gloudemans\Shoppingcart\Contracts\Calculator;
class GrossPrice implements Calculator class GrossPrice implements Calculator
{ {
static function getAttribute(string $attribute, CartItem $cartItem) public static function getAttribute(string $attribute, CartItem $cartItem)
{ {
$decimals = config('cart.format.decimals', 2); $decimals = config('cart.format.decimals', 2);

View File

@@ -402,13 +402,11 @@ class CartItem implements Arrayable, Jsonable
} }
$class = new ReflectionClass(config('cart.calculator', DefaultCalculator::class)); $class = new ReflectionClass(config('cart.calculator', DefaultCalculator::class));
if (!$class->implementsInterface(Calculator::class)) if (!$class->implementsInterface(Calculator::class)) {
{
throw new InvalidCalculatorException('The configured Calculator seems to be invalid. Calculators have to implement the Calculator Contract.'); throw new InvalidCalculatorException('The configured Calculator seems to be invalid. Calculators have to implement the Calculator Contract.');
} }
return call_user_func($class->getName().'::getAttribute', $attribute, $this); return call_user_func($class->getName().'::getAttribute', $attribute, $this);
} }
/** /**

View File

@@ -6,5 +6,5 @@ use Gloudemans\Shoppingcart\CartItem;
interface Calculator interface Calculator
{ {
static function getAttribute(string $attribute, CartItem $cartItem); public static function getAttribute(string $attribute, CartItem $cartItem);
} }

View File

@@ -6,4 +6,4 @@ use RuntimeException;
class InvalidCalculatorException extends RuntimeException class InvalidCalculatorException extends RuntimeException
{ {
} }