KonaKart Changelog

What's new in KonaKart 9.6.0.0

Aug 31, 2022
  • 9.6.0.0 is a major public release that contains many new features and bug fixes.
  • When upgrading from version 9.4.0.0, ensure that you run the following upgrade database script for your chosen database:
  • Upgrade_9.4.0.0_to_9.6.0.0.sql
  • When upgrading from earlier versions execute all the upgrade scripts in turn (in the right sequence) up to and including upgrade_9.4.0.0_to_9.6.0.0.sql
  • Backwards Compatibility Alerts:
  • Following the driver update to version 8, only MySQL versions 5.7 and 8.0 are now supported.

New in KonaKart 9.4.0.2 (Jan 13, 2022)

  • Important security fix.

New in KonaKart 9.4.0.1 (Apr 17, 2021)

  • Minor public release that contains an important security fix.

New in KonaKart 9.4.0.0 (Nov 11, 2020)

  • Major public release that contains many new features and bug fixes.
  • When upgrading from version 9.2.0.0, ensure that you run the following upgrade database script for your chosen database:
  • upgrade_9.2.0.0_to_9.4.0.0.sql
  • When upgrading from earlier versions execute all the upgrade scripts in turn (in the right sequence) up to and including upgrade_9.2.0.0_to_9.4.0.0.sql
  • Backwards Compatibility Alerts:
  • In the KonaKart web.xml there is a new parameter for the KonaKartMQServlet called mqSchedulerSupport. This is required to be set to true if you want to use the new transaction-based message processing features.

New in KonaKart 9.2.0.0 (Mar 31, 2020)

  • V9.2.0.0 is a major public release that contains many new features and bug fixes.
  • When upgrading from version 9.0.0.0, ensure that you run the following upgrade database script for your chosen database:
  • upgrade_9.0.0.0_to_9.2.0.0.sql
  • When upgrading from earlier versions execute all the upgrade scripts in turn (in the right sequence) up to and including upgrade_9.0.0.0_to_9.2.0.0.sql
  • Backwards Compatibility Alerts:
  • Installers for 32′ Linux platforms no longer produced. If you need to install on a 32′ Linux platform we recommend that you either install on a 64′ platform then copy the files across to the 32′ platform or use the zip-based installation packages.
  • Our original Axis 1.4 – based SOAP implementation has been withdrawn. It has become increasingly difficult to keep this working alongside the latest versions of Java. SOAP users should use the JAXWS SOAP implementation of the engines which are still supported.
  • A minimum Java version of Java 1.8 is now required. Support for Java 1.7 has been withdrawn.
  • The Reset Database command under the Tools menu in the Admin Console no longer deletes the Orders.
  • With the upgrade to ehCache 3.8.1 a new konakart_ehcahe.xml configuration file format is required (a default file is provided). If you use ehCache and have modified any of the default settings in your configuration that you wish to retain these will have to be migrated to the new format.
  • The signature of the ERP Integration message “Update Product Prices” has been modified to allow for multiple products within a single message.

New in KonaKart 9.0.0.0 (Aug 26, 2019)

  • v9.0.0.0 is a major public release that contains many new features and bug fixes.
  • When upgrading from version 8.9.0.0, ensure that you run the following upgrade database script for your chosen database:
  • upgrade_8.9.0.0_to_9.0.0.0.sql
  • When upgrading from earlier versions excute all the upgrade scripts in turn (in the right sequence) up to and including upgrade_8.9.0.0_to_9.0.0.0.sql
  • Backwards Compatibility Alerts
  • Maven build improvements were added but some side-effects to be aware of:
  • FedTaxApi.jar now given a version number, in this version it’s FedTaxApi-9.0.0.0.jar
  • iText-2.0.8.jar renamed to itext-2.0.8.jar (now in lower case)
  • antlr-2.7.5.jar replaced with antlr-2.7.2.jar
  • PDFBox-0.7.3.jar replaced with pdfbox-0.7.3.jar (now in lower case)
  • Authorize.Net payment module removed because it w

New in KonaKart 8.7.0.0 (Jul 19, 2017)

  • 8.7.0.0 a major public release that contains many new features and bug fixes.
  • When upgrading from version 8.5.0.n, ensure that you run the following upgrade database script for your chosen database:
  • upgrade_8.5.0.0_to_8.7.0.0.sql
  • Backwards Compatibility Alert
  • The table “products_attrs_download” is no longer created. KonaKart doesn’t use it but it hasn’t been removed in case it’s being used by customers. This table may be removed in future releases.
  • Logging changes with the upgrade to log4j2. The format of the logging files has changed. Use the default file (konakart-logging.xml) provided in the kit as a starting point.
  • The logging system property “kk.log4j.WatchTimeSecs” is no longer supported. Instead use the monitorInterval attribute in the log4j2 configuration file.
  • Changed column types in currencies table for decimal_point, thousands_point and decimal_places to varchar(1) rather than char(1) for greater portability.
  • As a security measure the APIs sendNewPassword1, sendWelcomeEmail1, sendOrderConfirmationEmail1 and sendTemplateEmailToCustomer1 no longer respond with a copy of the subject and body of the email. Instead these attributes are set to null.

New in KonaKart 8.5.0.2 (Mar 28, 2017)

  • v8.5.0.2 is a minor upgrade to v8.5.0.1 that contains the following fixes:
  • Corrections to the custom ANT build file and the java_api_examples ANT build file
  • When upgrading from version v8.5.0.0 to v8.5.0.2 note that there are no database changes to make. v8.5.0.2 uses the same database as v8.5.0.0.

New in KonaKart 8.5.0.1 (Mar 17, 2017)

  • 8.5.0.1 is a minor upgrade to v8.5.0.0 that contains the following new features and fixes:
  • Upgraded to Tomcat 8.0.41
  • Upgraded to commons-fileupload-1.3.2.jar
  • Content Search was not working for ObjectId values on the storefront side
  • When Customers were not shared the Role Privileges were not being saved correctly in the Admin Application
  • Fixed Struts vulnerability CVE-2017-5638
  • When upgrading from version v8.5.0.0 to v8.5.0.1 note that there are no database changes to make. v8.5.0.1 uses the same database as v8.5.0.0.

New in KonaKart 8.5.0.0 (Jan 19, 2017)

  • v8.5.0.0 a major public release that contains many new features and bug fixes.
  • When upgrading from version 8.3.0.n, ensure that you run the following upgrade database script for your chosen database:
  • upgrade_8.3.0.0_to_8.5.0.0.sql
  • Backwards Compatibility Alert:
  • The new version of SOLR requires Java 8. You can still run KonaKart using Java 7 but SOLR must be run with Java 8. It’s possible to run just SOLR using Java 8 by setting the SOLR_JAVA_HOME environment variable (see bin/setJavaHome.bat or bin/setJavaHome.sh for examples). SOLR is also started as a separate process rather than as a webapp under tomcat as previously. The base URL after a standard install is now http://localhost:8983/solr/konakart. After a default installation the SOLR administration application is available on port 8983. For security reasons it’s important that you configure your firewall to block all requests using that port number.

