If for some reason no shipping quote is returned when a user clicks "Click to calculate shipping" AND "Prevent the customer from completing an order if a shipping quote is not selected." is enabled under /admin/store/settings/quotes/edit, the user is left with no error message and no explanation yet cannot proceed to checkout. This is unintuitive and confusing for the user. I consider it an error condition if no shipping quote is returned yet a shipping quote is required to proceed to checkout. The "Shipping quote error message" found on at /admin/store/settings/quotes/edit should be displayed when this happens.

I have specifically seen this happen with the USPS shipping quote module, but it may affect other shipping quote methods.

Comments

Island Usurper’s picture

Status: Active » Postponed (maintainer needs more info)

As near as I can tell, that error message is displayed, and there is another red error message if the customer tries to continue checkout anyway. Now, if you're thinking of the cart page, then there isn't any kind of check there to prevent the customer from going to the cart page. The error message from the quotes settings page still appears when there aren't any quotes, though.

Is there possibly anything wrong with your Javascript or your theme that would keep this from handling errors correctly?

nkinkade’s picture

Hmm. We Just to clarify, this is happening when the user goes to checkout ... on the same page where the user fills in shipping and billing addresses. I would say that javascript is working okay, else the "Click to calculate shipping" button wouldn't work at all, and shipping quotes *do* work under some circumstances, which is further proof that the javascript code is working.

The issue is that when the XML returned by the USPS API doesn't contain any of the options that are selected in the Ubercart shipping quote config no shipping quote is returned. That is, when the intersection between the quotes the USPS API returns and the USPS shipping methods configured in Ubercart is equal to 0.

When this happens, a user clicks "Click to calculate shipping," they get the little moving status bar indicating that Ubercart is thinking and then nothing is returned but a square

with no contents, with a 1px black border. No error, just no shipping methods.

I think this should be fairly easy to reproduce. Add a product that weights 10lbs and has some absurd dimensions. Then in the Ubercart config only enable envelope and flat shipping methods. Then try to checkout with one of those items selected. If you are unable to reproduce this, I can configure our testing server to reproduce this bug so that you can see it in the wild.

Thanks so much for your help!

Island Usurper’s picture

I still get the error message, and the debug output shows the shipping options that have been filtered out.

Can you upgrade to rc7 so we can be sure that this isn't something that was fixed already? There were a lot of bugs fixed between rc3 and rc6.

TR’s picture

Status: Postponed (maintainer needs more info) » Closed (fixed)

Since the original poster hasn't followed up, I'm going to assume the problem was solved by upgrading to the latest version of Ubercart as suggested by #3. If you continue to have this problem and can reproduce it using the latest version you may re-open the issue.