• New: Version 6.5.1.0 – Completely new storefront design and technology, many enhancements ... More

Ver 6.3.0.0 – What’s New?

Introduction

Version 6.3.0.0 is the first release after version 6.0.0.0 that has been made generally available. It contains many exciting new features and a number of bug fixes. Versions 6.1.0.0 and 6.2.0.0 have been available for supported customers and so the following lists show the changes for each version separately. Before upgrading, please read the Upgrade Compatibility Alerts for each version.

Version 6.3.0.0

Note that some of the features highlighted below are only available in the Enterprise Extensions. See here for full details of what is included only in the Enterprise Extensions.

New Features

  • Added Shopping Widgets which can be introduced into social networks, blogs etc. with just a few lines of JavaScript.
  • Added a new API call to request the version number of the KonaKart engine.
  • Issue a warning if the version of the Admin App is incompatible with the version of the server. (The behaviour associated with this check can be customized by modifying the konakartadmin.compatibility.action configuration parameter in the konakartadmin_gwt.properties file).
  • Renamed some of the default Shipping Module text properties to be more meaningful.
  • Added an Affiliate Id attribute to the order object.
  • Added the JSONP protocol (JSON with padding) to provide a method to request data from a server in a different domain.
  • Added a “return_by_api” attribute to the configuration parameters. If a configuration parameter has this attribute set to 0 (false), it will not be returned by the various getConfigurations() API calls on the storefront engine. This improves performance (as previously all configurations were cached for each client session), reduces memory usage and tightens security by allowing greater control over which parameters are accessible through the engine. See below for more details on the changes that mighth affect existing custom code that uses these interfaces to access configuration values.
  • JSON server is now disabled by default. To enable JSON move to the custom directory of the installation and execute the enable_JSON ANT target.
  • Added the ability to make specified interfaces inaccessible via JSON. Set these interface names in the konakart web.xml as JSON servlet parameters – see the includedInterfaces and excludedInterfaces init-parameters. This provides greater flexibility in defining which interfaces are made available over JSON.
  • The entries in the product type list box in the edit product panel of the admin app can be excluded and ordered using file based configuration. A “Please Select” entry has been added for the cases where you want to force the admin user to choose a product type rather than being able to accept the default type.
  • Added more custom validation parameters for XML_IO.
  • Introduced the ability to use substitution variables in the Admin App Help messages which allows you to define repeated sections in one place and “include” them wherever you like. This also allows Oracle and DB2 users (who had a 4000 byte limit on the size of these messages) to create messages of any length by splitting messages into smaller messages and combining them in one message using substitution. See the format for substitutions (${name}) in the help.editProductsDetails property as an example.
  • Viewing of PDF invoices now possible from the storefront within Liferay
  • Using File-based Connfiguration it is now possible to define the number of customers, orders, products and reviews returned in each group for display in the Admin App.
  • Added a new API call to search for a customer’s subscriptions.
  • Modified SOLR suggested search to use (configurable) a regex search on the terms so that is doesn’t only match the term string from the beginning of the term.
  • Added a config variable to set expungeDeletes=”true” when doing a Solr commit. When set, objects marked for deletion are removed from the index. This is important for suggested search since the Solr terms functionality returns documents that have been marked for deletion but not removed from the index.
  • Increased the size of 5 columns in the database for storing CITY values.

Bug fixes

  • Store front application was throwing an exception when using customer tags and when the session expired.
  • The JSON API wasn’t encoding all characters correctly.
  • Repeat order was throwing an exception when using a shipping module that returns multiple quotes.
  • Category Shared indicator now passed correctly to getPdf and DisplayFile servlets. Previously it was not passed at all which meant these would always use the default of categories not shared.
  • tick.gif, cross.gif images added to konakart/images for use in velocity templates when running as a portlet within Liferay
  • Commidea payment module was not setting the ProcessingDB on all requests.

Backwards Compatibility Alert

  • The JSON Server has become an Enterprise-Only feature.
  • Configuration parameters now have a new “return_by_api” attribute. To return the value of a configuration parameter through the storefront API (KKEngIf) you need to set the return_by_api column to 1 (true). By default the return_by_api value will be 0 (false). Therefore, you will need to set these values to 1 (true) if you need to access them using the various getConfiguration() API calls on the storefront API (KKEngIf). The database upgrade scripts for the 6.3.0.0 release set the “return_by_api” attribute to 1 (true) for all configuration parameters in a defined set of configuration groups (see upgrade scripts for details) which in the default installation are required by the storefront to function correctly. You should review the configuration parameters that are returned by the APIs for suitability in your system. The Admin App has been modified to allow you to set the “return_by_api” setting for each configuration parameter. It is recommended to set “return_by_api” to 0 (false) wherever possible to maximize performance, minimize memory usage and tighten security.
  • The editConfiguration() API call on KKEngIf has been deprecated but has also been modified to return a KKException in all cases. You should use the Administration APIs (defined in KKAdminIf) to modify configuration parameters.