New in KonaKart 8.3.0.0 (Sep 9, 2016)

  • New Features:
  • Added B2B customer hierarchy functionality. Customers may be placed within a hierarchical structure where a customer can be assigned a parent and children. API calls have been added to manage customer hierarchies and retrieve hierarchical information.
  • Added B2B functionality to storefront to allow B2B buyers to view orders of their colleagues in the same hierarchical structure.
  • Added B2B functionality to storefront to only allow customers to place orders below a certain amount threshold.
  • Added B2B functionality to storefront to not allow some customers to modify the shipping and billing addresses available in their address book.
  • Added B2B functionality to storefront to place orders in a waiting for approval state for certain customers.
  • Added B2B functionality to storefront to allow customers with the correct privileges to approve orders.
  • Added Order Management functionality to allow an administrator to modify and resubmit a customer order. KonaKart archives the previous order so that an audit trail is kept.
  • Added features for integration with an ERP system by exchanging XML messages on a message queue. All of the key integration points are supported between KonaKart and the ERP system and vice versa.
  • Added a new API protocol for the storefront – JAXWS – The new KKJAXWSEng class is another implementation of KKEngIf.
  • Added a new API protocol for admin – JAXWS – The new KKJAXWSAdmin class is another implementation of KKAdminIf.
  • Added Liferay Single Sign On for the storefront portlet.
  • Added Facebook and Google+ login to KonaKart tiles.
  • Added expiration functionality to customer passwords. Temporary passwords that are sent out on a customer’s request, now expire after a configurable number of minutes. Customer is prompted to change password on first login.
  • Added some attributes to order total objects to save the id of a promotion and the discount defined by a promotion module.
  • Functionality has been added to promotion usage. You can now limit the total number of times a promotion is used by any user even with no coupon attached. Using the Admin app you can quickly see how many times a promotion has been used.
  • Storefront application can now be configured to only display customer orders that are in one or more chosen states.
  • Improved facet handling by Solr to allow facet values with spaces and non standard English characters.
  • Configuration parameter added (in konakart web.xml) to define whether or not to randomise the MQ Network Connection names (default is to randomise).
  • Formatting of a customer name is now configurable to cater for countries that display the last name before the first name.
  • Added og:image meta tag to product details page of storefront application so that Facebook picks up the correct image when sharing product details on Facebook.
  • New KonaKart API call to allow a customer to enter a new password when the password has been forgotten, rather than having it sent out in an email.
  • Simplified the specification of engine settings (engine mode, customers shared, products shared, categories shared, etc) in the properties files. This greatly reduces the likelihood of configuring these quantities differently in different places. Note the comments in the “Backwards Compatibility Alert” section for things to check in this area when upgrading.
  • Functionality has been added to the getOrders() Admin API call to allow the order products of the returned orders to be populated by setting the fillOrderProducts attribute of the AdminOrderSearch object to true. Previously, for performance reasons these weren’t populated.
  • Allow custom validation on Manufacturer custom fields in the Admin Application – define these in the CustomValidation.properties file
  • In the expression builder you can now specify a condition where a tag value has not been set for a customer.
  • Enhanced the Admin searchForIpnHistory() API call to allow to filter the returned objects using values in custom attributes.
  • Upgraded to javax.mail-api-1.5.5.jar from mail-1.4.7.jar.
  • Added the ability to configure mail connection retries and pauses between retry attempts (the defaults are 1 retry attempt after a delay of 30 seconds). Configure these in conf/konakart_mail.properties.
  • Made it configurable in the Admin App after inserting a product whether to remain in insert mode or switch to edit mode.
  • In the Products panel in the Admin App, added the possibility to search by product ID.
  • A new configuration property (konakart.synchronise.ImageIO.reads) has been added to synchronise ImageIO Read operations that were causing intermittent concurrency issues under certain JDK 8 platforms. For maximum performance the default is not to synchronise the ImageIO reads but this configuration property provides the ability to modify that behaviour if required.
  • Upgraded to the postgresql-9.4.1209.jre7.jar PostgreSQL JDBC driver.
  • Upgraded to the mysql-connector-java-5.1.39-bin.jar MySQL JDBC driver.
  • Upgraded to Quartz v2.2.3
  • Sorting products by times viewed is now supported in Solr
  • Bug fixes:
  • Order templates syntax corrected to check null comments:
  • “#if ( $osh.getComments().length() > 0 )”
  • replaced with:
  • “#if ( $osh.getComments() && $osh.getComments().length() > 0 )”
  • Added $esc.html($newPassword) to Velocity Templates to escape the password string that may contain characters that affect the HTML syntax.
  • Fixed a bug in getProductPerSku() and getProductPerSkuWithOptions() only manifesting itself when in shared products mode. In this mode if there were two products with the same SKU in different stores and product caching was enabled it was possible for the API call to return the product from the wrong store.
  • deletePromotion() Admin API call was not deleting associated coupons.
  • When a Tag was deleted, any records in the kk_tag_to_product table weren’t being deleted.
  • When a TagGroup was deleted, any records in the kk_category_to_tag_group table weren’t being deleted.
  • When a Category was deleted, any records in the kk_category_to_tag_group table weren’t being deleted.
  • Fixed a bug during RepeatOrder that threw an exception if the shipping module used for the original order was no longer available.
  • Free Product promotion module was not setting the promotion id on the order.
  • Bug fix when opening the storefront in multiple tabs on the page that allows you to filter a selected set of products using facets. When switching between the tabs the filters were being corrupted where one tab was picking up the filters of the other tab.
  • Bug fix for when sorting products by price using catalog prices and Solr. The price used for sorting was the standard price and not the catalog price.
  • When inserting or editing a product in the Admin App, the Insert or Save button wasn’t always disabled after the insert or edit.
  • Backwards Compatibility Alert:
  • TotalDiscount promotion module has been modified to calculate a percentage discount on the current order amount when it is called. This may be less than the original sub-total if for example a product discount or a buy x get y free discount has already been run.
  • With the introduction of the new MySQL JDBC driver (mysql-connector-java-5.1.39-bin.jar) you will need to add &useSSL=false to your JDBC connection URL if you don’t want to enable an SSL connection to your MySQL database.
  • The following properties in konakart.properties and konakartadmin.properties have been replaced:
  • konakart.ws.mode = 0
  • konakart.ws.customersShared = false
  • konakart.ws.productsShared = false
  • konakart.ws.categoriesShared = false
  • konakart.rmi.mode = 0
  • konakart.rmi.customersShared = false
  • konakart.rmi.productsShared = false
  • konakart.rmi.categoriesShared = false
  • konakart.json.mode = 0
  • konakart.json.customersShared = false
  • konakart.json.productsShared = false
  • konakart.json.categoriesShared = false
  • Instead of the above, the following new properties (placed in konakart.properties and konakartadmin.properties) should be used in all cases:
  • konakart.engineMode = 0
  • konakart.customersShared = false
  • konakart.productsShared = false
  • konakart.categoriesShared = false
  • The following KonaKartAppEngineServlet servlet initialization parameters have been replaced:
  • mode
  • storeId
  • customersShared
  • productsShared
  • categoriesShared
  • defaultStoreId
  • Instead of the above, the following new properties (placed in konakart.properties and konakartadmin.properties) should be used in all cases:
  • konakart.engineMode = 0
  • konakart.defaultStoreId = store1
  • konakart.customersShared = false
  • konakart.productsShared = false
  • konakart.categoriesShared = false
  • The following properties in konakartadmin_gwt.properties have been replaced:
  • konakartadmin.gwt.mode = 0
  • konakartadmin.gwt.customersShared = false
  • konakartadmin.gwt.productsShared = false
  • konakartadmin.gwt.categoriesShared = false
  • Instead of the above, the following new properties (placed in konakartadmin.properties) should be used:
  • konakart.engineMode = 0
  • konakart.customersShared = false
  • konakart.productsShared = false
  • konakart.categoriesShared = false
  • The following KKAdminGWTServiceImpl servlet initialization parameter has been replaced:
  • defaultStoreId
  • Instead of the above, the following new property (placed in konakartadmin.properties) should be used:
  • konakart.defaultStoreId = store1

New in KonaKart 7.4.0.1 (Mar 20, 2015)

  • v7.4.0.1 is a minor public release containing a fix for the following problem:
  • In the Admin Application it was not possible to create a new Manufacturer if configured to show Manufacturer Ids.
  • No database upgrade scripts are required. The 7.4.0.1 version of KonaKart is compatible with the 7.4.0.0 database.
  • No compatibility alerts; No special actions required.

New in KonaKart 7.4.0.0 (Feb 25, 2015)

  • v7.4.0.0 a major public release that contains many new features and bug fixes.
  • When upgrading from version 7.3.0.n, ensure that you run the following upgrade database script: upgrade_7.3.0.0_to_7.4.0.0.sql
  • Backwards-Compatibility Alert:
  • Payment Gateways retired: CyberSource HOP, CyberSource SOP, YourPay. These were removed because their gateway services are no longer available.

New in KonaKart 7.3.0.1 (Aug 28, 2014)

  • Fix a security vulnerability in Struts-2

New in KonaKart 7.3.0.0 (Aug 26, 2014)

  • When upgrading from version 7.2.0.n, ensure that you run the following upgrade database script: upgrade_7.2.0.0_to_7.3.0.0.sql
  • Publish Products and Google Shopping functionality has been removed due to the demise of Google Base then Google Shopping.
  • Modified the Admin API call editOrder() to include the OrderProduct custom fields. This change should be backwards compatible but it’s good to be aware of it.
  • The mobile storefront is no longer included in the download package since the storefront now has a responsive design.
  • A number of classes have been moved from the konakart.jar to the konakart_custom.jar. This has been done to make it much easier to customise these classes and re-generate the konakart_custom.jar by using the standard ANT build in the custom directory. The classes that have been moved are:
  • \custom\appn\src\com\konakart\bl\modules\ordertotal\OrderTotalInterface.java
  • \custom\appn\src\com\konakart\bl\modules\ordertotal\OrderTotalMgr.java
  • \custom\appn\src\com\konakart\bl\modules\others\AddrValidationInterface.java
  • \custom\appn\src\com\konakart\bl\modules\payment\PaymentInfo.java
  • \custom\appn\src\com\konakart\bl\modules\payment\PaymentInterface.java
  • \custom\appn\src\com\konakart\bl\modules\payment\PaymentMgr.java
  • \custom\appn\src\com\konakart\bl\modules\shipping\ShippingInfo.java
  • \custom\appn\src\com\konakart\bl\modules\shipping\ShippingInterface.java
  • \custom\appn\src\com\konakart\bl\modules\shipping\ShippingMgr.java
  • \custom\appn\src\com\konakart\bl\modules\shipping\WeightCost.java

New in KonaKart 7.2.0.2 (Apr 26, 2014)

  • v7.2.0.2 is a minor public release containing fixes for the following problems:
  • When running KonaKart in the mode that allows checkout without registration, the password entry fields would disappear after changing country when attempting to register.
  • Fix to struts.xml to prevent CVE-2014-0094 vulnerability.
  • No database upgrade scripts are required. The 7.2.0.2 version of KonaKart is compatible with the 7.2.0.0 database.
  • No compatibility alerts; No special actions required.

