From 8e9a22113bee8b2a700367f568945b51708fba72 Mon Sep 17 00:00:00 2001 From: tunderdomb Date: Mon, 29 Aug 2016 14:51:49 +0200 Subject: [PATCH 1/2] check item class Only call `getCode` if the item is a PayPalItem instance. --- src/Message/AbstractRequest.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Message/AbstractRequest.php b/src/Message/AbstractRequest.php index 4f580ae..46ad2e7 100644 --- a/src/Message/AbstractRequest.php +++ b/src/Message/AbstractRequest.php @@ -6,6 +6,7 @@ namespace Omnipay\PayPal\Message; use Omnipay\Common\ItemBag; +use Omnipay\PayPal\PayPalItem; use Omnipay\PayPal\PayPalItemBag; /** @@ -305,7 +306,9 @@ protected function getItemData() $data["L_PAYMENTREQUEST_0_DESC$n"] = $item->getDescription(); $data["L_PAYMENTREQUEST_0_QTY$n"] = $item->getQuantity(); $data["L_PAYMENTREQUEST_0_AMT$n"] = $this->formatCurrency($item->getPrice()); - $data["L_PAYMENTREQUEST_0_NUMBER$n"] = $item->getCode(); + if ($item instanceof PayPalItem) { + $data["L_PAYMENTREQUEST_0_NUMBER$n"] = $item->getCode(); + } $data["PAYMENTREQUEST_0_ITEMAMT"] += $item->getQuantity() * $this->formatCurrency($item->getPrice()); } From d6f345ab3d0aee877d2f62dca85d7fd616753cf3 Mon Sep 17 00:00:00 2001 From: tunderdomb Date: Mon, 29 Aug 2016 15:18:29 +0200 Subject: [PATCH 2/2] fix lingering whitespace --- src/Message/AbstractRequest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Message/AbstractRequest.php b/src/Message/AbstractRequest.php index 46ad2e7..0885093 100644 --- a/src/Message/AbstractRequest.php +++ b/src/Message/AbstractRequest.php @@ -307,7 +307,7 @@ protected function getItemData() $data["L_PAYMENTREQUEST_0_QTY$n"] = $item->getQuantity(); $data["L_PAYMENTREQUEST_0_AMT$n"] = $this->formatCurrency($item->getPrice()); if ($item instanceof PayPalItem) { - $data["L_PAYMENTREQUEST_0_NUMBER$n"] = $item->getCode(); + $data["L_PAYMENTREQUEST_0_NUMBER$n"] = $item->getCode(); } $data["PAYMENTREQUEST_0_ITEMAMT"] += $item->getQuantity() * $this->formatCurrency($item->getPrice());