コード例 #1
0
 function updatePriceInfo($productCollectionID, &$basketInfo)
 {
     $shippingInfo = eZShippingManager::getShippingInfo($productCollectionID);
     $additionalShippingValues = eZShippingManager::vatPriceInfo($shippingInfo);
     $returnValue = false;
     foreach ($additionalShippingValues['shipping_vat_list'] as $vatValue => $additionalShippingValueArray) {
         $shippingExVAT = $additionalShippingValueArray['shipping_ex_vat'];
         $shippingIncVAT = $additionalShippingValueArray['shipping_inc_vat'];
         $shippingVat = $additionalShippingValueArray['shipping_vat'];
         if (!isset($basketInfo['price_info'][$vatValue]['total_price_ex_vat'])) {
             $basketInfo['price_info'][$vatValue]['total_price_ex_vat'] = $shippingExVAT;
             $basketInfo['price_info'][$vatValue]['total_price_inc_vat'] = $shippingIncVAT;
             $basketInfo['price_info'][$vatValue]['total_price_vat'] = $shippingVat;
             $basketInfo['total_price_info']['total_price_ex_vat'] = $shippingExVAT;
             $basketInfo['total_price_info']['total_price_inc_vat'] = $shippingIncVAT;
             $basketInfo['total_price_info']['total_price_vat'] = $shippingVat;
         } else {
             $basketInfo['price_info'][$vatValue]['total_price_ex_vat'] += $shippingExVAT;
             $basketInfo['price_info'][$vatValue]['total_price_inc_vat'] += $shippingIncVAT;
             $basketInfo['price_info'][$vatValue]['total_price_vat'] += $shippingVat;
             $basketInfo['total_price_info']['total_price_ex_vat'] += $shippingExVAT;
             $basketInfo['total_price_info']['total_price_inc_vat'] += $shippingIncVAT;
             $basketInfo['total_price_info']['total_price_vat'] += $shippingVat;
         }
         if (!isset($basketInfo['additional_info']['shipping_items'][$vatValue]['total_price_ex_vat'])) {
             $basketInfo['additional_info']['shipping_items'][$vatValue]['total_price_ex_vat'] = $shippingExVAT;
             $basketInfo['additional_info']['shipping_items'][$vatValue]['total_price_inc_vat'] = $shippingIncVAT;
             $basketInfo['additional_info']['shipping_items'][$vatValue]['total_price_vat'] = $shippingIncVAT - $shippingExVAT;
         } else {
             $basketInfo['additional_info']['shipping_items'][$vatValue]['total_price_ex_vat'] += $shippingExVAT;
             $basketInfo['additional_info']['shipping_items'][$vatValue]['total_price_inc_vat'] += $shippingIncVAT;
             $basketInfo['additional_info']['shipping_items'][$vatValue]['total_price_vat'] += $shippingIncVAT - $shippingExVAT;
         }
         if (!isset($basketInfo['additional_info']['shipping_total']['total_price_ex_vat'])) {
             $basketInfo['additional_info']['shipping_total']['total_price_ex_vat'] = $shippingExVAT;
             $basketInfo['additional_info']['shipping_total']['total_price_inc_vat'] = $shippingIncVAT;
             $basketInfo['additional_info']['shipping_total']['total_price_vat'] = $shippingIncVAT - $shippingExVAT;
         } else {
             $basketInfo['additional_info']['shipping_total']['total_price_ex_vat'] += $shippingExVAT;
             $basketInfo['additional_info']['shipping_total']['total_price_inc_vat'] += $shippingIncVAT;
             $basketInfo['additional_info']['shipping_total']['total_price_vat'] += $shippingIncVAT - $shippingExVAT;
         }
     }
     if (count($additionalShippingValues['shipping_vat_list']) > 0) {
         $returnValue = true;
     }
     return $returnValue;
 }
コード例 #2
0
ファイル: basket.php プロジェクト: CG77/ezpublish-legacy
$basket = eZBasket::currentBasket();
$tpl = eZTemplate::factory();
if (isset($Params['Error'])) {
    $tpl->setVariable('error', $Params['Error']);
    if ($Params['Error'] == 'options') {
        $tpl->setVariable('error_data', $http->sessionVariable('BasketError'));
        $http->removeSessionVariable('BasketError');
    }
}
$tpl->setVariable("removed_items", $removedItems);
$tpl->setVariable("basket", $basket);
$tpl->setVariable("module_name", 'shop');
$tpl->setVariable("vat_is_known", $basket->isVATKnown());
// Add shipping cost to the total items price and store the sum to corresponding template vars.
$shippingInfo = eZShippingManager::getShippingInfo($basket->attribute('productcollection_id'));
if ($shippingInfo !== null) {
    // to make backwards compability with old version, allways set the cost inclusive vat.
    if (isset($shippingInfo['is_vat_inc']) and $shippingInfo['is_vat_inc'] == 0 or !isset($shippingInfo['is_vat_inc'])) {
        $additionalShippingValues = eZShippingManager::vatPriceInfo($shippingInfo);
        $shippingInfo['cost'] = $additionalShippingValues['total_shipping_inc_vat'];
        $shippingInfo['is_vat_inc'] = 1;
    }
    $totalIncShippingExVat = $basket->attribute('total_ex_vat') + $shippingInfo['cost'];
    $totalIncShippingIncVat = $basket->attribute('total_inc_vat') + $shippingInfo['cost'];
    $tpl->setVariable('shipping_info', $shippingInfo);
    $tpl->setVariable('total_inc_shipping_ex_vat', $totalIncShippingExVat);
    $tpl->setVariable('total_inc_shipping_inc_vat', $totalIncShippingIncVat);
}
$Result = array();
$Result['content'] = $tpl->fetch("design:shop/basket.tpl");
$Result['path'] = array(array('url' => false, 'text' => ezpI18n::tr('kernel/shop', 'Basket')));