New in KonaKart 7.2.0.1 (Apr 26, 2014)

  • v7.2.0.1 is a minor public release containing a fix to the installers to allow automatic detection of a java 7 JRE and a fix for the deployment of a duplicate custom source file (The java source file “*\KonaKart\custom\modules\src\com\konakart\bl\modules\shipping\BaseShippingModule.java” was deployed to two places so you can delete this one and leave the one in “*\KonaKart\custom\appn\src\com\konakart\bl\modules\shipping\BaseShippingModule.java”
  • No database upgrade scripts are required. The 7.2.0.1 version of KonaKart is compatible with the 7.2.0.0 database.
  • No compatibility alerts; No special actions required.

New in KonaKart 7.2.0.0 (Mar 7, 2014)

  • New Features:
  • Added support for Shippers and Shipments. Multiple shipments may be defined for a single order. The shipments (including tracking number) can be included in a notification eMail and are visible from the order details page of the storefront application.
  • Performance Improvement : Upgrade to Torque 4 – keeps up-to-date with the latest version of Torque which helps to provide an overall performance improvement in KonaKart of approximately 10%-20%. (Based on timings made before and after the upgrade to Torque 4 when running a broad cross-section of test suites). Upgraded to the ojdbc6.jar Oracle JDBC driver.
  • Performance Improvement : Product Caching (Enterprise Only). Choice of caches available: KonaKart (on heap, POJO), Ehcache (on heap, byte arrays) and Big Memory Go (off heap, byte array).
  • Added support for real time credit card refunds through the payment gateway, which can be managed from within the Admin App. The full details of the refund transactions are saved in the database. This is an Enterprise Only feature.
  • Added two new types of product options. KonaKart now supports 4 different types (types 2 – 4 are Enterprise Only)
  • The Standard type is where each option value defines a product attribute which may or may not modify the price of the product (e.g. Small, Medium and Large for an option called Size or Black, Brown and Red for an option called Color).
  • The Customer Text type option allows a customer to enter text which for example could be used to personalize the product with a name, initials or a greeting.
  • The Variable Quantity type is an option, the value of which may take a customer defined quantity. It can be used for example to specify the required amount of disk storage required when configuring a cloud based computer.
  • The Customer Price type allows the customer to enter a price for the option. This could for example be used for making donations.
  • Added CustomStoreService and CustomAdminService – a framework and set of utilities to create custom functionality alongside the KonaKart services. A utility is provided to make it easy to create SOAP versions of these custom services. These can be used alongside the KKEngIf and KKAdminIf engines to provide custom services that you may need to supplement the standard KonaKart functionality for your unique requirements. Examples provided for you to customize to make it easy to implement.
  • Added support for spelling suggestions when a search returns no results.
  • Added functionality to be able to set the sort order of product options such as size and color.
  • Added a new “Virtual Product” type for a product that doesn’t ship and isn’t downloaded. It may be used for services like extra warranty or 1 hour of tuition etc.
  • Added functionality to the Admin App to be able to decide whether to send Newsletters to everyone who has signed up or just to registered customers.
  • New KKEvent mechanism to signal key events in the system such as updates of products. Initially this is only used for Cache Management functions but its use will be extended.
  • New set of Custom Panels that can be arranged in each section of the Administration Application for more flexible integration of custom administrative features.
  • Added an example Admin Application to insert a product using a very user friendly wizard driven interface. The application can be run in a custom panel. The application (including full source code) is available to Enterprise customers so that it can be used as a starting point for developing custom admin functionality. An ANT task called make_eclipse_wizard_project has been provided to create an Eclipse project for this example application.
  • Added the ability to configure the role privileges on the Customers For Reviews column of the Administration Application (as for the Customers for Orders panel).
  • Set the logon count and the last logged on date for users of the Administration App.
  • Added security enhancement to the storefront application to prevent XSRF attacks.
  • Added quantity droplist to the storefront application to select quantity before adding product to cart.
  • Modified the Order Status objects so that the Order Status Id is no longer a part of the primary key.
  • Added an order total module which can be configured to add a charge based on the selected payment method.
  • Updated the version of Solr to 4.6.0
  • Added a method in the AdminProductSolrMgr that can be overridden in order to index all product related data that isn’t automatically indexed. e.g. Data from product custom fields.
  • Added a tokenizer to the Solr search string to be able to search for the keywords within the search string AND’ed together rather than an exact match on the string. e.g. The search string “rotary lawnmower” is converted to rotary AND lawnmower.
  • Added functionality to return a Solr score for searches and to be able to sort by the search score.
  • When reading an order (through the Admin APIs) retrieve the FirstName and LastName of the user who updated an Order as well as the updatedById. These values are now made available for use in the Order templates.
  • Allow the definition of whether the assignment of products to stores is allowed using role-based configuration rather than only allowing super users this privilege. (See Custom1 setting on the Privileges of the Edit Products Panel).
  • Hide the Set Language link in the Administration Application if only 1 language is defined.
  • Enhanced search for orders and reviews – now possible to search for between specified last modified dates.
  • Removed the maximum length on text fields in the Store Maintenance window of the Administration Application to allow greater flexibility in using the store custom fields for bespoke purposes.
  • Enhanced mail APIs to be able to specify a dynamic list of bcc recipients.
  • By setting a new logging flag a clearer representation of all SQL being executed can be logged making it far easier to track down problems in customised code. Time taken by each query is also logged which is very useful information when tracking down performance issues and helping you to tune the database for optimum performance. Simply set log4j.logger.com.konakart.db = INFO in your konakart-logging.properties file to see the SQL.
  • For application engine API calls that return an array of products you can now configure the API call to add the product options and the comparison data attribute is returned together with the description when the API calls are configured to return the description.
  • Multiple coupon codes may now be entered for an order to activate multiple promotions.
  • Improvements to the utility provided to set up KonaKart as a Windows Service. The default tomcat wrappers are now 64′ versions and not 32′ versions as previously. This is better for most users as the jvm.dll used must be bit-compatible with the wrapper and most users nowadays are using 64′ JVMs.
  • Now possible to pass the sessionId through to Quartz batch jobs. You define a parameter in your konakart_jobs.xml file with the value SESSION_ID and this gets substituted with the sessionId of the user executing the Quartz job at runtime.
  • Bug Fixes:
  • Fixed paging problems in 3 API calls. The result wasn’t correct when an offset was set in the DataDescriptor.
  • getOrderHistory(WithOptions)
  • getAlsoPurchased(WithOptions)
  • getRelatedProducts(WithOptions)
  • The products ordered count (used to determine how popular a product is) wasn’t being updated when KonaKart was configured to not subtract stock levels on receipt of an order.
  • Modified the Shipping Order Total module to not return a value of $0 if no shipping quote is found. Now it returns null and the application stops checkout if no module is found.
  • In the scenario whereby you remove a category then add a category without modifying any data on the new category, the category tree was not being updated on the storefront. In these circumstances the category tree is now updated.
  • Fixed a storefront bug that was occurring in the case where a customer created a wedding list before a normal wish list. The wish list was always showing as empty.
  • Product Synchronization: The admin app wasn’t displaying invisible products.
  • Product Synchronization: No longer existing product relations were not being deleted.
  • Backwards Compatibility Alert:
  • The sort order of product options such as size and color is now determined by a sort order attribute which is set automatically by the admin app when the product is saved. Until this attribute has been set correctly, the sort order may not be the same as it was in the previous version of KonaKart.
  • With the upgrade to Torque 4 there are a number of database-related changes to be aware of. See the “Upgrade to Torque 4″ section in the User Guide.

New in KonaKart 7.1.1.1 (Sep 19, 2013)

  • The only change from v7.1.1.0 is that the library file struts-core-2.3.8.jar has been replaced with struts-core-kk-2.3.8.jar

New in KonaKart 7.1.1.0 (Sep 19, 2013)

  • New Features:
  • Added search by manufacturer ascending and descending in order to search for products using the Application and Admin engines. Previously only ascending was available.
  • Added new method getBundlesThatProductsBelongTo() to return an array of bundles plus bundled products for an array of products passed in as a parameter. Allows you to determine (and fetch) the bundles that contain all of the specified products.
  • Added a mechanism to optionally include the template name in the product custom attribute labels in the Edit Product panel of the Admin App. Also, the custom fields may be grouped into a collapsable panel for each template.
  • Updated the Administration Application’s StyleSheet used when deployed as a portlet under Liferay.
  • Removed the Cookie Warning from the Storefront Application when deployed as a portlet under Liferay.
  • Set more fields for the new KonaKart user that is created when automatically logged on from Liferay. eg. Use the country of the store. This can be customised as required as the KKAdminPortlet.java file is provided as source code.
  • Ehcache introduced for faster access to image names associated with products.
  • More flexible image scaling can be configured when uploading product images. Notably, aspect ratios can be retained.
  • New getProductImages API call for the storefront engine (KKEngIf) – can be used to retrieve the names of images associated with a specified product.
  • Bug Fixes:
  • Fixed a bug whereby in multi-store mode, the related products within carousels in the product detail page of the storefront app, were sometimes not picking up the correct currency.
  • Fixed a storefront bug which was causing the customer to redirect to the checkout page when changing the country during an edit address and then clicking the back button rather than the save button.
  • Fixed a suggested search problem to unescape HTML returned by Solr. The indexing of ampersand was causing the problem since Solr was returning & in the suggested search results.
  • Added a ‘/’ before KonakartAdmin.css in the liferay-portlet.xml to ensure the style sheet file is found on all Liferay platforms.
  • Fixed a bug in the admin app to allow an administrator to register a customer if the email address aready exists in the database for a non registered customer. The admin engine was allowing the registration but wasn’t deleting the non registered customer.
  • Fixed a storefront bug that was causing an error when checking out as a non registered customer and clicking the order confirmation breadcrumb.
  • Fixed a storefront bug that was causing a null pointer error when paging a set of products containing a product in multiple categories where a category is invisible and solr is enabled
  • Modified Solr product loading code to not throw an exception if a product description exists for a language that has been deleted.

New in KonaKart 7.1.0.0 (Aug 20, 2013)

  • New Features:
  • Multi-Vendor functionality allowing vendors to manage their own products and orders and customers to buy products from multiple vendors in a single order.
  • New panel in the Admin App allowing you to maintain your store’s Velocity Templates.
  • New functionality allowing you to associate stores with addresses.
  • Add vertical scrollbars to panels when there is a large number of data rows to display (such as in View Logs, Importer, Templates panels etc).
  • A number of template changes to modify the output according to the setting of the “DISPLAY_PRICE_WITH_TAX” configuration variable.
  • Significant improvements in performance for the import messages API call.
  • Ability to configure personal preferences in the Admin App (eg. to define the number of products returned in each group on the Products Panel).
  • Additions to the Data Integrity Checker to include checks for Product, Category and Manufacturer data.
  • Made AdminStoreIntegrationMgr.java available in the custom directory to make it easier to add and build custom functionality when new stores are created in a multi-store environment.
  • Increased the maximum number of Payment Schedule objects visible in the drop lists in the EditProduct and Subscription panels from 100 to 1000.
  • Upgraded to BIRT 4.3.0
  • Added a new option to the FetchProductOptions object in the Application API to programmably allow returned products to be populated with tags. Normally for performance reasons they are only populated when retrieving a single product.
  • More flexibility in uploading images in different formats in the Administration Application. See FBC (File-Based Configuration for details).
  • Added section to storefront application to prompt customer to accept cookies.
  • The storefront application can now be configured to force a customer to login in order to use it.
  • Bug Fixes:
  • Various configuration parameters were not set corrected when using the silent installation and specifying a target installation directory containing a “~” on Windows.
  • Allow the saving of Manufacturer details after a new language has been added in the Admin Application.
  • Customers/Products/Categories shared attributes not being set properly by the installer for the konakart-m webappp.
  • Added a “–None–” option for tax class droplists in the Admin App to accurately reflect the status of the tax class.
  • Shipping wasn’t being recalculated when the delivery address was changed from the order confirmation page.
  • Some security improvements in the storefront application.
  • Modified storefront and mobile storefront applications to avoid (in some cases) the SEO modified URL from continually growing in size rather than being reset to display only the current relevant SEO data.
  • Modified Solr product loading code to not throw an exception if a product description exists for a language that has been deleted.
  • Backwards Compatibility Alert
  • AdminStoreIntegrationMgrInterface.java has been moved to the blif directory. If you have created your own AdminStoreIntegrationMgr.java class you need to change it to implement:
  • com.konakartadmin.blif.AdminStoreIntegrationMgrInterface
  • instead of:
  • com.konakartadmin.bl.AdminStoreIntegrationMgrInterface.

New in KonaKart 6.5.1.0 (Mar 8, 2013)

  • Fixes a few small UI problems and provides support for the recently-released MySQL v5.6.10.1.

New in KonaKart 6.5.0.0 (Feb 12, 2013)

  • New Features:
  • New storefront using struts2, JQuery and Ajax to give a more modern and functional user interface with less screen refreshes. Enterprise customers now get the full source code of the client engine and an Eclipse project to easily customize all parts of the storefront application.
  • Implemented getPromotionResult() method for the FreeProduct promotion module so that it can be determined whether the promotion is active before adding a product to the cart.
  • Allow embedded spaces with custom attribute “Set” function definitions – eg. Allow both string(1, 10) as well as string(1,10)
  • Addition of PunchOut functionality complying to OCI Rel. 4 using HTML rather than XML which was used for the previous implementation.
  • Upgraded to Apache Solr 4.0
  • Now allow 30 custom facet fields for Solr faceting instead of 10.
  • Multiple facet constraints can now be added to each TagGroup when performing a faceted search with Solr.
  • Added range facets for prices when using Solr.
  • All Solr searches now return the minimum and maximum prices for products in the search results.
  • Added a new API call (getTagGroupsPerCategoryWithOptions) which allows the fetching of tag groups without associated tags. The tags aren’t required when using Solr for faceted search so it improves performance to not retrieve them.
  • Added attribute to ProductSearch object to force the use of Solr. Normally Solr is only used when doing text searches or when returning custom facets.
  • Added catalog prices and quantities to Solr so that Solr searches can be performed when using constraints on catalog prices and quantities.
  • Modified Solr schema.xml to add SynonymFilterFactory to the kkName field type.
  • Modified the getManufacturersPerCategory() API call so that it returns the product count for each manufacturer even when not using Solr.
  • Introduced a mechanism to easily allow a KonaKart customer to implement a different password encryption algorithm. By default KonaKart uses the MD5 Message-Digest Algorithm. The class that needs to be customized is called Security.java and can be found under KonaKart/custom/utils/src/com/konakart/util
  • Return the custom attribute template id for products retrieved using the Application API.
  • Allow Custom Validation of Tag names, Tag Group Names and Tag Group Descriptions.
  • Now possible to override the default file name for KonaKart’s Velocity properties file (default name is konakart_velocity.properties). Also possible, using this customisation technique (see “KonaKart Properties Files” section in the User Guide) to specify different properties files for different environments (Dev, Test, QA, Prod etc).
  • Introduced a getManufacturers API call to the storefront engine and enhanced the existing getManufacturers API call on the admin engine to allow greater flexibility over searching for manufacturers – including the possibility to retrieve and order manufacturers by their custom fields.
  • Mask credit card numbers when written to the log in DEBUG mode (for enhanced PCI compliance).
  • Send additional parameters in PayPal module (first_name, last_name address1, address2 city, state, country, postcode)
  • Added two new engine API calls ( addCustomerNotifications() and deleteCustomerNotifications() ) to manage the signing up for newsletter and product notifications for registered and non registered customers.
  • Introduced a getReviews API call to the storefront engine to provide greater flexibility (more constraints and sort by options) when searching for reviews. The API call now also returns an array of review rating facets which show how many reviews are present for each rating.
  • A License Key is now required to run the Enterprise Extensions. License keys are added in the KonaKart Admin App… Ask [email protected] for your personalised keys.
  • Improvements to the Installer for Linux platforms which now sets more platform-specific configuration parameters which saves time by avoiding the need for manual configuration of these after installation.
  • Enhancements and speed improvements to Google Base interface. Google’s “Product Type” is now derived from the position in the Category Tree.
  • Introduction of product dimension attributes (length, width, depth).
  • Product weight column expanded to allow 15 characters instead of just 5.
  • The method splitNameIntoFirstAndLastNames() in BasePaymentModule has been deprecated with improved functionality being provided in the new getFirstAndLastNamesFromAddress method. All payment modules have been updated to use the new method as applicable.
  • Validation of coupon code when inserting a coupon in the admin app is now configurable.
  • Added the option to search for text in the product description in the Admin App.
  • Allow the possibility to specify “From Address” and “Reply To Address” on emails sent through the APIs.
  • Bug fixes:
  • Added invoice Number to the recurring billing request sent to AuthorizeNet. This information stops AuthorizeNet from thinking that it is a repeat request.
  • The array of Tags belonging to the TagGroup objects returned by the getTagGroups() API call were not being fully populated. The id of the tags was missing. This meant that it wasn’t possible to add or remove a tag and call the updateTagGroup() API call.
  • Fixed a bug that was causing an exception when an admin product query was returning no products and isFillMiscItems() set to true.
  • Problem making the Customer Reviews button invisible using the Role Privileges.
  • In certain configurations of Apache (notably with proxy servers being used) PDF viewing wasn’t working. Now fixed by adding application/pdf as the content type.
  • When setting up an expression, if the first variable displayed (Age of Customer) was used without modifying the default “greater than” operator, then the generated expression would pick up the “equals” operator instead.
  • Backwards Compatibility Alert:
  • v6.5.0.0 introduces the new Struts 2 based storefront. By default the standard
  • installer (and its Enterprise partner) will install the new Struts 2 based storefront. So, for new installations, if you wish to install the 6.5.0.0 version of the Struts 1 based storefront you will need to first install the standard Struts 2 based storefront, then you must run the Struts 1 installer and its Enterprise partner if applicable). For upgrade installations where you wish to keep your previous version’s Struts 1 based storefront the recommended approach is to:
  • Save your existing store front application somewhere safe before you start
  • uninstall KonaKart
  • Install all of the following in the same location over the top of each other:
  • Using the standard installer, install the new Struts 2 based storefront (but do not update the database using the installer)
  • If you’re using the Enterprise version, install the standard Enterprise version of the Struts 2 based storefront (again do not update the database using the installer)
  • Install the Struts 1 based storefront (again do not update the database using the installer).
  • If you’re using the Enterprise version, install the Enterprise version of the Struts 1 based storefront installer (again do not update the database using the installer)
  • Execute the upgrade SQL scripts for your database type for every release from the one you started with to the latest. Run these one at a time in sequence.
  • Move your previous Struts 1 based storefront code back into the konakart webapp
  • The API call getManufacturersPerCategory() now returns manufacturers for products of the selected category and all of its children. The new getManufacturers() API call may be used to return the manufacturers for only the selected category.

