Chapter 8. Administration and Configuration

Table of Contents

KonaKart Administration Application
Main Features
Reporting
Reporting - BIRT Viewer Security
Role-based Security and Configuration
File-based Configuration
Launching the Admin App
Configuring KonaKart for HTTPS / SSL
Editing the KonaKart Configuration Files
Changing the Editable File List in the Admin App
Configuration of Messages
Switching to Database Messages
KKMessages Utility
Logging
Internationalization of KonaKart
Translating the KonaKart Application
Translating the KonaKart Admin Application
Changing the Logo on the KonaKart Admin Application
Changing the Date Format in the KonaKart Application
Formatting of Addresses
Email Configuration
Modifying the Email Templates
Adding Custom Business Objects for use in Velocity Templates
Enabling / Disabling One Page Checkout
Search Engine Optimization (SEO) Features
Adding Custom Functionality to the Admin App
Adding Panels
Adding Buttons
Searching with wildcards
Making something happen when a product needs to be reordered
Making something happen when the state of an order changes
PDF Invoices
Activating a Promotion
Applying Promotions to Products
Displaying Coupon Entry Fields in your Store
Configuring Digital Downloads
Configuring Bookable Products
Import/Export of KonaKart Data
Export of Orders using exportOrder
Import/Export of KonaKart Data using XML_IO
Multiple Prices for Products
Sale Price
Tier Pricing
Dynamic product prices
Tax Configuration
Tax algorithm and numeric precision
Multiple Quantities for Products
Default Sort Order for Products
Bundle Configuration
Product Tags
Managing Product Reviews
Using CLOBs for Product Descriptions
Credit Card Refunds
Saving and Editing of Credit Card details
Configuration of Admin Application
Configuration of Store Front Application
Edit Order Number and Custom Fields
Wish Lists
Gift Registries
Gift Certificates
Enable Gift Certificates
Creating a Gift Certificate
Creating a new Admin App User
Creating New Roles
Default Customer Configuration
Making Customers Invisible
Customer Groups
Auditing
Custom Credential Checking
Custom Credential Checking - LDAP
Multi-Store Configuration and Administration
Introduction
Configuring KonaKart to function in Multi-Store Mode
Multi-Store Configuration
Configuring KonaKart to use the Solr Search Engine
Introduction
Configuration Instructions
Customization of Solr
Suggested Search using Solr terms
Faceted Search using Solr
Scheduling in KonaKart
Configuring Quartz to execute KonaKart jobs
Customizing the KonaKart jobs
Deletion of Expired Data
Data Integrity
Executing the Data Integrity Checker from a Script
Configuring KonaKart to use Analytics Tools
Configuring KonaKart to use Google Analytics
Configuring KonaKart to use Other Analytics Tools
Publishing Product Data to Google Shopping
Setting Up Google Shopping
Customizing the Google Shopping Interface
Executing the Google Shopping Publishing Feed
Setting up RMI Services
Step by Step Guide to setting Up KonaKart to use RMI
Integrating a Java Message Queue
Setting Up The Java Message Queue
Monitoring The Java Message Queue

This chapter seeks to explain the many different ways in which KonaKart can be configured.

Most of the Administration and Configuration of KonaKart can be carried out using the KonaKart Administration Application.

KonaKart Administration Application

KonaKart includes a sophisticated browser based administration application. It uses AJAX technology to provide a snappy user interface while the maintaining the advantages of running the application from a browser. Each application window has an on-line help facility which is the first place to look in order to understand the available functionality.

It incorporates a security subsystem with role based security. Each user can be assigned one or more roles that determine access to the available functionality with read / insert / edit and delete granularity. The user name / password based access, has the facility to block users for a programmable period after a number of unsuccessful login attempts.

Auditing may be enabled for all Admin App API calls with two levels of detail. All audit data is stored in the KonaKart database and may be browsed and filtered through the Admin App.

The admin application is fully internationalized and can be translated via a message catalog. Each panel has an online help facility that explains the functionality available.

KonaKart Admin Application

KonaKart Admin Application - Status View

Main Features

The main features of the admin app are:

  • Store status summary (i.e. number of orders, number of products etc.)
  • Store maintenance
    • Create new stores
    • Edit existing stores
    • Change state of stores (i.e. enable / disable, maintenance mode)
    • Delete stores
  • Maintenance of configuration variables
  • Product maintenance
    • Product Category maintenance
    • Product Option maintenance
    • Product Manufacturer maintenance
    • Product Tag Group and Tag maintenance
    • Product Payment Schedule maintenance
    • Product Review maintenance
    • Product Custom Attribute Template and Custom Attribute maintenance
    • Product Catalog maintenance
    • Miscellaneous Item Type and Item maintenance
  • Installation and removal of modules (payment, shipping, order total and other modules)
  • Customer maintenance
    • Send email
    • Role maintenance
    • Reset Password
    • Login to eCommerce application on behalf of a customer. Useful for call center applications.
    • Customer Group maintenance
    • Customer review maintenance
    • Customer booking maintenance
  • Orders
    • Generate invoice (template based)
    • Generate packing slip (template based)
    • Change state of order and send email
    • View all payment gateway notifications associated with order
    • Manage returns
  • Marketing
    • Promotion maintenance
    • Coupon maintenance
    • Customer Tag and Expression maintenance
    • Customer Communications where you can send template based eMails to all customers, to all customers who have requested to receive the newsletter, to customers that have asked to be notified about any updates for a particular product and to customers belonging to a particular group or satisying a certain expression.
  • Locations / Taxes
    • Country maintenance>
    • Zone maintenance
    • Tax Area maintenance
    • Tax Class maintenance
    • Tax Rate maintenance
  • Localizations
    • Currency maintenance
    • Language maintenance
    • Message maintenance
    • Order Status maintenance
    • Address Format maintenance
  • Reports
  • View Audit Data
  • Tools
    • Delete expired sessions
    • Refresh caches
    • Manage SOLR search engine
    • Publish products to Google Base
  • Custom panels - Add custom panels that implement your custom business logic.

