HotcakesCommerce / hotcakes-commerce-core

The core of the e-commerce part of the overall solution. This is an ecommerce shopping cart solution built on top of the DNN (DotNetNuke) CMS. Anyone can do commerce online now!
https://mmmcommerce.com
MIT License
68 stars 55 forks source link

CI: Error with QuickAddSku vs AddSku #364

Closed moorecreative closed 2 years ago

moorecreative commented 3 years ago

Describe the bug

A clear and concise description of what the bug is.

Software Versions

To Reproduce

Steps to reproduce the behavior:

  1. click on a link which uses the QuickAddSku URL such as /HotcakesPages/Cart?QuickAddSku=THX1138&QuickAddQty=1
  2. see that the correct quantity is present
  3. click on a second different product link with the QuickAddSku such as /HotcakesPages/Cart?QuickAddSku=C3PO&QuickAddQty=1
  4. See error in result that the second item is added to the cart, but the first item is also increased in quantity to 2

Expected behavior

Not this

Actual behavior

The most bizarre symptoms of an error when using QuickAddSku vs AddSku after Hotcakes 3.5.0 upgrade

Error log

No errors are displayed in the Admin Logs during this action

Additional context

I'm posting a bit of information as a warning to others who might experience this same issue (in the forum https://mmmcommerce.com/Forums/g/Posts/m/1630/Error-with-QuickAddSku-vs-AddSku)

We upgraded a DNN 8x Hotcakes instance up to DNN 9.8 Hotcakes 3.5.0 and while the site looks good and works well without asp.net errors or errors in the Admin Logs, it is doing some REALLY WEIRD things in cart actions!

In this site, links were used througout the site in other modules for "Add to Cart" buttons which used the Hotcakes URL querystring action https://www.domainname.com/HotcakesPages/Cart?QuickAddSku=THX1138&QuickAddQty=1

[i](This type of url query string link is documented in this HC page: https://hotcakescommerce.zendesk.com/hc/en-us/articles/205426245-Add-Products-to-Cart-and-More-Using-Links)[/i]

Before the upgrade, they worked perfectly well. After the upgrade, the following odd actions occur: [list] []when adding a first one, everything goes correctly []when adding a second item to cart, the previously added product would increase quantity from 1 to 2 []when adding a third item to the cart, the previously (the second one) would increase quantity from 1 to 2 and so on []when deleting any of the three, the fourth one stayed at 2 and then stays at 2 [*]any product added through the quickadd query string would be subject to odd actions, but normally (buttons on detail page, etc) added products are unaffected [/list]

Once we changed it to use the other "non" quick add query string, everything works correctly so using the AddSku does not have that problem https://www.domainname.com/HotcakesPages/Cart?AddSku=THX1138&AddQty=1

erw13n commented 2 years ago

@moorecreative I cannot reproduce this issue. QuickAddSku and AddSku both is working. Can you try it on fresh environment?

If we check the code that use, nothing seems wrong with it.

moorecreative commented 2 years ago

Yes, it appeared to be something that, with old customized views and templates vs the core default, this issue occurs. It is a completely odd thing for this to be working OK in earlier Hotcakes 3 but then after an upgrade to 3.5 this odd variance of behavior ocurrs.

It would be wonderful if, as Hoctakes improves, it's older version use templates didn't start behaving so erratically. Updates over time is understood, but it seems to often come down to wiping out the customized styles to reset anytime there is an updated HC version and that places a higher burden on client updates with each HC version upgrade.

WillStrohl commented 2 years ago

Hello Ryan:

Thank you for reporting this issue and for your comments. Please know that the viewsets have been tested pretty thoroughly and if it can't be reproduced, then the issue is almost certainly environmental - usually having to do with customizations using one of the extension points. This is no different from DNN itself.

The viewsets are not behaving erratically and they passed all of our tests in each release since I've been involved in Hotcakes in 2013.

Reviewing and updating your viewsets as part of your upgrade process has always been a requirement since Hotcakes Commerce was first released.

In your case, I'm guessing this has a lot more to do with your integration of XMod. Historically, I can see this being a root cause of most of the issues reported when you had a support plan with us.

None of the styles or APIs or anything else have been removed except as done via expiring/deprecated APIs, and those have two major versions for anyone to see and react to over the years. Even the deprecated viewset has been retained for reference for anyone using Hotcakes without modifications over the years.

On a side note, the terms you used to describe this issue were a bit strong and I personally found them to be accusatory and offensive. I respectfully ask that you please consider the people that will be reading these public comments before posting them. More positive dialogs will go a long way toward ensuring a long-term solution for anything being discussed.

https://github.com/HotcakesCommerce/hotcakes-commerce-core/blob/development/CODE_OF_CONDUCT.md#contributor-covenant-code-of-conduct

This issue is going to be closed now.