public function getAdaptivePaymentItems($offer_items) { $this->item_list = PaypalPayment::ItemList(); foreach ($offer_items['items'] as $offer_item) { if ($offer_item['type'] == 'Package') { foreach ($offer_item['children'] as $package) { $this->total += $package['item_price'] * $package['sessions']; $item = PaypalPayment::Item(); $item->setQuantity("" . $package['sessions']); $item->setName($package['item_name']); $item->setPrice("" . $package['item_price']); $item->setCurrency('AUD'); $item->setSku("" . $package['id']); $this->items[] = $item; } } else { if ($offer_item['type'] == 'Service') { $this->total += $offer_item['sessions'] * $offer_item['session_price']; $item = PaypalPayment::Item(); $item->setQuantity("" . $offer_item['sessions']); $item->setName($offer_item['item_name']); $item->setPrice(number_format($offer_item['session_price'], 2)); $item->setCurrency('AUD'); $item->setSku("" . $offer_item['id']); $this->items[] = $item; if ($offer_item['travel_time']) { $this->total += $offer_item['trip_price']; $item = PaypalPayment::Item(); $item->setQuantity("1"); $item->setName("Travel Time for" . $offer_item['item_name']); $item->setPrice(number_format($offer_item['trip_price'], 2)); $item->setCurrency('AUD'); $item->setSku("" . $offer_item['id']); $this->items[] = $item; } } else { $this->total += $offer_item['item_price']; $item = PaypalPayment::Item(); $item->setQuantity("1"); $item->setName($offer_item['item_name']); $item->setPrice(number_format($offer_item['item_price'], 2)); $item->setCurrency('AUD'); $item->setSku("" . $offer_item['id']); $this->items[] = $item; if ($offer_item['shipping_id'] != 0) { $this->total += $offer_item['shipping_price']; $item = PaypalPayment::Item(); $item->setQuantity("1"); $item->setName($offer_item['shipping_name']); $item->setPrice(number_format($offer_item['shipping_price'], 2)); $item->setCurrency('AUD'); $item->setSku("shipping_" . $offer_item['id']); $this->items[] = $item; } else { /*$item = PaypalPayment::Item(); $item->setQuantity("1"); $item->setName("Pickup"); $item->setPrice("0.00"); $item->setCurrency('AUD'); $item->setSku("shipping_".$offer_item['id']);*/ } } } } $this->item_list->setItems($this->items); //set amount $this->setAmount(number_format($this->total, 2)); }