Reporting

The KonaKart admin application provides powerful reporting functionality through integration with BIRT , the very popular open source Business Intelligence and Reporting Tool. Although an ever expanding list of useful reports is provided in the KonaKart download, the integration is done in such a way that allows users and system integrators to develop and customize their own reports by using the BIRT Eclipse based development environment.

Reporting - BIRT Viewer Security

By default the BIRT Viewer webapp is protected by a configurable layer of security that ensures that only suitably-authorised Administrators with active sessions are permitted to execute the reports using the BIRT Viewer webapp.

To disable the security completely you can set the "securityEnabled" initialisation parameter to "false" in the birtviewer web.xml.

When security is enabled, a user is allowed access to the reports through BIRT viewer if and only if:

  • A valid sessionId is passed as a parameter to the birtviewer webapp. A valid sessionId is one that exists in the database for the specified user and store and that it hasn't expired.
  • The user has been granted access to run the reports through role-based security.

To be able to run the reports the user must be assigned a role that permits that user to execute the reports. This is defined on the privileges screen of the role-based security section of the Admin Application (Under Customers >> Maintain Roles).

The "custom1" flag must be unticked to allow the user to run the reports:

Reports Privileges

Reports Privileges

You can easily customise the pages that users are redirected to in the event of session expiry and unauthorised access. The URLs of the pages that are used are defined in the birtviewer webapp's web.xml file.

Role-based Security and Configuration

Many panels in the admin application may be configured to display or hide certain fields and buttons. The configuration is set by selecting a role in the Maintain Roles panel and then by clicking on the Privileges button on the same panel. A pop-up panel should appear similar to the image shown below:

Role Privileges

Role Privileges

Each panel has a number of checkboxes to assign privileges. The standard privileges are Insert, Edit and Delete, although some panels have custom privileges which are highlighted in green. In order to understand what a green highlighted checkbox refers to, a yellow popup will appear when you move your mouse over it. For example the Edit Order panel has a couple of configuration options which are:

  • Enable the read and edit of credit card details.
  • Enable the read and edit of custom fields, order number and tracking number.

File-based Configuration

It is possible to configure the Admin Application on a global basis by defining certain properties in the konakartadmin_gwt.properties file (which can be found in the classes directory of the konakartadmin webapp).

The configurations you make in this file-based technique are for every user of the Admin App (deployed in the associated webapp) no matter what roles are defined for each user.

By default, the file-based configuration ("FBC") properties are commented out and as such have no effect. To enable them you need to uncomment the relevant line(s).

The supported configuration properties are defined in the konakartadmin_gwt.properties file and will be updated over time. Here is a sub-set of the currently-supported configuration options:


# -----------------------------------------------------------------------------------
# Enterprise Feature
# File-based Configuration
# These settings make global changes to the Admin App for all users

#fbc.kk_panel_communications.hide_expression_selection      = true
#fbc.kk_panel_communications.hide_product_selection         = true

#fbc.kk_panel_editProduct.hide_attributes_tab               = true
#fbc.kk_panel_editProduct.hide_merchandising_tab            = true
#fbc.kk_panel_editProduct.hide_quantities_tab               = true

#fbc.kk_panel_editProduct.details.hide_custom_attr_template = true
#fbc.kk_panel_editProduct.downloads.hide_index_text         = true
#fbc.kk_panel_editProduct.prices.hide_tier_prices           = true

#fbc.kk_panel_editCustomer.address.hide_city                = true
#fbc.kk_panel_editCustomer.address.hide_company             = true
#fbc.kk_panel_editCustomer.address.hide_country             = true
#fbc.kk_panel_editCustomer.address.hide_custom1             = true

#fbc.kk_panel_editCustomer.custom.hide_custom1              = true

#fbc.kk_panel_editCustomer.personal.hide_customerGroup      = true
#fbc.kk_panel_editCustomer.personal.hide_dateOfBirth        = true
#fbc.kk_panel_editCustomer.personal.hide_fax                = true
#fbc.kk_panel_editCustomer.personal.hide_first_name         = true
#fbc.kk_panel_editCustomer.personal.hide_gender             = true
#fbc.kk_panel_editCustomer.personal.hide_last_name          = true

#fbc.kk_panel_editCustomer.hide_address_tab                 = true
#fbc.kk_panel_editCustomer.hide_custom_tab                  = true
#fbc.kk_panel_editCustomer.hide_points_tab                  = true

#fbc.kk_panel_promRules.hide_categories                     = true
#fbc.kk_panel_promRules.hide_customerGroups                 = true
#fbc.kk_panel_promRules.hide_customers                      = true
#fbc.kk_panel_promRules.hide_expressions                    = true

#fbc.kk_panel_promotions.hide_requires_coupon               = true
#fbc.kk_panel_promotions.hide_max_usage                     = true

# Add colon-separated keywords to exclude these from view in the Rich Text Editor
# Supported Keywords:
#    fg   = foreground
#    bg   = background
#    size = size
#    font = font
#fbc.rich_text_editor_exclude                               = fg:bg:font:size

After uncommenting a property it is necessary to refresh the caches (you can do this from the Tools section of the Admin App) then refresh your browser so that the changes to the Admin App User interface will be enabled.