Index: openacs-4/packages/ecommerce/www/shopping-cart-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/shopping-cart-oracle.xql,v diff -u -r1.2 -r1.3 --- openacs-4/packages/ecommerce/www/shopping-cart-oracle.xql 26 May 2002 04:36:50 -0000 1.2 +++ openacs-4/packages/ecommerce/www/shopping-cart-oracle.xql 19 Sep 2002 03:24:55 -0000 1.3 @@ -8,27 +8,15 @@ - select p.product_name, p.one_line_description, p.product_id, count(*) as quantity, u.offer_code, i.color_choice, i.size_choice, i.style_choice - from ec_orders o, ec_items i, ec_products p, - (select product_id, offer_code from ec_user_session_offer_codes usoc where usoc.user_session_id=:user_session_id) u - where i.product_id=p.product_id - and o.order_id=i.order_id - and p.product_id=u.product_id(+) - and o.user_session_id=:user_session_id and o.order_state='in_basket' - group by p.product_name, p.one_line_description, p.product_id, u.offer_code, i.color_choice, i.size_choice, i.style_choice + select p.product_name, p.one_line_description, p.product_id, count(*) as quantity, u.offer_code, i.color_choice, i.size_choice, i.style_choice, '' as price + from ec_orders o, ec_items i, ec_products p, + (select product_id, offer_code from ec_user_session_offer_codes usoc where usoc.user_session_id=:user_session_id) u + where i.product_id=p.product_id + and o.order_id=i.order_id + and p.product_id=u.product_id(+) + and o.user_session_id=:user_session_id and o.order_state='in_basket' + group by p.product_name, p.one_line_description, p.product_id, u.offer_code, i.color_choice, i.size_choice, i.style_choice - - - select 1 - from dual - where exists (select 1 - from ec_orders - where user_id=:user_id - and order_state='in_basket' - and saved_p='t') - - - Index: openacs-4/packages/ecommerce/www/shopping-cart-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/shopping-cart-postgresql.xql,v diff -u -r1.2 -r1.3 --- openacs-4/packages/ecommerce/www/shopping-cart-postgresql.xql 26 May 2002 04:36:50 -0000 1.2 +++ openacs-4/packages/ecommerce/www/shopping-cart-postgresql.xql 19 Sep 2002 03:24:55 -0000 1.3 @@ -6,13 +6,18 @@ 7.1 - + - select 1 where exists (select 1 - from ec_orders - where user_id=:user_id - and order_state = 'in_basket' - and saved_p='t') + select p.product_name, p.one_line_description, p.product_id, count(*) as quantity, u.offer_code, i.color_choice, i.size_choice, i.style_choice, '' as price + from ec_orders o + join ec_items i on (o.order_id=i.order_id) + join ec_products p on (i.product_id=p.product_id) + left join (select product_id, offer_code + from ec_user_session_offer_codes usoc + where usoc.user_session_id=:user_session_id) u on (p.product_id=u.product_id) + where o.user_session_id=:user_session_id + and o.order_state='in_basket' + group by p.product_name, p.one_line_description, p.product_id, u.offer_code, i.color_choice, i.size_choice, i.style_choice Index: openacs-4/packages/ecommerce/www/shopping-cart.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/shopping-cart.adp,v diff -u -r1.4 -r1.5 --- openacs-4/packages/ecommerce/www/shopping-cart.adp 17 Sep 2002 03:36:34 -0000 1.4 +++ openacs-4/packages/ecommerce/www/shopping-cart.adp 19 Sep 2002 03:24:55 -0000 1.5 @@ -45,10 +45,8 @@ name="quantity.@in_cart.product_id@ {@in_cart.color_choice@} {@in_cart.size_choice@} {@in_cart.style_choice@}" value="@in_cart.quantity@" size=4 maxlength=4> + @in_cart.price@ - @price_line@ - - delete Index: openacs-4/packages/ecommerce/www/shopping-cart.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/shopping-cart.tcl,v diff -u -r1.7 -r1.8 --- openacs-4/packages/ecommerce/www/shopping-cart.tcl 17 Sep 2002 03:36:34 -0000 1.7 +++ openacs-4/packages/ecommerce/www/shopping-cart.tcl 19 Sep 2002 03:24:55 -0000 1.8 @@ -59,15 +59,28 @@ set total_price 0 db_multirow in_cart get_products_in_cart " - select p.product_name, p.one_line_description, p.product_id, count(*) as quantity, u.offer_code, i.color_choice, i.size_choice, i.style_choice - from ec_orders o, ec_items i, ec_products p, - (select product_id, offer_code from ec_user_session_offer_codes usoc where usoc.user_session_id=:user_session_id) u - where i.product_id=p.product_id - and o.order_id=i.order_id - and p.product_id=u.product_id(+) - and o.user_session_id=:user_session_id and o.order_state='in_basket' - group by p.product_name, p.one_line_description, p.product_id, u.offer_code, i.color_choice, i.size_choice, i.style_choice" { + select p.product_name, p.one_line_description, p.product_id, count(*) as quantity, u.offer_code, i.color_choice, i.size_choice, i.style_choice, '' as price + from ec_orders o + join ec_items i on (o.order_id=i.order_id) + join ec_products p on (i.product_id=p.product_id) + left join (select product_id, offer_code + from ec_user_session_offer_codes usoc + where usoc.user_session_id=:user_session_id) u on (p.product_id=u.product_id) + where o.user_session_id=:user_session_id + and o.order_state='in_basket' + group by p.product_name, p.one_line_description, p.product_id, u.offer_code, i.color_choice, i.size_choice, i.style_choice" +for {set i 1} {$i <= [multirow size in_cart]} {incr i} { + + set product_name [multirow get in_cart $i product_name] + set one_line_description [multirow get in_cart $i one_line_description] + set product_id [multirow get in_cart $i product_id] + set quantity [multirow get in_cart $i quantity] + set offer_code [multirow get in_cart $i offer_code] + set color_choice [multirow get in_cart $i color_choice] + set size_choice [multirow get in_cart $i size_choice] + set style_choice [multirow get in_cart $i style_choice] + # Deletions are done by product_id, color_choice, size_choice, # style_choice, not by item_id because we want to delete the # entire quantity of that product. Also print the price for a @@ -87,6 +100,10 @@ set total_price [expr $total_price + ($quantity * $lowest_price)] incr product_counter $quantity + + multirow set in_cart $i price "[lindex $lowest_price_and_price_name 1]:  [ec_pretty_price [lindex $lowest_price_and_price_name 0] [ad_parameter -package_id [ec_id] Currency]]" + + multirow set in_cart $i price "[lindex $lowest_price_and_price_name 1]:  [ec_pretty_price [lindex $lowest_price_and_price_name 0] [ad_parameter -package_id [ec_id] Currency]]" } # Add adjust quantities line if there are products in the cart. Index: openacs-4/packages/ecommerce/www/shopping-cart.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/shopping-cart.xql,v diff -u -r1.4 -r1.5 --- openacs-4/packages/ecommerce/www/shopping-cart.xql 26 May 2002 04:36:50 -0000 1.4 +++ openacs-4/packages/ecommerce/www/shopping-cart.xql 19 Sep 2002 03:24:55 -0000 1.5 @@ -11,21 +11,6 @@ - - - select p.product_name, p.one_line_description, p.product_id, count(*) as quantity, u.offer_code, i.color_choice, i.size_choice, i.style_choice - from ec_orders o - join ec_items i on (o.order_id=i.order_id) - join ec_products p on (i.product_id=p.product_id) - left join (select product_id, offer_code - from ec_user_session_offer_codes usoc - where usoc.user_session_id=:user_session_id) u on (p.product_id=u.product_id) - where o.user_session_id=:user_session_id - and o.order_state='in_basket' - group by p.product_name, p.one_line_description, p.product_id, u.offer_code, i.color_choice, i.size_choice, i.style_choice - - - select tax_rate, initcap(state_name) as state