Пример #1
0
 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));
 }