From 7058cd77e2efc82d91d98b96e9b049804d2320cf Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Thu, 4 Jan 2018 18:22:09 +0200 Subject: [PATCH] Support multiple products with API/Zapier --- app/Http/Controllers/InvoiceApiController.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/Http/Controllers/InvoiceApiController.php b/app/Http/Controllers/InvoiceApiController.php index 9e926ae3bb4b..1510325c8d92 100644 --- a/app/Http/Controllers/InvoiceApiController.php +++ b/app/Http/Controllers/InvoiceApiController.php @@ -278,6 +278,16 @@ class InvoiceApiController extends BaseAPIController unset($data['invoice_items'][0]['tax_rate2']); } else { foreach ($data['invoice_items'] as $index => $item) { + // check for multiple products + if ($productKey = array_get($item, 'product_key')) { + $parts = explode(',', $productKey); + if (count($parts) > 1 && Product::findProductByKey($parts[0])) { + foreach ($parts as $index => $productKey) { + $data['invoice_items'][$index] = self::prepareItem(['product_key' => $productKey]); + } + break; + } + } $data['invoice_items'][$index] = self::prepareItem($item); } }