New in KonaKart 6.3.0.0 (Jun 15, 2012)

  • 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.

New in KonaKart 6.0.0.0 (Jan 28, 2012)

  • New Features:
  • Improved the KonaKart promotion subsystem (Enterprise only) by adding functionality to evaluate promotions on individual products rather than as Order Totals. This means that a customer can now visualize the details of active promotions for a product before adding it to the cart.
  • Added functionality to support product options with variable quantity (Enterprise Only). i.e. Customer can choose number of GigaBytes of extra memory for a product by entering an amount rather than choosing a fixed option.
  • The object containing payment gateway callback information has been given some extra attributes so that more information can be stored regarding the transaction type, transaction amount and custom information.
  • Added a new enableCustomer() API call and struts action to call it. This method can be used to verify a customer’s email before enabling him.
  • Added some custom relationship types in the Admin App for setting up product to product relationships.
  • Added animated gif to GWT one page checkout code to show customers that the system is waiting for data to arrive. Useful for the case when interfacing with external shipping or tax systems that may take a few seconds to respond.
  • Upgraded to new version of jTDS (v1.2.5) – for details of changes see http://jtds.sourceforge.net/
  • Upgraded to new versions of avalon-framework-api (v4.3), commons-collections (v3.2), commons-configuration (v1.7), commons-logging (v1.1), jcs (v1.3) and downgraded commons-pool (v1.3).
  • Upgraded to new version of Torque (v3.3) and Village (v3.3).
  • Removed the limit of displaying only 1000 Admin Users in the panel where the users are given roles.
  • Product Option and Option Value names have been given a max size of 64 characters and the validation length through the admin app is now configurable.
  • Added KK Engine API call, getAllPromotions(), to return all active promotions.
  • Made the Enterprise Extensions installer more robust when installing to Community Edition systems with non-default data present.
  • Added a new SQL Analysis utility (Enterprise Only) that can provide a quick overview of the SQL performance of the system.
  • Added Online Help for Reports Configuration in the Admin App.
  • When deleting a GeoZone (or “Tax Area”) using the deleteGeoZone() Admin API call, in order to maintain data integrity, any tax rates that use the specified geoZone are also deleted.
  • In the Admin App the date template is now read from the message catalog so that different languages can have different templates. Some of the dates are now shown with hour:minute precision.
  • Ability to define the default value for and/or hide the “Requires Coupon” checkbox on the Promotions panel of the Admin App using File-Based Configuration.
  • Bug fixes:
  • Save button sometimes enabled at wrong times on Tax Classes Panel of the Admin App. A minor usability improvement.
  • Fixed bug that allowed checkout without selecting a shipping method when using the JSP checkout screens.

New in KonaKart 5.8.0.0 (Jan 28, 2012)

  • New Features:
  • Introduction of a jQuery plugin enabling you to call the KK Store-Front API from JavaScript AJAX calls. The plugin uses the JSON APIs which are now available in the community version. Documentation available under the doc directory after installation.
  • Added possibility to perform faceted product searches using SOLR. The facet attributes can be defined for different types of products using the custom attribute functionality.
  • “Miscellaneous Items”, with defined “Miscellaneous Item Types” can now be associated with products and categories (Enterprise Extensions only).
  • Added 5 custom fields to the EmailOptions objects to provide greater flexibility in customizing the generation of email messages.
  • New CyberSource Hosted Order Post Payment Gateway Module.
  • Now bundled with Apache Tomcat 7.0.22 (previously bundled with 6.0.33). Note that this version of tomcat requires a minimum Java version of 1.6.
  • A new utility to create encrypted database passwords for the properties files so that they don’t have to be stored in plain text. (Enterprise Extensions only).
  • A security feature has been added for the BIRT Viewer. By default this is enabled. With this enabled it is now essential to have a valid sessionId in order to execute a report using the BIRT viewer.
  • Upgraded two apache-commons jars (to dbcp-1.4.jar and pool-1.4.jar). These provide various bug-fixes and improved JDBC support.
  • Upgraded to allow the hiding of the Edit button on the Orders panel via role-based security.
  • Allow the use of a CLOB for the custom attributes column in Oracle so that more than 4000 characters can be used for custom attributes if required.
  • Modified the order panel of the Admin App to resize automatically to fit lower resolution displays.
  • Replaced unmappable characters from CyberSource java files so that they can be compiled without warnings on platforms where UTF8 is the default encoding.
  • Added the option to hide the Print button on the Order Invoice Panel of the Admin App (using file-based configuration).
  • Now possible to rename the default store from “store1″ to another name. This is still not recommended practice but possible if required.
  • Upload button moved to a new position to allow the Manufacturer’s panel of the Admin App to fit on a smaller screen.
  • Centred Admin App dialog boxes using a different technique to place them in more central positions on all platforms.
  • Added functionality to the store-front app in order to facilitate SSO by passing customer and session information in a secure way when moving between two different applications using the same engine. i.e. A CMS system to place products in the cart and another system to checkout.
  • When inserting a product using the admin app, you can now specify hour:minute precision for the available and expiry dates.
  • When inserting a promotion using the admin app, you can now specify hour:minute precision for the start and end dates.
  • The select manufacturer and select template dialog boxes in the admin app have been given a double click handler to make a selection.
  • Added functionality in the Admin App to facilitate the maintenance of custom attributes. When custom attribute descriptions are modified or deleted, there is now the option to automatically update all of the products using the custom attribute.
  • Added last modified date as a search constraint for products in the Admin App API.
  • Added File Based Configuration parameters to the Admin App to make the title of the Edit Product panel configurable. You can now decide whether to show the product name, SKU or both.
  • Added a File Based Configuration parameter to the Admin App to make the Products panel configurable. You can now decide whether to show the product name or SKU in the first column of the array.
  • Added a RichText custom field widget to facilitate data entry for template based custom fields containing lines of text.
  • Added an API call to the store-front API to check whether a coupon exists and whether it is active.
  • Digital Downloads shipping module now installed by default.
  • Bug fixes:
  • Modified EditAddrBody.jsp to fix bug whereby phone numbers weren’t being displayed and therefore lost when the address was edited.
  • When the Admin App is deployed to a webapp with a different name the PDF viewer failed because it was hard-coded to use “/konakartadmin”. The Admin App code now derives the webapp name dynamically.
  • Due to changes in the default treatment of escaped strings in PostgreSQL 9.1 the syntax in the database loading scripts (konakart_demo.sql etc) has been modified. Previously the regular expression loaded for the sample custom attribute for date recognition was being imported incorrectly into PostgreSQL 9.1. For users of earlier versions of KonaKart, this can be fixed by running the database upgrade scripts.
  • In the Admin App, invisible products weren’t being displayed after having been added as a merchandising link (up sell, cross sell etc.) or as a promotion rule.
  • A race condition has been fixed which sometimes caused the deletion of all merchandising links (i.e. Up Sell) to a product when only attempting to delete one.
  • When a product is saved, the merchandising drop list in the merchandising panel, no longer resets to “Up Sell”. It keeps the current selection.
  • The Category panel in the Admin App wasn’t counting invisible products in the number of products per category.
  • Modified encoding for the directory structure SEO URLs in order to remove encoded forward and backward slashes which are not allowed by some app servers for security reasons. Any forward and backward slashes in product, manufacturer or category names are converted to dashes “-” in the SEO URL.
  • Increased the size of the products_name attribute in the orders_products table to 256 to match the products_name in the products_description table.
  • Updated MyProductMgr.java (in apiexamples) to reflect the latest method signatures.
  • Fixed admin app bug when viewing products for manufacturers. The manufacturer constraint wasn’t being set properly when filtering the search results with more constraints.
  • The formatting of hour:minute in the edit product panel of the Admin App has been modified to always show two digits for hour and two for minute. The modification affects the definition of special price start and end dates as well as bookable product time slots.
  • The option to delete products when deleting a manufacturer or a category, wasn’t deleting invisible products.
  • Backwards Compatibility Alert:
  • With the introduction of tomcat 7 there is now a requirement to use a minimum java version of 1.6 (previously we supported Java 1.5 and above).
  • The JSON APIs are now “switched on” after a default installation. The web.xml file of the konakart webapp must be edited in order to disable them.

