by Jack Swartz » Sat Feb 22, 2014 3:24 pm
Hi Jim,
I understand what you are saying, but the presentation is or can be independent of the shopping cart states.
Please confirm our model of the shopping cart. We are in the shopping cart any time we reference a cgi-bin module with the storeid and shopinfo/sbid supplied in the URL.
To access the user transaction in the database, a cgi-bin module needs both the storeid and the current cart transaction. The storeid is specified by supplying the argument
storeid in all cgi modules (billing.cgi, order.cgi, and registration.cgi). The current shopping cart transaction is denoted by supplying sbid in the URL for
registration.cgi and order.cgi but it appears as shopinfo in the billing.cgi module. Each cgi-bin module has a state which depends on storeid/sbid pair and the
referring URL which is fed in as the fromid argument to the module. The cgi modules also take redirect as an argument. What does that do? Is there any
documentation on the arguments to the shopping cart modules (billing.cgi,order.cgi, and registration.cgi) ?
What we would like to see is the billing.cgi module be able to take registration as a fromid. What would
it take to achieve this behavior? Currently, the cart has the following behavior which has a step from registration.cgi to order.cgi which completely confuses customers as you go backwards a step.
http://www.bodydynamics.com/cgi-bin/sc/order.cgi?rd=1&storeid=*0e9ea5320d7d210691&sbid=SSMSB7826892651589039000.2331&redirect=yes
http://www.bodydynamics.com/cgi-bin/sc/order.cgi
https://www.bodydynamics.com/cgi-bin/sc/billing.cgi?storeid=*0e9ea5320d7d210691&fromid=order.cgi&redirect=yes&shopinfo=SSMSB7826892651589039000.2331
https://www.bodydynamics.com/cgi-bin/sc/registration.cgi?sbid=SSMSB7826892651589039000.2331&func=2&storeid=*0e9ea5320d7d210691&html_reg=html
https://www.bodydynamics.com/cgi-bin/sc/registration.cgi?sbid=SSMSB7826892651589039000.2331&func=3&html_reg=html&storeid=*0e9ea5320d7d210691
http://www.bodydynamics.com/cgi-bin/sc/order.cgi?storeid=*0e9ea5320d7d210691&sbid=SSMSB7826892651589039000.2331&fromid=g
https://www.bodydynamics.com/cgi-bin/sc/billing.cgi?storeid=*0e9ea5320d7d210691&fromid=order.cgi&redirect=yes&shopinfo=SSMSB7826892651589039000.2331
https://www.bodydynamics.com/cgi-bin/sc/thankyou.cgi
Instead, we would like to see:
http://www.bodydynamics.com/cgi-bin/sc/order.cgi?rd=1&storeid=*0e9ea5320d7d210691&sbid=SSMSB7826892651589039000.2331&redirect=yes
http://www.bodydynamics.com/cgi-bin/sc/order.cgi
https://www.bodydynamics.com/cgi-bin/sc/billing.cgi?storeid=*0e9ea5320d7d210691&fromid=order.cgi&redirect=yes&shopinfo=SSMSB7826892651589039000.2331
https://www.bodydynamics.com/cgi-bin/sc/registration.cgi?sbid=SSMSB7826892651589039000.2331&func=2&storeid=*0e9ea5320d7d210691&html_reg=html
https://www.bodydynamics.com/cgi-bin/sc/registration.cgi?sbid=SSMSB7826892651589039000.2331&func=3&html_reg=html&storeid=*0e9ea5320d7d210691
https://www.bodydynamics.com/cgi-bin/sc/billing.cgi?storeid=*0e9ea5320d7d210691&fromid=registration.cgi&redirect=yes&shopinfo=SSMSB7826892651589039000.2331
https://www.bodydynamics.com/cgi-bin/sc/thankyou.cgi
This eliminates an unnecessary step as the cart has already begun the checkout process and should return to it. There isn't any new information to be added to the order.cgi at this point but
billing.cgi should be updated. Why go backwards?
While it is apparent that order.cgi is significantly bigger (order.cgi = 533552 bytes versus billing.cgi = 136524 bytes), both modules reference the same libraries and have
ability to update the database. While adding the fromid=registration.cgi to the billing.cgi module might require some coding, it would greatly enhance the user experience. Does this help explain our requirements?
Thank you so much for your time and patience.