Correct way to clear cart without logging the user out?
I have a small web site that should work like this:
* User adds product to cart, and gets sent to the cart page
* On the "viewcart" page, when they click "check out", they are required to log in (or register) if they are not already logged in
* Once logged in, the billing/shipping address form fields are automatically populated from the info saved when they registered.
* Once they check out, they are sent to the confirmation page.
I've used the SuperSuite to build this site (eCart5, DataAssist, SecurityAssist, etc)
The problem I'm having is that once the customer reaches the confirmation_success page, the cart is not being emptied. So if they go back to "view cart", the items they just bought are still in the cart, or if they add a new item to the cart, they will see both the old and the new.
Further more, if they manually clear out the old cart contents, and add a new item and purchase it, instead of adding a new order to the database (with a new order ID) the record for the previous order is modified instead! And in the orderdetail table, the old detail record is removed and a new record is inserted, still referencing the old order ID#
I used the CookieToolkit to add a "Clear Session Values" server behavior to the confirmation_success page, which does get around all the above listed problems, but causes a new one: the user is now "logged out" of the site and has to log back in again.
I may be getting confused by the terminology (especially the term "session") but what I need to do is empty the cart and change ... should I call it the sessionID? ... but NOT log the user out.
So that they can continue using the site and place new orders correctly without having to "log in" again.
What is the correct way to handle this?
(If my explanation is not clear, please ask and I'll try again)