New in KonaKart 5.7.5.0 (Jan 28, 2012)

  • New Features:
  • SOLR searches now return facets for categories and manufacturers so that the search results can be filtered using this information.
  • Enhanced product search to enable searching for products in multiple categories and for multiple manufacturers.
  • Added a new mode for formatting URLs for SEO. The standard format for URLs is now a directory structure containing the SEO data rather than extra attributes.
  • Provide access by default to the Velocity EscapeTool to escape output from your Velocity templates (for emails, orders etc).
  • Improved functionality of the getRelatedProductsWithOptions() API call of the Application Engine. The improvement is to allow to invert the direction of the related product link. This is especially useful for bundled products, so rather than discovering the products within a bundle, you can determine which bundles a product belongs to.
  • Automatic redirect to konakart webapp when the http://localhost:8780/ is used.
  • Upgrade of SOLR. KonaKart is now shipped with SOLR 3.4.0.
  • Modified updateOrderStatus() API call of Admin App to allow status change using the same status.
  • Enterprise Source pack now places the relevant Enterprise-only source files under the custom directory for easier custom ANT building.
  • Include the import and export of product tags in the XML_IO utility.
  • Allow the definition of translations of module names so that they can be viewed in the currently-selected language in the Admin App.
  • Drop lists for promotion types and order statuses are now populated with entries in the currently-selected language in the Admin App.
  • Increased the size of the category name to 256 characters.
  • Provide more flexibility in defining localisations with the introduction of several new Admin App message properties that can be defined for each language.
  • Bug fixes:
  • The GetBestSellers API call of the App Engine wasn’t returning the special price of a product.
  • Allow more than one store to be cloned at the same time.
  • Admin App fix to prevent Administrators accessing the kk_store records of stores they are not authorised to access.
  • Fix for the Admin App when installing the LDAP module on Oracle when it is the only “Other” module installed.
  • Fixed encoding problem when uploading images from the admin app with double byte character names. The name of the image on the file system wasn’t being set correctly.
  • When registering / checking out using the one page checkout GWT code the default country in the drop list was not being set to the store country in some browsers.

New in KonaKart 5.7.0.0 (Jan 28, 2012)

  • New Features:
  • New CyberSource Payment gateway
  • New WorldPay XML Redirect Payment gateway
  • New Free Gift Order Total Module.
  • Added custom fields to order totals.
  • Now bundled with Apache Tomcat 6.0.33 (previously bundled with 6.0.18)
  • Changes some struts action classes to do a 301 redirect rather than 302 when adding SEO data to the URLs.
  • Added an attribute to Order to keep track of who created the order. It is automatically set when logging in to the store-front app as an admin user and creating an order.
  • Use version number in GWT nocache.js files to ensure GWT applications (Admin App and components in the Storefront) are updated by browsers after upgrading to new versions.
  • Ability to define the default value for and/or hide the “Use Customer Language” checkbox on the Customer Communications panel of the Admin App using File-Based Configuration.
  • Modified testDB() API call of Admin App to not return the database connection string and database user. The API call remains backwards compatible but only returns information to determine whether a DB connection can be made.
  • If present, use the Order Number for the Invoice Filename rather than the internal Order Id.
  • Bug fixes:
  • One page checkout new customer registration fixed
  • Engine was throwing an exception when retrieving a wish list for a temporary customer containing a disabled or nonexistent product.
  • Change language wasn’t working properly for the admin app when running within a Liferay Portlet.

New in KonaKart 5.6.0.0 (Jan 28, 2012)

  • New Features:
  • LDAP module to connect to an LDAP directory in order to validate customer and admin user credentials.
  • In Admin app can now search for orders based on customer name, email and postcode in order to search for orders for non registered customers.
  • Added the ability to add custom business objects to the Velocity context to make these available for your Velocity templates.
  • Bug fixes:
  • Fixed bug when inserting coupons using the admin app. The times_used attribute was getting set to the value of the coupon selected before the insert.
  • In the TaxAreaMapping panel of the Admin App, the Search and Clear buttons were overlapping the border of the search panel in Chrome and FireFox.
  • Wrapped the manufacturer name in CDATA when sending a product to the SOLR search engine to avoid having to encode certain characters within the manufacturer name such as the ampersand character.
  • Fixed bug in multi-store non shared customers mode. In some cases the categories weren’t being displayed in the categories tab of the edit product panel.
  • The Change Language functionality of the admin app wasn’t working correctly when the file based configuration property was set so that the password is never stored in a temporary cookie.
  • A fix for the “controversial” new deferred segment creation feature introduced into Oracle 11gR2 (Enterprise Only). Installations failed with this db with the default setting of DEFERRED_SEGMENT_CREATION=TRUE. Now our Oracle scripts set DEFERRED_SEGMENT_CREATION=FALSE on the session to ensure that the installation runs as required.

New in KonaKart 5.5.0.2 (Sep 26, 2011)

  • This is a bug fix release for Version 5.5.0.1. It requires no database changes. A bug has been fixed in the Admin App Liferay Portlet which wasn’t loading the GWT JavaScript due to a naming error.

New in KonaKart 5.5.0.1 (Sep 8, 2011)

  • This is a bug fix release for Version 5.5.0.0. It requires no database changes. A bug has been fixed which didn’t allow new customers to register when using the GWT one page checkout code in the store-front application.

