Jump to: navigation, search

Core Changes73

Revision as of 13:12, 23 June 2020 by Arpita (talk | contribs)

Core Changes

Bug Fixes

  • 100+ minor enhancements and bug fixes.

Optimized Price Calculator

Centralized the Price Calculator code. Now the same price-calculator will load in ‘Product Info’ Screen, ‘Product Additional Info’ screen as well as in the Admin Panel.

To avoid duplication of code and reduce the server space we have worked thoroughly to improve the price calculator’s logic. We’ve unified the price calculator logic thus, the all price calculators in the system (both Admin and Front) will behave the same. The logic improvements will reflect following functional and UI changes in the price calculator –

UI Changes

  • To maintain uniformity, the error messages for size, quantity, etc. will be shown below the respective element rather than a popup.
  • When size and quantity fields are editable by the customer then the system will correct out of range and invalid values and will calculate the price accordingly.
  • Also, when size and quantity fields are not editable by the customer and values are out of range or not valid then, the system will not correct those values, and the price will not be calculated.
  • Additional Options help will be available at the Admin side also (while placing an offline order).
  • The Additional Option Group will now be available at the product additional information page.
  • If there is only one option attribute in any additional option then, the attribute will be shown with the label only (selection of one attribute is omitted).
  • Stock details will be displayed at the bottom of the price calculator instead of near quantity.
  • For the Mass CSV file, the CSV record count will be displayed below the CSV file upload element.
  • For promotional products, the material color will be displayed at the end instead of along with the additional options.
  • The additional options description pop-up will now be displayed after the option label instead of after element.
  • For book product –
    • When price calculator layout is Side by Side (Admin >> Store Personalization >> Product Page Layout), then size, pages, and several copies will be displayed with side by side style as individual row item, previously side by side setting was not applicable in this section.
    • The color page range section will be having the same behavior in the Admin Panel as in the front end. Previously it was shown as a separate text area option field in Admin and with a popup in front.
    • When book product adjustment is applied, then the individual option price was not shown before, now it will be available.
  • For mailing product –
    • The mailing quantity error message will be the same as on the Additional Information page and Product Information page.
    • There will be a price summary at the end of the price calculator, except inventory handling charges and template costs.

Functional Changes

  • Product sizes with no price defined were also shown to the corporate customers i.e. a product size with no price was displayed with zero price. Improving this we have now set logic where the sizes only with the prices set will be displayed.
  • The quantity range lookup logic was across user type. Considering a scenario where Admin has set the following prices –
    • Price set for two quantities (100,200) for "Common for all corporate"
    • Price set for two quantities (300,400) for "RadixWeb"

In this scenario, at the front end when RadixWeb Corporate Customer logs into the system, they were able to see the 100, 200 quantities despite the specific quantities set. In the latest version, we’ve made the quantity range lookup logic strict to the user type. Thus, when customers of "RadixWeb" corporate logs in into the front store they’ll be able to select from 300 and 400 quantities only.

The lookup flow will be – Specific Corporate >> Common for all corporate >> Retail Prices (if corporate markup is applied)

Price Calculation Logic Changes

  • Earlier, the minimum price and book product price adjustment was applied after the discount. Now, we have changed the sequence of price calculation to following –
    • Subtotal Calculation = Base Price + Additional Options Price
    • Apply minimum price and update the subtotal (or base price on whatever the minimum price is applicable)
    • Adjust the book price (if any in Book Module)
    • Set product discount (From the marketing module - "Coupon/Discount")
    • Add additional price(s) (i.e. stock image cost, template cost, etc.)

External Services

A separate repository for all external services will be maintained, to reduce the main source code of the solution. Also, we will use common third-party libraries for different external services.

Optimized Shopping Cart & Checkout page

Optimized Shopping Cart and Checkout page for better performance and cleaned code.

Image storage optimization: Introduced Soft Deletion for image storage.

Introduced Soft Deletion for image storage. Images now will be stored at the master location and not as a copy.

Upgraded all CSS and JavaScript

We have upgraded all the third party CSS and JavaScript used in the system for better compatibility and enhanced performance.

Fabric.js JavaScript Canvas Library Update

  • Fabric.js is a powerful and simple JavaScript HTML5 canvas library. Fabric provides an interactive object model on top of the canvas element. The fabric also has SVG-to-canvas (and canvas-to-SVG) parser which gives extra built-in support to our designer studio.
  • We have updated our Fabric.js JavaScript Canvas Library to the latest version which allows us to create and populate objects on canvas; objects like simple geometrical shapes or complex shapes consisting of hundreds or thousands of simple paths.

Server Upgrade

We have upgraded Database Server, PDFLIB Library, Twig Template, Twig Theme, and Instagram API.

Upgrade

Upgraded the latest Bootstrap v4.5 at the Front side.