From 961072c96346948d1bc36d3af308ac5954cfb5cb Mon Sep 17 00:00:00 2001
From: Vincent Desmares <vincentd@nexedi.com>
Date: Tue, 28 Jul 2009 15:14:43 +0000
Subject: [PATCH] #vincentd Dont generate Order dict if there is no product in
 the cart. And fix the price of shipping to 0 if no shipping selected
 (shipping requierement is not to handle at this level).

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@28192 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 .../erp5_commerce/WebSite_getPaypalOrderParameterDict.xml  | 7 +++++++
 bt5/erp5_commerce/bt/revision                              | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/WebSite_getPaypalOrderParameterDict.xml b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/WebSite_getPaypalOrderParameterDict.xml
index 031f66c01c..a284b5a4de 100644
--- a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/WebSite_getPaypalOrderParameterDict.xml
+++ b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/WebSite_getPaypalOrderParameterDict.xml
@@ -59,11 +59,17 @@ if order_parameter_dict is None:\n
 \n
 shopping_cart = context.SaleOrder_getShoppingCart()\n
 shopping_cart_product_list = shopping_cart.SaleOrder_getShoppingCartItemList()\n
+\n
+if len(shopping_cart_product_list) == 0:\n
+  return None \n
+\n
 shopping_cart_price = float(shopping_cart.SaleOrder_getShoppingCartTotalPrice())\n
 taxes_amount = float(shopping_cart.SaleOrder_getShoppingCartTotalPrice(include_taxes=True, include_shipping=True)) - \\\n
                float(shopping_cart.SaleOrder_getShoppingCartTotalPrice(include_shipping=True));\n
 shipping = context.SaleOrder_getSelectedShippingResource()\n
 shipping_price = context.restrictedTraverse(shipping).getPrice()\n
+if shipping_price is None:\n
+  shipping_price = 0\n
 customer = context.SaleOrder_getShoppingCartCustomer()\n
 site_url = context.getWebSiteValue().absolute_url()\n
 \n
@@ -134,6 +140,7 @@ return order_parameter_dict\n
                             <string>None</string>
                             <string>shopping_cart</string>
                             <string>shopping_cart_product_list</string>
+                            <string>len</string>
                             <string>float</string>
                             <string>shopping_cart_price</string>
                             <string>True</string>
diff --git a/bt5/erp5_commerce/bt/revision b/bt5/erp5_commerce/bt/revision
index 70e1a64c23..aca544d017 100644
--- a/bt5/erp5_commerce/bt/revision
+++ b/bt5/erp5_commerce/bt/revision
@@ -1 +1 @@
-144
\ No newline at end of file
+145
\ No newline at end of file
-- 
2.30.9