New in KonaKart 5.5.0.0 (Aug 4, 2011)

  • New Features:
  • Introduced Bookable Products functionality to cater for products such as courses.
  • Added functionality to the admin app to allow you to manage catalog prices and quantities.
  • Added an “Active” attribute to the Country objects allowing you to mark countries as “Active” or “Inactive”.
  • Repeat Order functionality of the store-front application now repeats the billing and delivery addresses rather than just presenting the default ones.
  • Made the product type search droplist (Admin App Products Panel) configurable using the Hidden Product Types configuration variable.
  • New Payment Gateways Added: Barclaycard SmartPay Hosted and Barclaycard SmartPay API (both with 3D-Secure capability).
  • The “sessionId” parameter has been added to the URL when reports are run from the Reports panel of the Admin App. This allows you to authenticate the user by checking the sessionId (this is the KonaKart SessionId). The sessionId has also been added to the “Status Page Report URL” that is displayed in a frame on the “My Store Status Panel”.
  • In the product listing view of the Admin App, only show the special price if it is enabled.
  • In the Returned Products panel of the Admin App, a new Return can now be inserted by entering the order number rather than the order id.
  • Bug fixes:
  • Added Order by Rating constraints to Solr mgr for retrieving products.
  • Fixed a bug in the XML_IO utility where a property was referred to as “mesaages” rather than “messages”.
  • Calendar Pop-up bug fixed where the wrong date was being selected (when 31/5/2011 was clicked on, 1/5/2011 was actually selected).
  • Fixed a bug where in the admin app where the image servlet url was hard coded when uploading manufacturer and category images.
  • Fixed a bug in the admin app where sorting products by price was generating an exception when using MS SQL.
  • The tep_cfg_pull_down_order_statuses( set_function wasn’t working properly in every store in multi-store mode with non-shared customers. This bug caused order status droplists to be empty in some of the stores. Now fixed.
  • Fixed a start-up race condition where configuration variables could be accessed before they were initialised.
  • When the admin app was integrated with Liferay and the KonaKart session was timing out before the Liferay session, an exception was being thrown.
  • Installer defaulted to mysql when installing the Enterprise Extensions in engine Mode 1 (multi-store multi-datbase mode). Now the wizard presents a database type choice to allow the user to override this default.

New in KonaKart 5.2.0.0 (Jan 19, 2011)

  • New Features:
  • New “Buy X Get Y Free” Promotion Module
  • New “Pick up in Store” Shipping Module
  • Added drop shipper support by associating addresses to products. Manufacturers can also now have multiple addresses. The Admin App has been enhanced to manage multiple addresses for Customers, Products and Manufacturers.
  • Modified Order Total object to accommodate an array of order totals. This allows each product discount to have its own line item in the order. i.e. An order total module may return an array of results.
  • Added invisible attribute and search field to a zone object. Also added functionality to allow to set the zone during registration and address change. Changes should allow better handling of the cases where a US state contains multiple tax zones.
  • Added custom fields to the digital download object and app API calls to get and edit an object.
  • Added functionality to update store front message catalogs when a refresh cache command is sent from the admin app. When upgrading, a change must be made to the struts-config.xml to enable this functionality.
  • Added a multi-lingual description field to the category object.
  • Added possibility of creating a wish list even when a customer is not logged in.
  • Added possibility of limiting the number of times a promotion is used by a customer.
  • The getProduct() API call of the app engine now returns an array of ProductQuantity objects for each product, which contain the SKU for the product variation as well as quantity in stock information.
  • Added a new method to the Shipping Module Interface designed for the purpose of integrating KonaKart with 3rd Party Shipping Applications. An example is provided for UPS WorldShip which uses the Auto-Import feature to import Orders from KonaKart.
  • When creating a new store dynamically using “Clone Store” in the Admin App a check is made (in the background) that the new store name chosen does not already exist.
  • New exportOrder API call for exporting orders in various ways which can be specified in an options parameter. One option is to export the full order as XML.
  • Now possible to specify which product types will appear on the product types droplist on the edit product panel of the Admin App. This is done by defining which product types you wish to hide in a new configuration variable on the ‘Admin App Configuration’ panel.
  • A small number of configuration parameters have been moved to different sections to arrange them in more logical groups.
  • Dialog displaying error messages in the Admin App now uses a vertical scrollbar making it easier to view very long exception messages.
  • Added product quantity as a criteria to the product search object.
  • Each server engine instance now has a thread for refreshing cached data. Previously the refresh API call was made from the client engine and so this functionality wasn’t available when the client engine wasn’t deployed.
  • Added extra hooks to the KKAppEng to intercept when the config variables are cached and when the temporary data caches are refreshed.
  • New Admin App API calls to set / get product prices in external table to support multiple catalogs.
  • New Admin App and App API calls to set / get product quantity in external table to support multiple catalogs.
  • Upgraded the KonaKart installer to version 1.2.15 of InstallJammer
  • New set of getConfigurationValue(key) API calls for KKEngIf that get the configuration value for the specified key (get as Integer, Bool, etc).
  • Better error reporting when configuration variables cannot be converted into integers or decimal values – resolves start-up problems which could result with misconfigured Shipping modules.
  • Added page links to page through products in the store front application. Previously paging was only possible using Next and Previous links.
  • Added image upload buttons to Category and Manufacturer panels in the Admin App.
  • Added a review maintenance panel to the Admin App and Review States to allow reviews to be approved before being published.
  • Now possible to store the application messages in the database or in the current message properties files (which remains the default). New kkMessages utility provided to load messages from message properties files into the database. New Admin App “Messages” panel added for the live maintenance of this messages. See User Guide for details.
  • A number of improvements in the handling of files used in the system with respect to correct use of file encoding.
  • Extracted the KonaKart logo from the previous image resource bundle to make it easier to add your own company logo to the Admin App.
  • Modified the admin app to add paging for manufacturers and product options in order to better support large product catalogs.
  • Upgraded to BIRT 2.6.1
  • Bug fixes – Application
  • Some promotion modules weren’t applying the rule properly for applying the promotion only after a minimum number of products are ordered.
  • Sort by “times ordered” was not implemented for SOLR searches.
  • All of the modules (shipping, payment, promotion) have been made multi-store ready. Previously they shared some static variables which didn’t allow each store to set them independently.
  • Wish list management wasn’t functioning correctly when products were being added using the store front application in different languages.
  • If all categories had last modified date set to null, the category tree cache was never used, so reducing performance.
  • When using external prices, the option prices were never being shown as negative.
  • Bug fixes – Admin App
  • Tree view of ProductOptionsPanel now remains open on the node edited or inserted.
  • Templates used to display invoices, packing slips etc are now selected based on the currently-selected language of the Admin App rather than the default language of the store.
  • Panels for setting product quantity and availability date were not working when product was invisible.
  • Translation of labels and floatover text now possible for the non-standard Promotion-Type-specific configuration fields. This only affected a small number of promotion configuration fields.
  • Clone Store operation checks supplied credentials before commencing the creation of a new store preventing the creation of partially-completed stores.
  • Transaction errors did not cause rollbacks in all circumstances when saving customer objects in the Admin engine.
  • Some panels were never showing invisible products regardless of the setting of the configuration variable.
  • Entry in specials table wasn’t getting deleted when the product was deleted.
  • Admin App panel for configuring bundled products wasn’t working correctly when one of the bundled products was itself a bundle.
  • Problem displaying invoices from stores other than store1 in multi-store configuration.
  • Bug fixes – XML_IO Importer / Exporter
  • Configuration Parameters no longer lose their sort order attributes when exporting
  • Fixed a null pointer exception that occurred if wishlists with no items were imported

New in KonaKart 5.0.0.0 (Jun 16, 2010)

  • New Features:
  • Reward point functionality has been added so that customers can be awarded points for buying products, registering, writing reviews etc. These points can be redeemed during the checkout process and a customer can view a statement of his recent point transactions after logging in. An administrator can manage a customer’s points.
  • Support for recurring billing. Payment Schedule and Subscription objects have been introduced to support recurring billing natively using a KonaKart batch or through a payment gateway that manages the billing process at regular intervals.
  • Invoices can now be created in PDF format and can also be attached to order confirmation emails. Invoices can also be viewed from both the storefront application and the Admin App.
  • Added a number of extra custom attributes to the product object including integers and decimals. All fields can be used for searching and sorting. Expiry date has also been added.
  • Added extra telephone numbers and eMail addresses to the billing and shipping addresses. These new attributes are visible to the address formatter.
  • The language of the store front application is saved in a cookie so that even non logged in customers return to the application in their preferred language.
  • Added a locale attribute to customers and orders to allow emails, especially from the admin app to be sent out in the correct language rather than the default store language.
  • WYSIWYG editor added to the Admin App for editing product descriptions.
  • Upgraded to Google GWT 2.0
  • Added search rules for searching for products and other objects through the application and admin app APIs. The rules allow you to easily define whether and where, wild cards should be added. The admin app has a new properties file where default wild card settings can be defined for the various panels within the admin app.
  • Added a refresh button to the reports panel of the Admin App
  • If a logging properties file isn’t found on the classpath, rather than giving a null exception, KonaKart now initializes the log4j system with a set of default logging properties.
  • Country objects returned by the getAllCountries() API call are now fully populated.
  • Eclipse project supplied for customizing the One Page Checkout GWT code
  • Now possible to set the first day of the week on the Calendar Popup widget to a chosen day.
  • Made it possible to internationalize the few remaining aspects of the Admin App. To take advantage of these you will have to update your AdminMessages_XX.properties file for your own locales.
  • Now possible for a customer to use a gift certificate and a promotion code at the same time.
  • Added new Struts Validator to the store-front application to avoid XSS injection during the submission of forms.
  • Added a drop list and upload button to the customer communications panel of the Admin App to allow you to select templates and upload new ones. The templates are now stored in a different directory for each store in a multi-store environment.
  • Modified the Edit Product panel in the Admin App to make it easier and more intuitive to upload images. Also added upload button for digital downloads.
  • Improved I18N for the Admin App to allow decimal numbers such as prices to be inserted using other characters as a decimal point. i.e. a comma.
  • Added order number to the returns panel of the admin app to allow you to search for returns based on the order number and not just the order id.
  • Added a configuration variable in order to automatically enable a product when its quantity is changed to a value greater than 0 through the admin app API.
  • Upgraded to version 1.4 of Solr.
  • A new mode of operation is available for the Edit Customer panel of the Admin App to allow you to define that certain roles may edit only “external” customer details. This is useful for the cases where customers are actually managed outside of KonaKart. It makes it possible for the Admin User to edit only the Customer Group, the Newsletter subscription, the state (enabled/disabled) and the customer type (admin/customer/default).
  • Added a configuration variable that controls whether customer Ids are displayed on the edit customer panel. Customer Ids are now shown as floatover text on the Customers Panel.
  • New eWay Australia payment gateway module added.
  • Product importer/exporter modified to import and export using UTF-8 encoding.
  • Improvements to the installer - automatic discovery of current java environment improved and extra validation to check the selected java runtime environment is valid.
  • Bug fixes - Application:
  • Added a timestamp to paging links to avoid paging expired result sets that may be accessed by using the browser back button.
  • Fixed a bug when searching for products using Solr. Products under multiple categories being searched for “by category” were not being found.
  • Bug fixes - Admin App:
  • Links on the right hand side of the status page weren’t working.
  • edit review and delete review links on Edit Product panel weren’t working
  • Backwards Compatibility Alert:
  • The velocity templates are no longer stored directly under the WEB-INF/classes directory. They are now stored under the installation home directory in a /templates/store_id/ directory structure where store_id is the id of the store and defaults to store1 in a single store environment. It is possible to move these to any other location so long as you update the TEMPLATE_BASE_DIRECTORY to point at the new location.
  • In addition to moving the velocity templates, they are all (those from the konakart and konakartadmin webapps) now grouped together in the same location. This resulted in a conflict of names where the EmailNewPassword_en.vm existed in both the konakart and the konakartadmin webapps. Therefore the one from konakartadmin has been renamed to be EmailNewPasswordAdmin_en.

New in KonaKart 4.2.0.0 (Jan 13, 2010)

  • New Features:
  • The store front application has been re-worked to give it a more modern look and feel including multiple images per product. The icons of the Admin App have also been replaced to give a fresher look.
  • Internationalization - The language of the admin app may now be changed dynamically.
  • The Enterprise version of KonaKart now contains sophisticated marketing functionality that allows you to capture customer data as the customer uses your KonaKart eCommerce store; and to use that data within complex expressions in order to show dynamic content, activate promotions and send eMail communications.
  • Gift Certificates are now supported. Gift Certificate products may be connected to any type of promotion and activated through a coupon code contained within the certificate.
  • New functionality to allow digital download products (.txt and .pdf) to be indexed in the SOLR search engine so that they may be found by doing a product search using search keywords.
  • New snippet functionality that returns text fragments surrounding search keywords so that the context of the search result can be determined. Useful especially for indexed digital download documents.
  • The Enterprise version of KonaKart allows products to have an unlimited number of prices based on a product catalog id.
  • A KonaKart product now has an average rating attribute that can be used in a search filter and to order the products returned. A batch job is supplied to set the average rating based on all of the reviews present for a product.
  • Added dateAvailable to the search constraints for products.
  • Tag and Tag Group Maintenance has been moved to the Products section of the Admin App. Also a new Marketing section has been added.
  • Custom Validation enhanced for the Admin App to include a wider selection of attributes.
  • Added API calls to allow the paging of wish list and gift registry items.
  • Added a shipping discount promotion.
  • Added an EmailIntegrationMgr which provides a hook to allow you to look up an eMail address from an external system.
  • Ability to specify whether or not to use wildcard flags and a LIKE or EQUALS search when searching for customers based on their email address (Admin API).
  • Module parameters can now be masked from clear view (i.e. they show "******") in the Admin App with the setting of "password" as the set_function in the configuration table.
  • New MoneyBookers payment gateway module added
  • The getSpecialsPerCategory() API call (app and admin app) has been given an extra attribute to determine whether or not to search within sub categories.
  • The product search object has been given an extra attribute to configure whether the description should be returned for each product.
  • The Velocity template engine can now be configured through an external properties file.
  • Upgraded to Google GWT 1.7.
  • Bug Fixes-Admin App:
  • Mail subject is now encoded into UTF-8.
  • Products in multiple categories are no longer deleted when deleting one of their categories. Also they are not moved to the parent category if they belong to another category.
  • Upload of product images in Shared Customers mode wasn't working properly.
  • Bug fixed in updateConfigurationGroup Admin API call where booleans were not handled correctly (this call was not actually used in KonaKart prior to 4.2.0.0).
  • Bug Fixes-App:
  • Mail subject is now encoded into UTF-8.
  • The HTML escaping of reviews (when being inserted) was escaping too many characters, making the review un-readable from the admin app. Now only the
  • standard HTML control characters are being escaped (i.e. , &, ", ').
  • Modified a divide operation in the saveOrder method call to avoid an exception during the customization of KonaKart if order prices were being modified without specifying the scale.
  • The category tile was sometimes showing the incorrect category when viewing the details of a product that belongs to multiple categories.
  • When showing products belonging directly to a parent category that has also sub categories, the manufacturer drop list selector was showing the manufacturers of the products in the sub categories and not those of the products in the parent category.
  • The manufacturer filter drop list was not being reset when transitioning from viewing a category with products that have multiple manufacturers, to a category that has no products.
  • Validation added to check for valid Country Ids when adding an address to a customer
  • Coupon codes are now stored in the session so only have to be entered once.
  • Secret key generation for asynchronous payment modules now works for load balanced systems.
  • The quantity of a bundled product was not being calculated correctly.
  • Bug Fixes / Enhancements - Importer / Exporter:
  • Custom Validation settings defined for the Admin App are also used during imports.
  • Improved support for the loading of larger data sets.
  • Improved matching of records to avoid import of duplicate records.
  • Support added for import and export of WishLists and WishList Items.
  • Support added for all newly-added entities supported in XML_IO utility (including Customer Tags, Expressions etc).
  • Bug fixed in the import of ConfigurationGroups - it was creating duplicates.
  • Backwards Compatibility Alert:
  • The application and admin application method getSpecialsPerCategory() has been given an extra attribute in order to search or not search within sub categories.
  • The PaymentInfo object no longer contains a Secret Key attribute. The method to generate a secret key is now called directly from the payment module when required.

New in KonaKart 4.1.0.0 (Jan 13, 2010)

  • New Features:
  • Added shared products mode to multi-store. This feature allows you to add a product to multiple stores but only have to manage one copy of the product in the admin app. The product price may differ between the stores.
  • KonaKart now supports Gift Registries. An implementation for wedding lists has been added to the store front appplication.
  • All client side exceptions shown to the customer are now also logged.
  • New API call to retrieve Categories to Tag Groups.
  • Save button enabled in Admin App without the need to tab off fields. Improves consistency of behaviour across all panels of the Admin App.
  • Added USPS and USPS International payment gateways
  • Various improvements to the XML Import/Export feature providing greater flexibility in defining which objects to import/export (Enterprise Extensions only). Additional command line arguments have been made available with some example scripts to demonstrate the new features.
  • Bug Fixes-Admin App:
  • Fixed Calendar widget so that it expands to 6 rows where required.
  • A number of minor bugs fixed where search filters and back buttons were being lost under certain conditions
  • Bug Fixes-App:
  • Fixed a bug where breadcrumbs were never resetting. It could be reproduced by clicking the add address button in the My Accounts section and then the back button.
  • The assignment of zones to payment and shipping gateways was not working properly. The defined zone was not being detected. Now for example, you may want to assign a USA zone to the USPS gateway so that it doesn't get called for non US destinations.

New in KonaKart 4.0.0.0 (Jan 13, 2010)

  • New Features:
  • Upgraded to Axis 1.4
  • 3 custom fields added to zones table
  • Support for multi-currency. A customer can now view and search for products in a currency different to the default currency.
  • Added cookie management to remember guests and their cart contents even if they haven't registered.
  • Added many extra Application API calls that include an extra "options object". The purpose of this object is to pass the catalog id to the eCommerce engine so that the product manager may be specialized to retrieve the product price and quantity from an external source based on the catalog id.
  • Enhanced product select dialogs in Admin App. Can now include extra attributes based on a template and can search by SKU as well as by a keyword.
  • Added an API call to the Admin App called setProductQuantity() and getProductQuantity() to change the quantity of a product without having to retrieve the product, edit it and save it. A panel has also been added to enable power users to perform this action efficiently.
  • Added custom fields to the session table.
  • Two new API calls, addCustomDataToSession() and getCustomDataFromSession() have been added to the Admin App and Application APIs.
  • Added the ability to retrieve customers using custom fields as search criteria.
  • Added a Date Available attribute to the Products_quantity table so that each product variation can have a different available date.
  • Added an API call to the Admin App called setProductAvailability() and getProductAvailability() to change the available date of a product without having to retrieve the product, edit it and save it. A panel has also been added to enable power users to perform this action efficiently.
  • Added the last modified date to an Admin Product. The creation and last modified dates are now visible from the Admin App.
  • For digital download products, added a Max Number of Downloads attribute and a Max Number of Download days attribute. If set, these values override the global values set using configuration variables.
  • Added a Stock Reorder Level attribute to each product object. If set, this value overrides the global value set using a configuration variable.
  • Custom Validation enhanced for the Admin App to include a wider selection of attributes
  • Added an order tracking attribute to the order object. Added extra callouts to the OrderIntegrationMgr to edit the order before it is saved and a specific one to add the tracking order before the order is saved.
  • Added a "Can Order When Not In Stock" attribute to each product. If set, these values override the global values set using configuration variables.
  • Added an invisible attribute to categories so that they do not appear in the application when invisible.
  • Added SKU attribute to Basket and OrderProduct objects.
  • Added State attribute to OrderProduct that defines the availability state of the product when the order is created.
  • Scheduling feature added (Enterprise Extensions only) using Quartz. Includes three batch jobs: RemoveExpiredCustomers, UnpaidOrderNotification and ProductAvailabilityNotification.
  • Added the ability to clone stores in a multi-store configuration (Enterprise Extensions only)
  • New BIRT report - ProductsToReorder.
  • Added support to integrate the KonaKart Admin App into Liferay.
  • Bug Fixes-Admin App:
  • Sorting by "Logons" and "Last Logon" gives an error with Oracle.
  • Non registered customers are no longer displayed in the customers section. These are created when KonaKart is configured to allow checkout without registration; and were being inadvertently displayed in the customer list. A parameter has been added to the AdminCustomerSearch object in order to programmably display or not display the non registered customers.
  • The printing of the order invoice and packing slip wasn't working.
  • Fix to the SQL generated to set correct URL values for the default chart on the status page of the Admin App. (Only a problem on Linux with DB2, Oracle and MSSQL)
  • Fix to the SQL generated to remove quotes around floating point values in currency inserts. (Only a problem with Oracle databases that do not convert strings such as '1.306' to floats correctly).
  • Corrections to two BIRT reports (only a problem under Oracle, DB2 and MS SQL). TopCustomers.rptdesign and TopProductsList.rptdesign.
  • Fix to admin app to display prices when comma is selected as the decimal point.
  • Customer type search attribute not working in getCustomers() and getCustomersLite() API calls.
  • Bug Fixes-App:
  • Changed the message catalog to remove the text : I am a returning customer. If you have already shopped at our store but never registered, please click on the Password Forgotten link below and we'll send you a password. A non registered customer needs to go through the registration process so the text is wrong.
  • getCurrencies() API call was not using search criteria correctly.
  • Bug Fixes Google Base Interface:
  • Update required due to a change in the Googe Base API. This fixes the "You must specify an id for an item" error message.
  • Backwards Compatibility Alert:
  • The application API call getProductQuantity(String encodedProductId) now returns a ProductQuantityIf object rather than an int. The reason is to return the Date Available as well as the quantity.

New in KonaKart 3.2.0.1 (Jan 13, 2010)

  • Bug Fixes-Admin App:
  • Fix to the SQL generated to set correct URL values for the default chart on the status page of the Admin App. (Only a problem on Linux with DB2, Oracle and MSSQL)
  • Fix to the SQL generated to remove quotes around floating point values in currency inserts. (Only a problem with Oracle databases that do not convert strings such as '1.306' to floats correctly).
  • Corrections to two BIRT reports (only a problem under Oracle, DB2 and MS SQL). TopCustomers.rptdesign and TopProductsList.rptdesign.
  • Sorting by "Logons" and "Last Logon" gives an error with Oracle.
  • Print of packing slip and order invoice wasn't working.
  • Fix to admin app to display prices when comma is selected as the decimal point.
  • Bug Fixes-App:
  • Changed the message catalog to remove the text : I am a returning customer. If you have already shopped at our store but never registered, please click on the Password Forgotten link below and we'll send you a password. A non registered customer needs to go through the registration process so the text is wrong.
  • Bug Fixes Google Base Interface:
  • Update required due to a change in the Googe Base API. This fixes the "You must specify an id for an item" error message.

New in KonaKart 3.2.0.0 (Feb 3, 2009)

  • KonaKart engines have new constructors to cater for multi-store functionality. In some cases the old constructors have been deprecated.
  • SetConfigurationValue() in the Admin API has changed. This now requires an extra parameter. The extra parameter is the session Id. This has been modified to ensure that changes to configuration values are only made by callers with a valid sessionId. (SessionIds are returned from successful logins).
  • For security reasons, the default installation of KonaKart disables the web service interfaces. Look at the on line documentation for instructions on how to enable these interfaces.

New in KonaKart 2.2.6.0 (May 29, 2008)

  • Added support for bundles. Bundle products can be defined in the Admin App. The quantity of the bundle product is calculated automatically and tools are provided to calculate the cost (optionally using discounts) and the weight.
  • In the application, the bundled products are available in the product detail screen, the quantity available is calculated and the quantity in stock of the bundled products is decremented automatically when an order is processed.
  • Added product tags and tag groups to enable detailed product searches based on the tags. Tag groups can be linked to a category in order to display them in a context sensitive manner. i.e. You could link a "Food Type" tag group to a restaurant category in order to select only restaurants that serve vegetarian dishes or spicy food etc.
  • Added an application feature whereby any previous order can be repeated with a single click.
  • New customization framework for modifying / supplementing the KonaKart engine behavior. This provides hooks that are easy to program that allow you to customize the KonaKart engines.
  • Two new API calls on both the Application API and the Admin App API:
  • String custom(String input1, String input2)
  • String customSecure(String sessionId, String input1, String input2)
  • These allow you to add your own engine interfaces to enhance the behavior of the KonaKart engines.
  • Added 10 custom panels that display a predefined URL in a frame. This feature allows you to extend the Admin App by adding your own administration functionality outside the standard Admin App.
  • Added the ability to program a button on the Admin App Returns Panel to call your own custom URL.
  • An example of its use could be to call an application that processes credit card refunds through the payment gateway.
  • When AdminOrderProducts are returned by the Admin API they now have the optionId and valueId attributes of the options populated, and not just the name and value.
  • UTF-8 encoding now used for the mail sent out from the Email command in the Admin App allowing double-byte characters to be used in customer emails.
  • The product search functionality in the Admin App has been enhanced.
  • Added new method addToBasketWithOptions(). Currently there is one option that allows you force a product into a new basket item even if an identical product already exists. The default behaviour is to just update the quantity of the existing item.
  • Added new method createOrderWithOptions(). Currently there is one option that allows you to automatically copy all of the basket custom fields to the orderProduct custom fields which are generated from the basket items.
  • Added custom fields to cartItem.
  • In the Admin App added a button to select the customer from the orders panel.
  • KonaKart version number and build date has added to the meta data in the Admin App (KonakartAdmin.html file) - this provides a convenient way to find out which version you are running.
  • Fixed bug to clear the order history list when a customer logs out.
  • Fixed array out of bounds exception when there were no categories in the system.
  • getShippingQuote() was throwing a null pointer exception if the shipping module didn�t exist.
  • getPaymentDetails() was throwing a null pointer exception if the payment module didn�t exist.
  • UpdateBasket was not updating the custom fields.
  • When the session was timing out, the user was receiving an exception in the application.

New in KonaKart 2.2.4.0 (Mar 20, 2008)

  • Added a new API call to com.konakart.al.ProductMgr to allow you to set the default order_by for API calls that retrieve arrays of products. Previously the default was set to "Order by price ascending" and not configurable.
  • Added EditOrder(), a new API call for the Admin API. It allows you to edit some order attributes.
  • Enriched the functionality of the Admin API call, getOrders(), to allow you to search by Custom fields, Date Added and Date Finished.
  • In the Admin App when uploading an image, the directory will now be created if it doesn't already exist.
  • Added a hook to allow custom credential checking during Login. This allows a company implementing KonaKart to develop their own credential checking algorithms rather than to use the standard KonaKart implementation. It can also be used to achieve Single Sign On and to connect to an LDAP directory.
  • Added a new API call to the AdminEng to return the top level categories.
  • Added configuration variables to specify whether you want a wildcard ('%') placed before or after text that is entered for searches in the Admin App. The default will be the pre-2.2.4.0 behaviour of adding wildcard search characters before and after all eneterd search text.
  • Included "Packing List" and "Invoice" buttons as part of the role-based security system - allows you to enable or disable these buttons in role definitions. The default setting is pre-2.2.4.0 behaviour which is to enable both buttons.
  • The lastModified attribute of an order was not being updated when the status of the order was changed through the Admin API. Fixed
  • The back button from the edit product panel wasn't always working after uploading an image. Fixed
  • The getCustomers() API call wasn't instantiating the last modified date for the customer objects. Fixed
  • Unable to control the visibility of the Reset Password button on the Customers Window. Fixed
  • Fixed bug to allow the DataDescriptor to be set to null for most API calls that retrieve products and reviews. The Javadoc was already reporting this behaviour although the engine was throwing an exception when finding a null value.

New in KonaKart 2.2.2.0 (Jan 23, 2008)

  • Support for JSR 168 portlet specification to enable you to run KonaKart within a portlet.
  • Checkout without registration
  • Added customer notifications to the Admin App. You can send template based eMails to all customers, to all customers who have requested to receive the newsletter and to customers that have asked to be notified about any updates for a particular product.
  • UPS shipping module
  • Build kit to produce JSR-168 compliant portlet WAR
  • When the state of an order is changed through the Admin API / Admin App, a unique email velocity template can be defined for each order state.
  • Added the functionality to order products in the application API using the custom fields.
  • Added the functionality to search for products in the application API using the custom fields.
  • Added functionality to AdminCustomerSearch to search for customers with newsletter and notified products
  • All Application API calls that return an array of products now return all custom fields.
  • Previously only custom1 and custom2 were returned.
  • New interfaces for the Admin API: setCustomerPassword, insertProductNotification, deleteProductNotification and getCustomerForEmail
  • Added custom fields to OrderProduct and Basket objects.
  • Improvements to the JavaDoc
  • One page checkout code and build file included in KonaKart download packages

New in KonaKart 2.2.1.0 (Dec 7, 2007)

  • Redesign of UI to make it more skin-friendly. KonaKart now comes with 4 different skins.
  • Capability to add additional mail properties in a new configuration file. This allows you, for example, to use SMTPS mail gateways with authentication, and at defined ports.
  • Configurable log file directory for storage of diagnostic log files.
  • Two new payment gateways: YourPay and PayJunction
  • Tax Rates, Tax Areas and Tax Classes - No Save button on inserts after deleting all records
  • Edit Product, Edit Manufacturer, Edit Category were showing incorrect language data a language was deleted without deleting the descriptions for this language.
  • Delete product. The product is now deleted from all customer's baskets.
  • Tax wasn't being calculated for the All Countries and All zones cases.
  • Filter by manufaturer wasn't working when selecting all manufacturers after having filtered by a single manufacturer.
  • Orders could not be saved for Countries with names longer than 32 characters. (A database error inherited from osCommerce)
  • Orders_Product Model_Name column increased to 64 characters to match orders table.

New in KonaKart 2.2.0.7 (Oct 22, 2007)

  • Configurable Auditing for Admin App
  • Role-based security for Admin App
  • AJAX components upgraded to use the latest GWT release (1.4.60) - provides greater stability and significant performance gains
  • Support for digital downloads
  • Added many configuration variables for enabling sending of emails (registration, order confirmation etc.) rather than one global on / off variable.
  • Added multiple image support for a product. Every product now supports 4 images.
  • Added a data comparison field to products. This should contain structured data (i.e. XML) so that many similar products can be compared, feature by feature.
  • Reports configuration menu re-instated.
  • Returns panel stored incorrect item quantity under certain conditions.

New in KonaKart 2.2.0.6 (Sep 7, 2007)

  • Admin App is now fully internationalized and can be translated through a message catalog.
  • Addition of an import / export tool to allow import and export of product data from a file.
  • Addition of two new payment gateways (USA ePay and Authorize.net). The credit card details are entered directly into a KonaKart JSP rather than redirecting to a page belonging to the gateway.
  • Addition of a returns section to the Admin App to manage product returns.
  • Through the admin app you can configure a new URL for when switching to SSL.
  • The previous version only allowed you to configure a new port.
  • Increased products_model column from varchar(12) to varchar(64)
  • Fix: FireFox always used to give an error during product image upload although the upload was working.
  • Fix: searchForIpnHistory Admin API function caused SQL error on DB2.
  • Fix: Velocity engine was opening and never closing a file handle to the log file every time KonaKart was calling it. The new default condition is to have no velocity logging.
  • Backwards Compatibility Alert: The AdminIpnSearch class has changed (orderId changed from String to int). This is used in the searchForIpnHistory Admin API call. Any uses of AdminIpnSearch will need to be updated.

New in KonaKart 2.2.0.4 (Jul 12, 2007)

  • Implementation of AJAX based One Page Checkout functionality
  • Added support for DB2 and MS SQL Server
  • Added advanced SEO features
  • Clickable more detailed breadcrumbs
  • Added a callback class that gets called whenever an order is made by a customer or when the state of an order changes due to an event such as a payment gateway callback.
  • Installer now checks your database connection and, optionally, initialises your database ready to use KonaKart
  • Added a KonaKart news feed to the Admin App

New in KonaKart 2.2.0.3 (Jun 5, 2007)

  • Promotions / Coupons / Merchandising
  • Oracle Support

New in KonaKart 2.2.0.2 (May 7, 2007)

  • Reporting added to KonaKart through the integration of BIRT, the popular Open Source Business Intelligence and Reporting Tool.
  • Enable / Disable http / https communication, and define port numbers through Admin App. No longer need section in web.xml
  • Email sent to warn of low stock level.
  • Added feature to allow editing of configuration files from the Admin App.
  • Fix: Reviews weren't being deleted when a product was deleted.
  • Fix: The category tree in the categories tile wasn't getting updated with the current category when a product was clicked on in order to view the product details.
  • Fix: Application forms weren't using UTF-8 encoding.
  • Fix: eMail templates and the eMail engine weren't using UTF-8 encoding.

New in KonaKart 2.2.0.0 (Mar 24, 2007)

  • This is a significant new release that includes the KonaKart Administration Application.

New in KonaKart 2.1.0.3 (Feb 13, 2007)

  • Modified the value stored in the final_price attribute of the orders_products table. It was being saved as the product price ( options) multiplied by the quantity. Now it is saved as product price ( options). The change was made for osCommerce compatibility.
  • Implemented logic to use expiration date and status of Specials.
  • Made refresh interval for client side caches (random special, random review, random new product) programmable using the configuration CLIENT_CACHE_UPDATE_SECS.
  • Fixed bug that created error when there were no specials or no reviews.
  • Modified algorithm for searching for the state in the list of Zones. The previous algorithm was picking out the incorrect zone in some occasions.

New in KonaKart 2.1.0.2 (Feb 2, 2007)

  • New configuration parameter to define the name of the velocity log file
  • During the order process, the zone wasn't appearing in the formatted addresses when the zone was in the database.
  • The number of decimal places of the tax rate shown on the checkout confirmation page has been reduced to 2.
  • The url_clicked and date_last_clicked attributes of the manufacturers_info table, are now being updated when a user clicks on the manufacturer link to view the home page.
  • When registering or adding / editing an address, the state is checked, and a drop list of valid states is provided if they exist in the DB and if the entered state is invalid.
  • Support for PostgreSQL 8.2 . A table creation and population script is included in this version.
  • Fixed a bug to display the list of bestsellers properly in the UI.