New block function added: show_popular_products. This block function shows the most popular products based on the sales numbers in the specified period (day, week, month, all time), according to the specified filter. It sets a template variable with configurable name which holds an array of CatProduct objects. Refer to documentation for further details.
The new MPN and GTIN fields are now available in the custom import/export
E-Commerce
New block function added: show_orders_summary. This block function sets three template variables with statistics about the orders in the specified period and according to the specified filter: total number of orders, total value of orders and total discount value of orders. Refer to documentation for further details.
All centres using Cart3 have to use hooks to send any kind of e-mail notifications (e.g. order placed, instalment paid, order shipped, etc.) and do not trigger the old-school notifications. Now this behaviour can be changed using the new centre option - legacy_notifications. This centre option re-enables legacy notifications system for cart3 sites.
PayPal Standard now uses Order Id as the Invoice Number
Hooks
New hook event added: User Updated. This event is triggered when User records in updated either in the DXP, or through the portal. The payload is PubUser instance.
Discounts
New setting is now available in discount condition "Check Cart Items" - max. quantity. In conjunction with the min. quantity parameter, it is now possible to create more granular discounts which apply only the customer has a specific number of products in the cart (e.g. 5)
New setting "Waterfall Discount", when enabled, will recursively check discounts conditions after each discount has been applied. For example, some discounts may no longer apply because previously applied discounts have modified the total value of the order and reduced it below the threshold required by the discount. With this setting disables, all conditions are checked in the beginning, based on the initial state of the cart.
Fixed an issue with legacy vouchers not respecting the variant special price (place upgrade to cart3 to use the Discounts module).
Forms
Form Id column is added to the forms listing page
Positions
Fixed an issue with saving empty SalesForce ID records
22 October
Release: 2018.35
Core
Coredna now uses DB-IP database for Geolocation functions. This database is more accurate and is updated monthly.
The getIPDetails() function (part of show_geo_details block function)
As a part of expansion of Core dna's standard JSON interface, the following block functions are now available via JSON interface:
Fixed an issue with SendGrid's limitation on the length of the variables passed along with the template.
Hooks
The hooks are now not saving the the underlying event objects, but only references to these objects. This improves overall performance of the hooks module and ensures that when a hook is set to re-run, it uses the most up-to-date state of the object
Product Catalogue
The copy product and copy category functions have undergone a significant refactoring and now work much faster. Also, the custom properties of the options and option images are copied as well
Feedback
The timestamp is now in line with the Time Zone of the centre
16 October
Release: 2018.34
Custom Properties
Added new custom property type: "multi select" which behaves similar to the "list" type, but allows to select multiple options (using <select multiple> control). Programmatically, the selected values are available as an array. See Custom Properties documentation.
It is now possible to filter objects which implement custom properties, based on the value of custom properties. An example is show_events_list block function in the Events module which allows to filter events by custom fields using 'srch_custom_properties' array argument.
The custom properties now display both, the value and the "displayed value" in the DXP for lists and multi select types, if the display values are different to the actual values.
Products Catalogue
Products and Variants now support two new standard fields: MPN and GTIN
Fixed attachment copy and attachment url issue
Category object now supports isDescendantOf($category) method which allows to check is the category is a descendant of the specified category.
E-Commerce
Leading and trailing spaces are now being removed from Shipping Rate description
Fixed an issue with handling Fedex returning multiple ratedShipmentDetails
Press Kits
Fixed root category ID detection in the importer
Help
Added the tags-data in the array for HelpArticle
Block function show_help now returns $cat_url_name
Teamflow (projects/support)
Various bug fixes and improvements
02 October
Release: 2018.33
Hooks
Added Abandoned Cart Event (only for cart3).
Added Order Failed Event (only for cart3).
Added ability to test Abandoned Carts into the Hooks engine.
Remember DXP search after action is performed.
E-Commerce
Products will now be added to the users cart using the correct centre timestamp.
Orders
Add switch to disable guest checkout for cart3.
Press Kits
Added ability to start processing of download files using AJAX.
Minor DXP fixes.
Fixed bug with video and documents during import.
Users
Importer will skip already deleted users, log and email the event.
If user_dob is not passed in, default to todays date on user signup.
If user is inactive with centre option 'register_send_pwd' enabled, on forgot password the user will become activated with the same password.