Duplicate Product Lists in Internet Explorer 11

In pre-Denali releases of SuiteCommerce Advanced, product lists in My Account are displayed in duplicate when using Internet Explorer 11. The duplication is a result of the caching behavior in IE 11 where product lists are cached by default. To correct this issue, modify the ProductList.js file as described here to force a new request to NetSuite and set the cache to false for product lists.

To modify the caching behavior defined in the ProductList.js file:

  1. Copy the ProductList.js file at Reference Shopflow > js > src > app > modules > ProductList to the same location in the custom folder.

  2. Modify the functions getProductListsPromise and getProductList with {cache: false} as shown in the following code snippet.

                    application.getProductListsPromise = function ()
    {
     if (!application.productListsInstancePromise)
     {
       application.productListsInstancePromise = jQuery.Deferred();
       application.productListsInstance = new ProductListCollection();
       application.productListsInstance.application = application;
    
       // MODIFIED CODE FOR IE 11 CACHING
       application.productListsInstance.fetch({cache: false}).done(function(jsonCollection)
       {
         application.productListsInstance.set(jsonCollection);
         application.productListsInstancePromise.resolve(application.productListsInstance);
       });
     }
    
     return application.productListsInstancePromise;
    };
    
    // obtain a single ProductList with all its item's data
    application.getProductList = function (id)
    {
     var productList = new ProductListModel();
     productList.set('internalid', id);
    
     //  MODIFIED CODE FOR IE 11 CACHING 
     return productList.fetch({cache: false});
    }; 
    
                  
  3. Save your changes.

Related Topics

SCA Patches

General Notices