Version 6.2.0.0

New Features

  • Added a new View Logs Panel to the Admin App to allow an authorised Administrator to view the files in the log directory.
  • Improved expressions with the addition of an AGE_TYPE customer tag. Allows you act on the elapsed time (or age) of an event. i.e. To store the date of the last login for the customer so you can take action if a customer hasn’t logged in for two weeks. Alternatively you could store the age of a customer to offer promotions to certain age brackets.
  • Added a warning to the Promotions Panel in the Admin App to warn when the module for a selected promotion hasn’t been installed yet.
  • Database modification to allow entry_firstname and entry_lastname columns of the address_book table to contain null values.
  • New kk_config table to record miscellaneous system characteristics such as database version and type. Read-Only access to this table is available via new API calls (hence this could be used to store miscellaneous custom data that has a “Key” and a “Value”). Note that these are global values and not per store if running in a multi-store mode.
  • Exception messages populated with KonaKart version number to provide additional information to aid with diagnosing problems.
  • Added buttons to Reviews Panel in the Admin App to enable the selection of the product and the customer who wrote the review.
  • A new updated_by_id column has been added to the orders_status_history table to record the user who made the change to the order status. New APIs have been added to allow you to specify this new Id on order status changes – see the new updateOrder API.
  • Added option to not calculate the quantity of a bundle product based on the quantities of the bundled products. The option also applies when updating the inventory.
  • On the Customers Panel of the Admin App it is now possible to search for customers by customer Id, first name, and email address.
  • Introduced a new Commidea Vanguard Payment module
  • Added an animated gif to credit card entry panel to stop customers clicking the submit button multiple times.

Bug fixes

  • Avoided some null exceptions occurring when displaying products with null names and descriptions.
  • Avoided some null exceptions occurring when not finding SSO tokens for specified secret keys.
  • Admin App panels when using Internet Explorer were not displaying the hour and minute drop lists properly when selecting a date.
  • Removed spurious characters that appeared when switching from the rich text editor to the plain text editor of the Admin App when using certain browsers. Firefox and Chrome injected a break tag and IE injected a non-breaking space within a paragraph tag.
  • Modified the OrderTotalDiscount promotion module to reduce the tax when calculating a discount on the pre-tax total of an order.

Backwards Compatibility Alert

  • None

Version 6.1.0.0

New Features

  • Improved recurring billing functionality and documentation. Implemented all payment gateway calls for AuthorizeNet to insert, update and cancel a subscription.
  • Added a new mode: Shared Category mode which is valid only when sharing products and customers.
  • Added an Admin API call to copy products between store when in shared category mode.
  • New feature for analysing the performance of the storefront APIs. Useful as a starting point for overall performance analysis.
  • Added some logging options to allow logging changes to be made and take effect without the need to restart.
  • Upgraded to BIRT 3.7.2.
  • Added a batch job to synchronize stores when in shared category mode. This allows you to have a pre-production store and a production store.
  • Added an Admin App panel to synchronize products between stores.
  • Allow the use of a text entry field rather than a droplist for specifying the store to log in to when in Multi-Store mode in the Admin App.
  • Now possible to view the Admin App using a language that is for display-only purposes where entities such as products & categories do not need a translation defined for this language. (Previously it was necessary to provide translations for all languages for the entities that have language variants).
  • Added a KKServletContextListener to manage the shutdown of miscellaneous threads to avoid memory leaks. To enable this ensure that this section in the web.xml is uncommented (it is uncommented by default).

Bug fixes

  • When in shared products mode edit product had a bug whereby if more than one category was changed in one edit API call, only the first link in the product_to_category table was saved with the storeId. The other links were saved with a null storeId.
  • Added fix to ConfigCacheUpdater when in multi store shared db mode to only return enabled stores. In some cases it would try (only once) to refresh the caches of stores that weren’t enabled.
  • Added fix to EngineConfigCacheUpdater to terminate its thread after 5 consecutive exceptions. Under certain circumstances this thread was not terminating even after the rest of KonaKart was stopped.
  • When inserting and editing products, the external prices and quantities were being set outside of the main transaction.
  • When searching for products in the admin app using the SKU, the default wildcard search settings weren’t being used.
  • When in multi-store shared products mode the admin app was displaying reviews for all products even if they weren’t present in the store.
  • When in multi-store shared products mode the admin app was displaying miscellaneous items for all products even if they weren’t present in the store.
  • Subscriptions panel in the admin app was throwing an internal exception when subscriptions were inserted with a null trial amount value.
  • Added scale to a divide in the TaxMgr which was throwing an exception when external prices were being set in the basket not divisible by the quantity of products present.

Backwards Compatibility Alert

  • None