DEPRECATION WARNING

This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.

EXT: GSA Shop

Author:Rainer Kuhn
Created:2008-12-18T12:12:29
Changed by:Rainer Kuhn
Changed:2009-12-11T15:16:03.770000000
Author:Rainer Kuhn
Email:t3extensions@punkt.de
Info 3:
Info 4:

EXT: GSA Shop

Extension Key: pt_gsashop

Copyright 2005-2009, Rainer Kuhn, <t3extensions@punkt.de>

Extension maintaining transfered to punkt.de GmbH<t3extensions@punkt.de> from 2010 on.

Manual revised for pt_gsashop version 1.0.1, 2009-12-11

Extension development sponsored by punkt.de GmbH ( `http://punkt.de/ <http://punkt.de/>`_ )

This document is published under the Open Content License

available from http://www.opencontent.org/opl.shtml

The content of this document is related to TYPO3

- a GNU/GPL CMS/Framework available from www.typo3.org

Table of Contents

EXT: GSA Shop 1

Introduction 1

What does it do? 1

Legal notice / Disclaimer 2

Credits and history 2

Features 2

GSA software architecture 3

GSA extension overview 3

Screenshots 5

Administration 8

System requirements 8

Installation recommendations 9

Installation and Extension Manager Settings 9

Example shop setup: Overview of pages & plugins 10

Using the article cache (GSA Cache) 14

Adding articles to pages 14

Handling and storage of orders 16

Configuration 18

Extension Configuration in Constant Editor 18

Extension Configuration with TypoScript 26

Hook usage 27

Workflow Configuration 28

Known problems 31

To-Do list 31

Changelog 32

Introduction

What does it do?

GSA Shop is a general web shop system for TYPO3, written in PHP 5 and based on a modular OOP architecture. This extension is the “core” of the “General Shop Applications” (GSA) extension family. The goal of the additional extension development is to to handle most parts of a (digital) business process automatically. GSA Shop is already in use for several production environment websites, e.g. http://www.pneuhage.de , http://www.klickbilderbox.de , http://www.pluspunkthosting.de , http://www.euwid.de , http://www.vth.de . and http://www.stn- international.de/workshops.html .

GSA Shop is based on a data layer compatible to a former version of the German enterprise resource planning (ERP) system “GS Auftrag Professional” and allows optional usage combined with this ERP version (more information about the ERP see http://www2.sage.de/sb/pr odloes/warenwirtschaft/gs_auftrag_professional/gs_auftrag_professi onal.asp ). Independently of the decision to run GSA Shop as a TYPO3 standalone shop or in combination with the ERP, most shop related data is stored in a separate database (in addition to the default TYPO3 database). This ERP compatible additional database is called the “GSA database” henceforth.

Please refer to the manuals of the related extensions “GSA Socket” (pt_gsasocket) and “GSA Standalone Database” (pt_gsaminidb) for details of the optional possibilities to run GSA Shop. To run GSA Shop as a TYPO3 standalone installation (without the ERP system or solely using the TYPO3 database) some further GSA extensions are recommended in the the chapter “Administration”->Installation recommendations”.

Since the extension and it's related or dependency extensions (see Configuration/Installation) are under continuous development, it may be possible that some APIs or templates have to be changed in future versions for important enhancements or further developments – in this case we will post these changes in the appropriate manual's changelog and possibly provide update wizards.

This document is not intended to be a complete manual, rather it is an introduction. For more information about the extensions please check out configuration options in TYPO3's Constant Editor, TYPO3's extension manager and (for developers) the doc comments in the source code.

Credits and history

Credits go to punkt.de GmbH ( http://punkt.de/ ) for sponsoring the extension development since many years, toFabrizio Branca for support and addition of several improvements of this extension's functionality from 2007 to 2008 and to Martin Alker for creating the shop icons.

The original author of GSA Shop (and of some related extensions), Rainer Kuhn, transfers the further development of GSA Shop and all related GSA extensions to punkt.de GmbH ( http://punkt.de/ ) at the end of 2009, since he meets new challenges from 2010 on. Please contact the email address “t3extensions<at>punkt.de” for any questions about GSA Shop.

Features

The following features are currently supported by the shop (the shop is widely configurable, currently not all feature combinations are tested thoroughly):

  • Seamless ERP integration with the German ERP system “GS Auftrag Professional” (TYPO3 standalone version of GSA Shop in progress, see below)
  • Gross / net orders (B2B / B2C)
  • Price calculation accuracy up to 4 decimal digits using precise float calculation with BCMath
  • Different tax rates for articles
  • Flexible price handling: special offers (time controlled pricing), price scales depending on order quantity, discount handling per user group
  • Special customer related article prices (individual article prices for a customer)
  • Fixed costs for articles (one-time article base cost independently of ordered article quantity)
  • Multiple images per article
  • Multiple deliveries per order, different billing/shipping addresses
  • Different shipping costs (depending on articles and shipping address of a delivery)
  • Permanently visible shopping cart to use in your design template
  • Mandatory accept of terms and conditions
  • Credit card payment integration (currently German payment provider “Heidelpay”)
  • Handling of items that should not be physically delivered
  • Automatic creation of confirmation email
  • Document creation of delivery sheet, order confirmation and invoice via ERP
  • Optional article relations (exclusion articles, required articles, max. article amount, bundle proposals)
  • Order archive (per User), re-opening former orders from archive (incl. automatic price/tax/address updates)
  • Order workflow engine for multiple parties, workflow actions individually configurable by your own extensions
  • Miscellaneous additional extensions (work in progress, see below) allow to handle a whole (digital) business process automatically
  • Customization using changeable Smarty templates (for all frontend plugins), changeable images, TYPO3 APIs (e.g. TypoScript, Localisation via locallang, editable CSS)
  • Developer APIs: many TYPO3 hooks, special “application specific objects” within shop classes (allows individual business logic for articles etc.), compound articles API, workflow API
  • clean PHP5 OOP architecture

GSA software architecture

The following architecture diagram (as of April 2008) should give you an impression on how the shop core (pt_gsashop) and some of the General Shop Application (GSA) extensions interact with TYPO3, the MySQL databases, other extensions and optionally with the ERP system:

img-1

Please refer to the following chapter for a brief description of the related extensions used in this diagram.

GSA extension overview

The shop core (this extension), it's dependency extensions and some related extensions are already available in TER ( http://typo3.org/extensions/ ) and/or Forge SVN ( http://forge.typo3.org/ ).

TER/SVN Status of GSA related extensions (as of Dec. 2009):

GSA Shop

Extension name

GSA Shop

Extension key

pt_gsashop

Manual incl.

X

Short description

The shop core (this extension).

available in TER

X

available in Forge SVN

X

GSA Standalone Database

Extension name

GSA Standalone Database

Extension key

pt_gsaminidb

Manual incl.

X

Short description

A minimal MySQL database to run the General Shop Applications (GSA) extensions as a TYPO3 standalone version (without the ERP system).

available in TER

X

available in Forge SVN

X

GSA Socket

Extension name

GSA Socket

Extension key

pt_gsasocket

Manual incl.

X

Short description

A socket for accessing the GSA data layer (needed for all extensions of the pt_gsa* extension family).

available in TER

X

available in Forge SVN

X

GSA User Registration

Extension name

GSA User Registration

Extension key

pt_gsauserreg

Manual incl.

X

Short description

A frontend user and customer registration for GSA Shop based on a the GSA database combined with the TYPO3 FE User handling.

available in TER

X

available in Forge SVN

X

GSA Admin

Extension name

GSA Admin

Extension key

pt_gsaadmin

Manual incl.

X

Short description

TYPO3 backend interfaces for administrating GSA Shop data (and data of some related GSA extensions) for GSA usage as a TYPO3 standalone version without the ERP system.

available in TER

X

available in Forge SVN

X

GSA Article Lists

Extension name

GSA Article Lists

Extension key

pt_gsaarticlelists

Manual incl.

X

Short description

Displays article lists for GSA Shop.

available in TER

X

available in Forge SVN

X

GSA Article Categories

Extension name

GSA Article Categories

Extension key

pt_gsacategories

Manual incl.

Short description

Article category module for GSA Shop: adds categories support to GSA Shop and enables GSA Shop to manage categories as a graph.

available in TER

available in Forge SVN

X

GSA Dunning

Extension name

GSA Dunning

Extension key

pt_gsadunning

Manual incl.

Short description

CLI based dunning checker for outstanding items, generates and sends PDF reminders to customers (the dunning extension does not use the ERP dunning process!). Currently (as of 12/2009) this extension requires other extensions which are not publicly available. The extension is still experimental and so it's not recommended to use it in productive environments!

available in TER

available in Forge SVN

X

GSA Stock

Extension name

GSA Stock

Extension key

pt_gsastock

Manual incl.

X

Short description

Stock management for GSA Shop. Currently (as of 12/2009) this extension is still experimental and it's not recommended to use it in productive environments!

available in TER

available in Forge SVN

X

Heidelpay ePayment

Extension name

Heidelpay ePayment

Extension key

pt_heidelpay

Manual incl.

X

Short description

An ePayment extension for credit card clearing using the German Heidelpay Payment Services. GSA Shop currently (as of 12/2009) offers the possibility for a neatless integrationof this extension in the order process.

available in TER

X

available in Forge SVN

VR-ePay ePayment

Extension name

VR-ePay ePayment

Extension key

pt_vrepay

Manual incl.

Short description

An ePayment extension for credit card clearing using the payment services of VR-ePay (Germany). Allows electronic payment using credit card, giropay and electronic cash (ec). Extension will be compatible to GSA Shop in the future when GSA Shop has been changed to use the pt_tools payment API. This extension has not been tested thoroughly yet, so it's not recommended to use it in productive environments without running appropriate tests.

available in TER

available in Forge SVN

X

[TER/SVN Status of GSA related extensions]

Other add-on extensions of the “GSA extension family” should follow step by step to TER ( http://typo3.org/extensions/ ) and/or Forge SVN ( http://forge.typo3.org/ ). All related extensions will be open source.

The following add-on extensions for GSA Shop are already developed and in use for projects, but most of them are not completely finished and all are lacking documentation. The public release of these extensions depends on time, sponsoring and/or internal need for further development, documentation etc.

Sponsoring and serious help offers for outstanding todos are welcome!

  • GSA Related Articles (Ext. pt_gsarelatedarticles)
  • GSA Related Files for Articles (Ext. pt_gsarelatedfiles)
  • GSA Related Content for Articles (Ext. pt_gsarelatedcontent)
  • GSA Article Indexer (Ext. pt_gsasearch): Indexing GSA articles for indexed search
  • GSA Accounting extensions (Ext. pt_gsaaccounting, pt_gsahbci, pt_gsamatching) - these extensions include:
    • Online accounting interface for outstanding items (payment, credit notes)
    • Generation of files for direct debiting (DTA: standardized German money transactions exchange information file format)
    • Accounting of payments from bank transfer, debiting via HBCI import (bank-independent standardized German online banking protocol)
    • automatic matching of incoming payments to outstanding items; GUI for booking
  • GSA Doc Order (Ext. pt_gsadocorder): enables downloadable articles
  • GSA PDF Documents (Ext. pt_gsapdfdocs): automatic creation of PDF files for all document types (order confirmation, invoice etc.)
  • GSA Partners (Ext. pt_gsapartners): registering advertising partners, giving commission for sales generated via partner links
  • GSA Vouchers (Ext. pt_gsavoucher): different types of vouchers (discount vouchers, gift certificates)
  • GSA Barcode (Ext. pt_gsabarcode): allows using a barcode scanner for selling articles manually in combination with the shop system

The original author of GSA Shop core (and of some related extensions), Rainer Kuhn, transfers the further development of GSA Shop and all related GSA extensions to punkt.de GmbH ( http://punkt.de/ ) at the end of 2009, since he meets new challenges from 2010 on. Please contact the email address “t3extensions<at>punkt.de” for development versions of the extensions, for further information and for questions about GSA Shop.

Screenshots

img-2 Article display (1)

img-3 Article display (2)

img-4 Shopping cart

img-5 Article distribution to multiple deliveries

img-6 Order overview

Administration

System requirements

Please note: no ERP system is required to run GSA Shop, you can use it as a TYPO3 standalone shop system.

Since the installation of GSA Shop is not trivial and some additional server modules are required this should be done by an administrator or someone with the appropriate technical background!

These are the current prerequisites to install and run GSA Shop properly:

PHP 5.1 or higher:

PHP has to be configured with ' --enable-bcmath ' to enable the BCMath Arbitrary Precision Mathematics Functions (see http://www.php.net/bc )

TYPO3 4.1 or higher:

  • IRRE (Inline Relational Record Editing) is required
  • a TYPO3 Login is needed for the shop (e.g. the TYPO3 default loginor the 'newloginbox' extension)

A valid MySQL GSA database : Either

the standalone database GSAMINIDB (ext. pt_gsaminidb),

a GSMAND<n > database of an “GS Auftrag Professional” ERP system installation (ERP versions 2.7.x up to 2.8.11.1 supported currently),:underline:or

the GSA database tables imported to your TYPO3 database (requires ext. pt_gsaminidb since version 0.0.4) - please refer to the manuals of the extensions pt_gsasocket ( http://typo3.org/documentation /document-library/extension-manuals/pt_gsasocket/current/ ) and pt_gsaminidb ( http://typo3.org/documentation/document-library/extension- manuals/pt_gsaminidb/current/ ) for details.

The most important database tables used by the basic GSA Shop functionality are:

  • Articles and their prices are stored in the DB tables ARTIKEL and VKPREIS. All articles created with the ERP Software GUI must have the “Online Artikel” checkbox checked to be used in GSA Shop!
  • Tax rates are stored in the DB tables STEUER respective BHSTEUER (since ERP version 2.8.0)
  • Customer data is stored in the DB tables ADRESSE, KUNDE and DEBITOR
  • Dispatch costs are stored in the DB table VERSART

Additional shop specific MySQL database tables within the GSA database:

  • The converted Paradox database tables (px_*) explained in pt_gsasocket's extension manual ( http://typo3.org/documentation /document-library/extension-manuals/pt_gsasocket/current/ ) are required
  • The database table “pt_gsashop_supplierControl” is required if you want to use the supplier control feature (depending on your TS setting, see “Use supplier control” Constant Editor category: “PT_GSASHOP::GENERAL”, chapter “Configuration” below). This table is located in the GSA database to allow NULL fields and SQL join statements using this table combined with other GSA database tables.
    • If you're using GSAMINIDB (see GSA database option (1) above) or if you're using the GSA tables imported from pt_gsaminidb to your TYPO3 database (see GSA database option (3) above): the table is already existent, no further action is required.
    • If you're using the database GSMAND<n> of the ERP system (see GSA database option (2) above): use the SQL script stored in pt_gsashop/res/sql/pt_gsashop_supplierControl.sql to import the table structure to the GSA/ERP database.

TYPO3 Extensions (the version numbers of the currently required extension versions are regularly updated under 'constraints'->'depends' in the ext_emconf.php file of pt_gsashop):

  • 'smarty':TYPO3 integration for Smarty templating framework (see http://www.smarty.net/ ).
  • 'pt_tools':A PHP5 toolbox and library for extensions. The extension offers optional configuration options in Constant Editor.
  • 'pt_gsasocket':A socket for accessing the GSA data layer (needed for all extensions of the pt_gsa* extension family). This extension has to be configured in Ext. Manager to enable access to the GSA database, please refer to that extension's manual.
  • 'pt_gsauserreg':A frontend user and customer registration based on a the GSA database. If you want to use the German bank account check, the external software "ktoblzcheck", has to be available on your server (see that extension's user manual and http://ktoblzcheck.sourceforge.net/ )
  • 'pt_mail':A generic interface to send e-mail from extensions.

Installation recommendations

To run GSA Shop (and other GSA extensions) as a standalone installation without the ERP, the following extensions are recommended in their particular up-to-date versions:

  • 'pt_gsaminidb':A minimal MySQL database to run the General Shop Applications (GSA) extensions as a TYPO3 standalone version. The extension provides SQL scripts to create the minimal required GSA database as a separate MySQL database or to import the required GSA database tables to your existing TYPO3 database (since pt_gsaminidb version 0.0.4)- please refer to that extension's manual.
  • 'pt_gsaadmin':TYPO3 Backend interfaces for administrate GSA Shop data without the ERP system. The extension requires PEAR HTML_QuickForm to be installed on your server, and has to be configured in Ext. Manager and Constant Editor, please refer to that extension's manual.
  • 'pt_gsaarticlelists':A generic article list generator.
  • 'pt_heidelpay':An ePayment extension for credit card clearing using Heidelpay Payment Services. The extension has to be configured in Constant Editor. You have to enable credit card payment in the configuration of pt_gsashop (Options “Enable simple credit card payment” or ““Enable extended GSA payment”, see chapter “Extension Configuration in Constant Editor” below, and eventually additionally in pt_ gsauserreg for the later option).

A whole bunch of more GSA extension to optionally extend GSA Shop's functionality are planned to be released in TER, see chapter “Work in progress / Future prospects” above.

Installation and Extension Manager Settings

Install the shop extension in TYPO3's extension manager and follow the instructions given there (process the suggested database updates etc.).

**IMPORTANT** : If you're updating from a previous version of the extension, please read this manual's changelog instructions carefully! GSA Shop is under continous development and improvement. Depending on a version's changes it may be possible that you have to do some manual interaction to adapt your existing environment to the new software version.

After having installed the extension itself, you have to include the static extension templates

  • “GSA Shop: Basic Config (pt_gsashop)” and
  • “GSA Shop: pt_mail Config (pt_gsashop)” (new since version 0.14.0 of this extension)

into your appropriate Typoscript template. The PID of the page/sysfolder, where you are using this templates, has to be entered to the “TS configuration PID” configuration field in the Extension Manager (see below).

Please note : if your Typoscript template is stored in a sysfolder, you don't have to set the PID of the sysfolder there, but the PID of the page where the template is included/used!

Please note : the “ptmail Config” template has to be included after the “Basic Config” template (this means: if you include both on the same page, the “ptmail Config” template has to appear below the “Basic Config” template, and if you're including the “ptmail Config” template on another page, it has to be placed hierarchically below the page where the “Basic Config” template is included).

Now the extension'sbasic settings have to be configured in TYPO3's Extension Manager. The available options are listed here (the first entry “IMPORTANT WHEN UPDATING!” is just the hint mentioned above, you have nothing to do here im the EM):

TS configuration PID

a

TS configuration PID

b

[tsConfigurationPid]

PID of the page where to find the main typoscript configuration of GSA

a

PID of the page where to find the main typoscript configuration of GSA Shop (the page where you've integrated the static template of GSA Shop). Note: if your Typoscript template is stored in a sysfolder, you don't have to set the PID of the sysfolder here, but the PID of the page where the template is included/used!

Default: 1

Timezone (PHP)

a

Timezone (PHP)

b

[timezone]

The timezone identifier (see http://php.net/manual/en/timezones.php)

a

The timezone identifier (see http://php.net/manual/en/timezones.php) to use as parameter for the date_default_timezone_set() function since it is not safe to rely on the system's timezone settings.

Default: Europe/Berlin

Production Environment

a

Production Environment

b

[prodEnv]

Check this box if the extension is used in production environment,

a

Check this box if the extension is used in production environment, uncheck it for development environment (default). CAUTION: This setting may have consequences for email delivery to real addresses and more features...

Default: 0

Now you have to create your page tree with plugin pages and sysfolders (see next chapter), Don't forget the sysfolders for article images and for cached articles. The PIDs of these sysfolders have to be set in the extension configuration in Constant Editor. (see chapter “Configuration”).

Example shop setup: Overviewof pages & plugins

The page tree example below (German labels) should give you an idea how you could start to set up a shop site.

Note that after installing the plugins you also have to configure the shop extension via TypoScript/Constant Editor (see below) before you can run your website.

img-7 Page tree example (German)

The following overview shows an overview of the pages and the available plugins and points out how to configure the page tree example above.

The GSA customer group mentioned on many pages is a FE group for GSA Shop users (you have to create this group yourself) to be set automatically by the of the GSA User registration extension (pt_gsauserreg) as default group for all newly registered users . The UID of this group has to be set in Constant Editor category PT_GSAUSERREG:: GENERAL (config.pt_gsauserreg.defaultGroup).

Page (“page tree example name”)

Page (page tree example name)

Page (“page tree example name”)

Plugins used for appropriate page

Plugins used for appropriate page

Description

Description

Page settings

Page settings

TypoScript settings

TypoScript settings

General Storage Folder

Page (page tree example name)

General Storage Folder

Plugins used for appropriate page

GSA Shop: Cart Box (tx_ptgsashop_pi7)

Description

This sysfolder is used for general data storage.

Besides it's sub-sysfolders it contains the “GSA Shop: Cart Box” plugin, amini display of the shopping cart - can be displayed on all pages (e.g. in the menu) by integrating the plugin as a template marker in the TYPO3 design template

Page settings

page type: “SysFolder” (no frontend access), “contains plugin” setting: “Shop”

TypoScript settings

FE User

Page (page tree example name)

FE User

Plugins used for appropriate page

[default sysfolder, no plugins]

Description

Sysfolder containing the frontend users

Page settings

page type: “SysFolder” (no frontend access), “contains plugin” setting: “Website users”

TypoScript settings

PID or alias has to be set in Constant Editor categories PT_GSASHOP::PAGES (plugin.tx_ptgsashop.feUsersSysfolderPid) and PT_GSAUSERREG:: GENERAL (config.pt_gsauserreg.feusersSysfolderPid)

Article Cache (“Artikel (Cache)”)

Page (page tree example name)

Article Cache (“Artikel (Cache)”)

Plugins used for appropriate page

[default sysfolder, no plugins]

Description

Sysfolder containing the cached articles from the GSA database

Page settings

page type: “SysFolder” (no frontend access), “contains plugin” setting: “GSA Article Cache”

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.cacheArticlesStoragePid)

Article Images (“Artikel-Bilder”)

Page (page tree example name)

Article Images (“Artikel-Bilder”)

Plugins used for appropriate page

[default sysfolder, no plugins]

Description

Sysfolder containing the GSA article images

Page settings

page type: “SysFolder” (no frontend access), “contains plugin” setting: “GSA Images”

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.articleImageStoragePid)

Orders (“Bestellungen”) [ optional ]

Page (page tree example name)

Orders (“Bestellungen”) [ optional ]

Plugins used for appropriate page

[default sysfolder, no plugins]

Description

Optional Sysfolder containing the completed orders.

Per default completed orders are stored on the order page (page tree example: “Bestellung”) for backwards compatibility, but it is recommended to create this sysfolder for new installations

Page settings

page type: “SysFolder” (no frontend access), “contains plugin” setting: “GSA orders”

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.orderStoragePid)

Categories (“Kategorien”) [ optional ]

Page (page tree example name)

Categories (“Kategorien”) [ optional ]

Plugins used for appropriate page

[default sysfolder, no plugins]

Description

Optional Sysfolder containing the GSA categories. This folder is not needed for edefault installations, but for the usage of GSA Shop with the upcoming extension pt_gsacategories

Page settings

page type: “SysFolder” (no frontend access), “contains plugin” setting: “GSA Categories”

TypoScript settings

[see manual of upcoming extension pt_gsacategories]

Login/Logout

Page (page tree example name)

Login/Logout

Plugins used for appropriate page

[an arbitrary TYPO3 frontend login]

Description

Install an arbitrary TYPO3 frontend login here (e.g. system extension “felogin” in TYPO3 4.2+).

The page should contain a link to the registration page for new users (page tree example: “Kundendaten”), too.

Page settings

[depending on used loginbox]

TypoScript settings

[depending on used loginbox]

Product pages (“Produktseite n”)

Page (page tree example name)

Product pages (“Produktseite n”)

Plugins used for appropriate page

GSA Shop: Article display (tx_ptgsashop_pi2)- article selection required!

Description

The plugin displays an GSA articles as content elements on a page (all ERP created articles to be used in GSA Shop must have the ERP's “Online Artikel” checkbox checked!). These content elements can be placed between arbritary page content.

For details please refer to the chapter “Adding articles to pages” below.

Multiples plugins of this type can be used in one page. Subelements of an article to be displayed are configurable in the backend.

Note: The upcoming extension pt_gsaarticlelist will allow to display user-defined article lists as well.

Page settings

public access

TypoScript settings

General article display settings in Constant Editor category PT_GSASHOP::ARTICLE DISPLAY (plugin.tx_ptgsashop_pi2.articleDisplay*); overwritable for all articles on a page with page individual page TS. Individual article configuration with plugin's flexform elements will overwrite these TS settings.

Article single view (“Artikel-Einzelansicht (pi2)”)

Page (page tree example name)

Article single view (“Artikel-Einzelansicht (pi2)”)

Plugins used for appropriate page

GSA Shop: Article display(tx_ptgsashop_pi2)-without any article selected!

Description

Single detail view of one article on one page. This page will be called internally by the shop via linked articles (see manual of pt_gsaadmin/article module for details). Insert plugin “GSA Shop: Articledisplay”without any article selected!

Please note: the individual flexform configuration “Template->”Template path” overrides the template for the article box display only and has no effect for the article single view template (if you want to change this, please change the Article single view template using Constant Editor category PT_GSASHOP::SMARTY TEMPLATES)

Page settings

hidden in menu

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES.

Individual article configuration with plugin's flexform elements will overwrite the General article display settings in Constant Editor category PT_GSASHOP::ARTICLE DISPLAY (plugin.tx_ptgsashop_pi2.articleDisplay*).

Shopping cart (“Warenkorb”)

Page (page tree example name)

Shopping cart (“Warenkorb”)

Plugins used for appropriate page

GSA Shop: Shopping cart (tx_ptgsashop_pi1)

Description

Shopping cart and checkout.

If article relations are enabled, these will be checked here when trying to check out.

Page settings

public access

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.shoppingcartPage)

Order overview (“Bestellung”)

Page (page tree example name)

Order overview (“Bestellung”)

Plugins used for appropriate page

GSA Shop: Order (tx_ptgsashop_pi3)

Description

Complete order overview including address, delivery and payment configuration options for the user.

Page settings

Access restricted (including all subpages): Logged-in users only (better solution: GSA customer group*);hidden in menu

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.orderPage)

Order submitted (“Bestellung abgeschickt”)

Page (page tree example name)

Order submitted (“Bestellung abgeschickt”)

Plugins used for appropriate page

[default page, no plugins]

Description

Add your individual content to be displayed to users after submitting an order here.

Page settings

Access restricted: Logged-in users only (better solution: GSA customer group*);hidden in menu

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.orderConfirmPage)

Credit Card Payment (“Kreditkarten-Zahlung”)[ optional ]

Page (page tree example name)

Credit Card Payment (“Kreditkarten-Zahlung”)[ optional ]

Plugins used for appropriate page

Heidelpay ePayment: Payment via XML Interface (tx_ptheidelpay_pi1) :underline:`OR` Payment via WPF Interface (tx_ptheidelpay_pi3)

Description

:underline:`Optional` – this page is required only if you want to use credit card payment.

Credit Card Payment using the German payment clearance provider “Heidelberger Payment”.

Page settings

Access restricted : Logged-in users only (better solution: GSA customer group*);hidden in menu

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.paymentPage).

Plugin configuration n Constant Editor categories beginning with PT_HEIDELPAY.

Payment ok(“Zahlung erfolgt”) [ optional ]

Page (page tree example name)

Payment ok(“Zahlung erfolgt”) [ optional ]

Plugins used for appropriate page

GSA Shop: ePayment return (tx_ptgsashop_pi6)

Description

:underline:`Optional` – this page is required only if you want to use credit card payment.

Processes a successful credit card payment from the German payment provider “Heidelberger Payment”.

Page settings

Access restricted: Logged-in users only (better solution: GSA customer group*);hidden in menu

TypoScript settings

Payment failed(“Zahlung fehlgeschlagen”[ optional ]

Page (page tree example name)

Payment failed(“Zahlung fehlgeschlagen”[ optional ]

Plugins used for appropriate page

GSA Shop: ePayment return (tx_ptgsashop_pi6)

Description

:underline:`Optional` – this page is required only if you want to use credit card payment.

Processes a non-successful credit card payment from the German payment provider “Heidelberger Payment”.

Page settings

Access restricted: Logged-in users only (better solution: GSA customer group*);hidden in menu

TypoScript settings

Workflow (“Workflow (Customer/Operator)”)[ optional ]

Page (page tree example name)

Workflow (“Workflow (Customer/Operator)”)[ optional ]

Plugins used for appropriate page

GSA Shop: Workflow / Order Archive (tx_ptgsashop_pi4), Plugin Type: 'Workflow''

Description

Optional order workflow (if required). Requires workflow configuration and probably an individual extension, see chapter “ workflow configuration” below.

Page settings

Access restriction depends on requirements, e.g. special workflow FE Groups only

TypoScript settings

Order archive (“Bestellarchiv”)[ optional ]

Page (page tree example name)

Order archive (“Bestellarchiv”)[ optional ]

Plugins used for appropriate page

GSA Shop: Workflow / Order Archive (tx_ptgsashop_pi4), Plugin Type: 'Order Archive'

Description

Optional archive for finished orders (per user). Allows re-opening of archived orders.

Page settings

Access restricted : GSA customer group*

TypoScript settings

Personal data (“Persönliche Daten”)

Page (page tree example name)

Personal data (“Persönliche Daten”)

Plugins used for appropriate page

[default page, no plugins]

Description

All sub-pages of the GSA User registration (pt_gsauserreg extension) have to be set below this page.

This page should contain links to the sub-pages or a shortcut to the first sub-page. With the correct page settings (see right hand column) the page should only appear to logged-in GSA users in the websites menu.

Page settings

Access restricted : GSA customer group*

TypoScript settings

Configuration for all (sub-) pages of pt_gsausereg in Constant Editor category PT_GSAUSERREG:: GENERAL – the minimal required configuration is to set the PID of your FE users sysfolder (config.pt_gsauserreg.feusersSysfolderPid) and the UID of your GSA FE group ((config.pt_gsauserreg.defaultGroup) there

Customer data (“Kundendaten”)

Page (page tree example name)

Customer data (“Kundendaten”)

Plugins used for appropriate page

GSA Userreg: Customer Data (tx_ptgsauserreg_pi1)

Description

Administration of customer data. A customer (e.g. a company) may have multiple users. Page is also used for registration of new customers.

Page settings

Access: public (must not be restricted to logged-in users since this page is used for new user registration as well, e.g. by linking from the login page); page should be displayed in menu for logged-in users of the GSA customer group* only due to access restriction of superior page (“Persönliche Daten”, see above)

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx\_ptgsashop.feUserRegPage).

Plugin configuration in Constant Editor category PT_GSAUSERREG_PI1::CUSTOMER DATA.

Bank data (“Bankdaten”)

Page (page tree example name)

Bank data (“Bankdaten”)

Plugins used for appropriate page

GSA Userreg: Customer Data (tx_ptgsauserreg_pi2)

Description

Administration of user/customer bank data

Page settings

Access: public (must not be restricted to logged-in users); page should be displayed in menu for logged-in users of the GSA customer group* only due to access restriction of superior page (“Persönliche Daten”, see above)

TypoScript settings

Plugin configuration in Constant Editor category PT_GSAUSERREG_PI1::CUSTOMER DATA

User data (“Benutzerdaten”)

Page (page tree example name)

User data (“Benutzerdaten”)

Plugins used for appropriate page

GSA Userreg: Customer Data (tx_ptgsauserreg_pi2)

Description

Administration of user data

Page settings

Access: public (must not be restricted to logged-in users); page should be displayed in menu for logged-in users of the GSA customer group* only due to access restriction of superior page (“Persönliche Daten”, see above)

TypoScript settings

Plugin configuration in Constant Editor category PT_GSAUSERREG_PI2::USER DATA

Delivery addresses (“Adressen”)

Page (page tree example name)

Delivery addresses (“Adressen”)

Plugins used for appropriate page

GSA Userreg: Postal Addresses (tx_ptgsauserreg_pi4)

Description

Administration of of user/customer delivery addresses

Page settings

Access restricted : GSA customer group*

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.userAccountPage).

Plugin configuration in Constant Editor category PT_GSAUSERREG_PI4::POSTAL ADDRESSES.

Terms and conditions (“AGB”)

Page (page tree example name)

Terms and conditions (“AGB”)

Plugins used for appropriate page

[default page, no plugins]

Description

Add your individual content for terms and conditions for shop orders here.

Page will be linked from the order overview.

Page settings

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.termsCondPage)

Right of withdrawal (“Widerrufsrecht”)

Page (page tree example name)

Right of withdrawal (“Widerrufsrecht”)

Plugins used for appropriate page

[default page, no plugins]

Description

Add your individual content for the right of withdrawal information for shop orders here.

Page will be linked from the order overview.

Page settings

TypoScript settings

PID or alias has to be set in Constant Editor category PT_GSASHOP::PAGES (plugin.tx_ptgsashop.withdrawalPage)

[Usage of pages and plugins]

* GSA customer group = see description directly above this table

Using the article cache (GSA Cache)

When you've created or updated your shop articles with the ERP system, you have to press the “GSA Cache” button in the “Tools” menu of the TYPO3 backend to refresh the article cache and thus to make the updated articles available for the backend article selection (e.g. of plugin pi2 “GSA Shop: Article display”).

img-8 The GSA Cache module

If you're using the backend administration extension “GSA Admin” (pt_gsaadmin) to create or update your articles, there's no need to hit the “GSA Cache” button manually, since the article cache is refreshed automatically.

Adding articles to pages

Articles of GSA Shop can be added as content elements using the “GSA Shop: Article display” plugin (pi2).

img-9

The article can be selected using the element browser popup window opened by pressing the “Browse” button in the plugin's backend options (in tab “Article”).

img-10 img-11

The general configuration for the article display can be done by TypoScript respective using the Constant Editor, see paragraph “Category: PT_GSASHOP::ARTICLE DISPLAY” and “Article box template” in ”PT_GSASHOP::SMARTY TEMPLATES”, both to be found in the chapter “Configuration” below.

This general configuration can be overwritten for each single article using the options offered at the “Display” tab of the plugin options. If you leave a selectorbox field empty here, the configuration set byTyposcript (e.g. via the constant editor) will be used. If you change a value here, the general Typoscript settings will be overwritten.

img-12

Furthermore you can adapt the layout of each single article presentation using the options offered at the “Template” tab of the plugin options. Here again, leaving the fields empty will result in the usage of the predefined values from typoscript.

img-13

The upcoming extension “pt_gsaarticlelist” will allow to insert user defined article lists in a similar way as described above.

Handling and storage of orders

If a customer has completed his order, an email confirmation is sent to the customer and the shop operator (configuration of email addresses and mail template in Constant Editor, see chapter “Configuration”).

Besides storing the order to the GSA database (to make it available for the ERP system and the upcoming GSA accounting extensions), the order data is stored in the TYPO3 database. All data used at the time of ordering (prices, taxes, addresses etc.) is copied to the following database tables, optionally to be used by the bulit-in order archive and workflow engine, or to be processed by your own individual applications:

  • tx_ptgsashop_order_wrappers
    
  • tx_ptgsashop_orders
    
  • tx_ptgsashop_orders_deliveries
    
  • tx_ptgsashop_orders_articles
    
  • tx_ptgsashop_orders_addresses
    
  • tx_ptgsashop_orders_dispatchcost
    
  • tx_ptgsashop_orders_paymentmethods
    

You can view completed orders in TYPO3's backend using the list view of the page/sysfolder you've configured at Constant Editor category PT_GSASHOP::PAGES, option “orderStoragePid”.

img-14 Completed order list in the backend

All records displayed here are set to read-only, so they cannot be edited. Upcoming additional accounting extensions will allow complete handling and booking of your orders without the ERP system.

img-15 Completed order detail view in the backend

Configuration

Extension Configuration in Constant Editor

The shop extension has to be configured by TypoScript respective by using TYPO3's Constant editor, before running the website. Furthermore there are many options to adapt the shop to meet your requirements. The options are labeled in Constant Editor and should be self- explaining.

IMPORTANT : Don't forget to set an individual “salt” string at plugin.tx_ptgsashop.md5SecurityCheckSalt!

Category: PT_GSASHOP::PAGES
FE Users storage PID

a

FE Users storage PID

b

[plugin.tx_ptgsashop.feUsersSysfolderPid]

Identifier (PID or alias) of the TYPO3 sysfolder where you've

a

Identifier (PID or alias) of the TYPO3 sysfolder where you've integrated the TYPO3 system plugin "Website users" (e.g. FE Users Sysfolder).

Default: fe_users

Article cache storage PID

a

Article cache storage PID

b

[plugin.tx_ptgsashop.cacheArticlesStoragePid]

Identifier (PID or alias) of the TYPO3 page/sysfolder where to store

a

Identifier (PID or alias) of the TYPO3 page/sysfolder where to store cached articles.Range: 0 -

Default: articlecache

Article image storage PID

a

Article image storage PID

b

[plugin.tx_ptgsashop.articleImageStoragePid]

Identifier (PID or alias) of the TYPO3 page/sysfolder where to store

a

Identifier (PID or alias) of the TYPO3 page/sysfolder where to store article images.

Default: articleimages

Order storage PID

a

Order storage PID

b

[plugin.tx_ptgsashop.orderStoragePid]

Identifier (PID or alias) of the TYPO3 page/sysfolder where to store

a

Identifier (PID or alias) of the TYPO3 page/sysfolder where to store submitted orders.

Default: order

Shopping cart page

a

Shopping cart page

b

[plugin.tx_ptgsashop.shoppingcartPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the "GSA Shop: Shopping cart" plugin (pi1 of this extension).

Default: cart

Article single view page

a

Article single view page

b

[plugin.tx_ptgsashop.articleSingleViewPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the your "Article single view" (special use of pi2 of this extension).

Default: articleview

Order overview page

a

Order overview page

b

[plugin.tx_ptgsashop.orderPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the "GSA Shop: Order" plugin (pi3 of this extension).

Default: order

Order confirmation page

a

Order confirmation page

b

[plugin.tx_ptgsashop.orderConfirmPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the confirmation page to be used after an user's final order.

Default: orderconfirm

FE customer registration page

a

FE customer registration page

b

[plugin.tx_ptgsashop.feUserRegPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the FE Customer Registration (e.g. plugin pi1 of pt_gsauserreg extension).

Default: custdata

User account page

a

User account page

b

[plugin.tx_ptgsashop.userAccountPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the plugin for managing a frontend user's address handling (plugin pi4 of pt_gsauserreg extension).

Default: useraddr

"Terms and conditions" page

a

"Terms and conditions" page

b

[plugin.tx_ptgsashop.termsCondPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the "terms and conditions" page.

Default: termscond

"Right of withdrawal" page

a

"Right of withdrawal" page

b

[plugin.tx_ptgsashop.withdrawalPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the "right of withdrawal" page.

Default: withdrawal

"Forgot password" page (optional)

a

"Forgot password" page (optional)

b

[plugin.tx_ptgsashop.forgotPwPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated your "Forgot Password" handling (e.g. the pt_forgotpw plugin). If set, a "Forgot Password?" question with link to the appropriate page will be displayed at the shop internal login (pi1) between cart checkout and order overview. If set to empty string (default), nothing will be displayed.

Default:

Category: PT_GSASHOP::GENERAL
Shop operator FE group ID

a

Shop operator FE group ID

b

[plugin.tx_ptgsashop.shopOperatorGroupUid]

ID of the frontend usergroup with shop operator rights (DB table

a

ID of the frontend usergroup with shop operator rights (DB table fe_groups, Field uid). If you don't have an appropriate group, please create one with the name 'Shop operator' and set its uid here.

Range: 0 -

Default:

MD5 security check "salt"

a

MD5 security check "salt"

b

[plugin.tx_ptgsashop.md5SecurityCheckSalt]

"Salt" string to use for building an md5 hash used for security checks

a

"Salt" string to use for building an md5 hash used for security checks within this extension (e.g. for checking successful payment returns from the ePayment extension). IMPORTANT : Change the default setting for security reasons!

Default: ThisIsTheDefaultSalt

Shop name

a

Shop name

b

[plugin.tx_ptgsashop.shopName]

Name of the shop, to be used e.g. as sender name for all emails sent

a

Name of the shop, to be used e.g. as sender name for all emails sent by the GSA Shop.

Default:

General email sender address

a

General email sender address

b

[plugin.tx_ptgsashop.orderEmailSender]

Email address to be used as sender address for _all_ auto-generated

a

Email address to be used as sender address for _all_ auto-generated emails of GSA Shop (e.g. the order confirmation and payment result emails of the the shop core, but intended for emails from GSA extensions as well!). NOTE : Please ignore the historically grown (and for backwards compatibility reasons unchanged) option name "orderEmailSender", it's value will be used as general email sender and not for order emails only!

Default:

Order confirmation email CC

a

Order confirmation email CC

b

[plugin.tx_ptgsashop.orderEmailRecipient]

Email recipient address (comma-separated list for multiple recipients)

a

Email recipient address (comma-separated list for multiple recipients) for copies (CC:) of the auto-generated order confirmation emails of the shop extension, e.g. email address of the sales department of your company. Leave this field empty if you don't want to receive a CC: copy of the customers order confirmation emails.

Default:

Order confirmation email BCC

a

Order confirmation email BCC

b

[plugin.tx_ptgsashop.orderConfirmationEmailBcc]

Email address (comma-separated list for multiple recipients) for blind

a

Email address (comma-separated list for multiple recipients) for blind carbon copies (BCC:) of order confirmation emails of the shop extension. Leave this field empty if you don't want to receive a BCC: copy of the customers order confirmation emails.

Default:

Order confirmation email Reply-To

a

Order confirmation email Reply-To

b

[plugin.tx_ptgsashop.orderConfirmationEmailReplyTo]

Email address for the Reply-To header of auto-generated order

a

Email address for the Reply-To header of auto-generated order confirmation emails of the shop extension, e.g. email address of the support department of your company. Leave this field empty if you don't want to set a different reply-to address for the customers order confirmation emails (replies will be sent to the email sender address).

Default:

Send order conf. email to customer

a

Send order conf. email to customer

b

[plugin.tx_ptgsashop.sendFinalOrderEmailToCustomer]

Uncheck if you do not want the final order to be sent as an auto-

a

Uncheck if you do not want the final order to be sent as an auto- generated confirmation email. This setting affects the CC: and BCC: settings above as well (no order confirmation email is sent at all if this one is disabled).

Default: 1

Currency code

a

Currency code

b

[plugin.tx_ptgsashop.currencyCode]

The ISO three letter currency code specifying the used currency (e.g.

a

The ISO three letter currency code specifying the used currency (e.g. EUR for Euro, USD for US Dollar). The code is used for ordering, accounting and invoices. If you're not sure about the correct code use phpMyAdmin and have a look to the 'static_currencies' database table (part of the 'static_info_tables' extension). Make sure to use the same currency code in your ePayment extension if you use this one, too.

Default: EUR

Use precision prices

a

Use precision prices

b

[plugin.tx_ptgsashop.usePricesWithMoreThanTwoDecimals]

Flag whether the shop should use prices with more than two decimals

a

Flag whether the shop should use prices with more than two decimals (=number of digits after the decimal point). The GSA database supports up to 4 decimals, but this is not supported in the ERP GUI.

Default: 0

Use supplier control

a

Use supplier control

b

[plugin.tx_ptgsashop.useSupplierControl]

Check if you want all article purchases to be logged to a database

a

Check if you want all article purchases to be logged to a database table to control your suppliers' invoices. IMPORTANT: This requires the pt_gsashop_supplierControl database table to be existent in your GSA database (GSMANDn or GSAMINIDB). To insert the table structure, you can use the SQL file located at pt_gsashop/res/sql/pt_gsashop_supplierControl.sql.

Default: 0

Enable XSS security f. article text

a

Enable XSS security f. article text

b

[plugin.tx_ptgsashop.enableXssSecurityForArticleText]

Flag whether the shop should enable the XSS security conversion for

a

Flag whether the shop should enable the XSS security conversion for HTML output article texts in the article display plugin pi2 (relates to GSA DB fields ARTIKEL.ZUSTEXT1 ("Artikeltext") and ARTIKEL.ZUSTEXT2 ("Alternativtext")). If unchecked, any HTML (and JavaScript!) stored in the mentioned database fields will be "executed" at the web pages where articles are displayed. WARNING: Uncheck this checkbox only if you're absolutely sure that no unwanted "evil" content is saved in the mentioned database fields, e.g. in only trusted persons are allowed to enter/change article data.

Default: 1

Enable RTE rendering f.article text

a

Enable RTE rendering f.article text

b

[plugin.tx_ptgsashop.enableRteForArticleText]

Flag whether the shop should enable RTE rendering for HTML output

a

Flag whether the shop should enable RTE rendering for HTML output article texts in the article display plugin pi2 (relates to GSA DB fields ARTIKEL.ZUSTEXT1 ("Artikeltext") and ARTIKEL.ZUSTEXT2 ("Alternativtext")). If enabled, you also should uncheck the "enableXssSecurityForArticleText" option above (unless you don't want to see HTML code displayed :) - but be aware this could open XSS security holes in certain circumstances (see warnings at "enableXssSecurityForArticleText")!

Default: 0

"Add to cart" button image file 1

a

"Add to cart" button image file 1

b

[plugin.tx_ptgsashop.imgAddToCartButtonArticleBox]

Path to the image file to be used for the "Add to cart" button in the

a

Path to the image file to be used for the "Add to cart" button in the article box of pi2 (e.g. 'fileadmin/img/my_button.gif').

Default: EXT:pt_gsashop/res/img/btn_cart.gif

"Add to cart" button image file 2

a

"Add to cart" button image file 2

b

[plugin.tx_ptgsashop.imgAddToCartButtonArtRelCheck]

Path to the image file to be used for the "Add to cart" button in the

a

Path to the image file to be used for the "Add to cart" button in the article relation check of pi1 (e.g. 'fileadmin/img/my_button.gif').

Default: EXT:pt_gsashop/res/img/btn_cart.gif

"Remove from cart" button img file

a

"Remove from cart" button img file

b

[plugin.tx_ptgsashop.imgRemoveFromCartButtonArticleBox]

Path to the image file to be used for the "Remove from cart" button in

a

Path to the image file to be used for the "Remove from cart" button in the article box of pi2 (e.g. 'fileadmin/img/my_button.gif').

Default: EXT:pt_gsashop/res/img/btn_remove.gif

Use automatic invoice booking

a

Use automatic invoice booking

b

[plugin.tx_ptgsashop.useAutomaticInvoiceBooking]

Flag whether the shop should book invoices for all shops orders

a

Flag whether the shop should book invoices for all shops orders automatically: this results in an invoice record per order in the GSA DB (additionally to the always generated order confirmation record), including all GSA booking information for accounting. If unchecked, per order only an order confirmation record without any any booking information will be stored in the GSA DB.

Default: 1

"Add to Cart" Action

a

"Add to Cart" Action

b

[plugin.tx_ptgsashop.addToCartAction]

Action to be executed after an article has been successfully added to

a

Action to be executed after an article has been successfully added to the shopping cart [(1) Display shopping cart=1,(2) Stay on order page=2].

  1. Display shopping cart(2) Stay on order page

Default: 1

Display "Clear all" button for cart

a

Display "Clear all" button for cart

b

[plugin.tx_ptgsashop.displayClearCartButton]

Uncheck if you do not want the "Clear all" button to be displayed at

a

Uncheck if you do not want the "Clear all" button to be displayed at the shopping cart page (if displayed, the user is enabled to clear the complete cart with this button).

Default: 1

Enable cart article linking

a

Enable cart article linking

b

[plugin.tx_ptgsashop.displayCartArticleLinks]

Flag whether articles in the shopping cart (pi1) should be linked to

a

Flag whether articles in the shopping cart (pi1) should be linked to article detail pages (URLs depending on configuration in article input field "Webadresse" in GSA-Admin or ERP-GUI / GSA-DB: ARTIKEL.WEBADRESSE). This setting is used for article display in article relation check messages (pi1), too.

Default: 1

Display payment sum by default

a

Display payment sum by default

b

[plugin.tx_ptgsashop.displayPaymentSumByDefault]

Flag whether the payment sum for an order should be displayed by

a

Flag whether the payment sum for an order should be displayed by default (in order overview and order confirmation email), even if it is identical with the total sum gross. Please note: the payment sum will always be displayed (independently of this setting), if it is different from the total sum gross (e.g. if payment modifiers like vouchers or credit balances are used).

Default: 0

Allow multiple deliveries per order

a

Allow multiple deliveries per order

b

[plugin.tx_ptgsashop.allowMultipleDeliveries]

Uncheck if you do not want to allow multiple deliveries per order. By

a

Uncheck if you do not want to allow multiple deliveries per order. By unchecking this option, the "Distribute to multiple deliveries" button will not be displayed at the order overview page.

Default: 1

Allow billing address change

a

Allow billing address change

b

[plugin.tx_ptgsashop.allowBillingAddrChange]

Check if you do want to allow the user to change the orders billing

a

Check if you do want to allow the user to change the orders billing address within the ordering process. WARNING: CHECKING THIS OPTIONS IS NOT SUPPORTED BY/WILL NOT WORK WITH THE ERP SYSTEM! Leaving this option unchecking (default), the billing address will always be built from the users master address record and the "Edit billing address" button will not be displayed at the order overview page.

Default: 0

Allow shipping address change

a

Allow shipping address change

b

[plugin.tx_ptgsashop.allowShippingAddrChange]

Uncheck if you do not want to allow the user to change the shipping

a

Uncheck if you do not want to allow the user to change the shipping addresses of the order's deliveries within the ordering process. By unchecking this option, the shipping address for a delivery will always be built from the users data record and the "Edit shipping address" button(s) will not be displayed at the order overview page.

Default: 1

Scale price quantity tolerance (%)

a

Scale price quantity tolerance (%)

b

[plugin.tx_ptgsashop.scalePriceQtyTolerance]

Tolerance in percent (integer) for scale prices to be added to the

a

Tolerance in percent (integer) for scale prices to be added to the processed article quantity for scale price calculation (the resulting floating point number will be rounded to an integer). Example: There are the following scale prices set for an article: 1+ pieces => price A, from 10+ pieces => price B, 100+ pieces => price C: the tolerance setting of this option set to 5 (percent) results in 1-9 pieces => price A, 10-94 pieces => price B, 95+ pieces => price C.

Default: 0

Always use customer specific price

a

Always use customer specific price

b

[plugin.tx_ptgsashop.custSpecPriceOverridesDefaultPrice]

Flag whether a possibly existing customer specific price of an article

a

Flag whether a possibly existing customer specific price of an article always overrides the price calculated by default for this article, even if the default price is lower than the customer specific price (this may be required for mixed calculation/combined costing). If not set (default), the lowest price of the two prices (default price and customer specific price) will be used for the article.

Default : 0

Enable article relations

a

Enable article relations

b

[plugin.tx_ptgsashop.enableArticleRelations]

Flag whether the shop should use article relations (e.g.

a

Flag whether the shop should use article relations (e.g. required/exclusion/amount-limited articles). If checked, the cart will check article relations on cart edit actions. If unchecked (default), the article will be added to the cart immediately and cart edit actions will not be checked for article relations.

Default: 0

Logical "OR" for required articles

a

Logical "OR" for required articles

b

[plugin.tx_ptgsashop.artrelReqUseLogicalOr]

(for article relations only:) Flag whether the shop should use the

a

(for article relations only:) Flag whether the shop should use the logical "OR" for required articles. If checked (default), the list of required articles set for one article will be used as alternative conditions. If unchecked, the list of required articles set for one article will be used as combined condition (logical "AND" is used). This setting has no effect if "enableArticleRelations" (see above) is unchecked (set to 0).

Default: 1

Enable article delivery date

a

Enable article delivery date

b

[plugin.tx_ptgsashop.enableArticleDeliveryDate]

Flag whether the shop should use delivery dates for articles

a

Flag whether the shop should use delivery dates for articles (displayed and editable in pi3). WARNING: THIS IS NOT FINALLY IMPLEMENTED YET! (30.10.2006)

Default: 0

Category: PT_GSASHOP::GSA SETTINGS
GSA article description source

a

GSA article description source

b

[plugin.tx_ptgsashop.articleDescriptionSourceField]

Source field from GSA database table "ARTIKEL" to use for the

a

Source field from GSA database table "ARTIKEL" to use for the article's description display in the shop [Selectorbox entries used here follow the display scheme: "GUI field title" (DB-TABLE.DB- FIELD)]. Since the DB field ARTIKEL.MATCH is re-written to the GSA database when saving an order as document, it is recommended to use this field for article description display, too (default).

"Suchbegriff" (ARTIKEL.MATCH)"Beschreibung" (ARTIKEL.MATCH2)"Artikelnummer" (ARTIKEL.ARTNR)

Default: MATCH

GSA tax code for dispatch cost

a

GSA tax code for dispatch cost

b

[plugin.tx_ptgsashop.dispatchTaxCode]

Code of the GSA-DB record to use for the chosen dispatch type's cost

a

Code of the GSA-DB record to use for the chosen dispatch type's cost (tax for shipping cost) [see GSA database table "STEUER", field "CODE"]

Default: 01

Virtual table for OpNr

a

Virtual table for OpNr

b

[plugin.tx_ptgsashop.gsaVirtualTableOpNr]

Name of the virtual table to use in GSA database table SYNEWNUMBER for

a

Name of the virtual table to use in GSA database table SYNEWNUMBER for outstanding items numbers of invoices etc. (ERP: "Offene Posten", used in GSA database FSCHRIFT.OPNUMMER). This is used for automatically generated shop invoice records instead of the file OPNR.INI used by the ERP GUI.

Default: vtOPNUMMER

Starting value of the virtual OpNr

a

Starting value of the virtual OpNr

b

[plugin.tx_ptgsashop.gsaVirtualOpNrMin]

Minimum value to start with in virtual table for OpNr (see option

a

Minimum value to start with in virtual table for OpNr (see option 'gsaVirtualTableOpNr' above). This is used for automatically generated shop invoice records instead of the ERP GUI created file OPNR.INI, which starts at 10000000

Default: 50000000

Create delivery receipts

a

Create delivery receipts

b

[plugin.tx_ptgsashop.gsaCreateDeliveryReceipt]

Flag whether the shop should create GSA delivery receipt (German:

a

Flag whether the shop should create GSA delivery receipt (German: "Lieferschein") document records for deliveries of an order in combination with the GSA order confirmation document record (the order confirmation document records are created by default).

Default: 1

GSA dispatch - cost free

a

GSA dispatch - cost free

b

[plugin.tx_ptgsashop.gsaDispatchTypeCostFree]

Name of the GSA dispatch type (German: "Versandart") to use for

a

Name of the GSA dispatch type (German: "Versandart") to use for dispatch free orders (amongst others for deliveries with non-physical products only, e.g. webhosting products). IMPORTANT: This string has to be entered *exactly* and case-sensitive [see ERP GUI or GSA database table "VERSART", field "VERSART"].

Default: frei

GSA dispatch - inland net

a

GSA dispatch - inland net

b

[plugin.tx_ptgsashop.gsaDispatchTypeInlandNet]

Name of the GSA dispatch type (German: "Versandart") to use for net

a

Name of the GSA dispatch type (German: "Versandart") to use for net inland online orders. IMPORTANT: This string has to be entered *exactly* and case-sensitive [see ERP GUI or GSA database table "VERSART", field "VERSART"].

Default: Shop Inland (netto)

GSA dispatch - inland gross

a

GSA dispatch - inland gross

b

[plugin.tx_ptgsashop.gsaDispatchTypeInlandGross]

Name of the GSA dispatch type (German: "Versandart") to use for gross

a

Name of the GSA dispatch type (German: "Versandart") to use for gross inland online orders. IMPORTANT: This string has to be entered *exactly* and case-sensitive [see ERP GUI or GSA database table "VERSART", field "VERSART"].

Default: Shop Inland (brutto)

GSA dispatch - abroad net

a

GSA dispatch - abroad net

b

[plugin.tx_ptgsashop.gsaDispatchTypeAbroadNet]

Name of the GSA dispatch type (German: "Versandart") to use for net

a

Name of the GSA dispatch type (German: "Versandart") to use for net abroad online orders. IMPORTANT: This string has to be entered *exactly* and case-sensitive [see ERP GUI or GSA database table "VERSART", field "VERSART"].

Default: Shop Ausland (netto)

GSA dispatch - abroad gross

a

GSA dispatch - abroad gross

b

[plugin.tx_ptgsashop.gsaDispatchTypeAbroadGross]

Name of the GSA dispatch type (German: "Versandart") to use for gross

a

Name of the GSA dispatch type (German: "Versandart") to use for gross abroad online orders. IMPORTANT: This string has to be entered *exactly* and case-sensitive [see ERP GUI or GSA database table "VERSART", field "VERSART"].

Default: Shop Ausland (brutto)

Category: PT_GSASHOP::PAYMENT
CC payment page

a

CC payment page

b

[plugin.tx_ptgsashop.paymentPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the Heidelpay ePayment (pt_heidelpay) plugin. This setting is not needed if the "enableExtendedPaymentChoice" and "enableSimpleCcPaymentChoice" options (see below) both are set to 0 (=are unchecked).

Default: payment

Enable extended payment choice

a

Enable extended payment choice

b

[plugin.tx_ptgsashop.enableExtendedPaymentChoice]

Flag whether the shop should offer the extended payment choice of the

a

Flag whether the shop should offer the extended payment choice of the pt_gsauserreg extension (payment choice of a user is based on configured/available pt_gsauserreg payment options and depend on his pt_gsauserreg customer data). Note: If you want to offer the credit card payment choice for customers in pt_gsauserreg (Constant Editor option "Enable CreditCard payments [config.pt_gsauserreg.ccAllow]" enabled), this requires the pt_heidelpay extension to be installed and all "shopOperator*" config options below to be set.

Default: 1

Enable simple CC payment choice

a

Enable simple CC payment choice

b

[plugin.tx_ptgsashop.enableSimpleCcPaymentChoice]

This setting has no effect if the "enableExtendedPaymentChoice" option

a

This setting has no effect if the "enableExtendedPaymentChoice" option (see above) is enabled (set to 1): Flag whether the shop should offer credit card payment using the pt_heidelpay extension (this requires all "shopOperator*" config options above to be set). If checked, the "Order overview" page will display the simple payment options with radio buttons "credit card" and "bank transfer". If unchecked (default), "bank transfer" will be used by default.

Default: 0

ePayment result email recipient

a

ePayment result email recipient

b

[plugin.tx_ptgsashop.epaymentResultRecipient]

Email recipient address (comma-separated list for multiple recipients)

a

Email recipient address (comma-separated list for multiple recipients) for auto-generated ePayment transaction result emails of the shop extension, e.g. the email address of the shop operator (leave this field empty if you don't want to receive ePayment transaction result emails). This setting is not needed if the "enableExtendedPaymentChoice" and "enableSimpleCcPaymentChoice" options (see above) both are set to 0 (=are unchecked).

Default:

Shop operator -- name

a

Shop operator -- name

b

[plugin.tx_ptgsashop.shopOperatorName]

Name of the shop operator (e.g. company name). This is required for

a

Name of the shop operator (e.g. company name). This is required for the usage of Heidelpay credit card ePayment (see config options "enableExtendedPaymentChoice" and "enableExtendedPaymentChoice" above).

Default:

Shop operator -- email

a

Shop operator -- email

b

[plugin.tx_ptgsashop.shopOperatorEmail]

Email address of the shop operator. This is required for the usage of

a

Email address of the shop operator. This is required for the usage of Heidelpay credit card ePayment (see config options "enableExtendedPaymentChoice" and "enableExtendedPaymentChoice" above).

Default:

Shop operator -- street and no.

a

Shop operator -- street and no.

b

[plugin.tx_ptgsashop.shopOperatorStreetNo]

Street and house number of the shop operator's address. This is

a

Street and house number of the shop operator's address. This is required for the usage of Heidelpay credit card ePayment (see config options "enableExtendedPaymentChoice" and "enableExtendedPaymentChoice" above).

Default:

Shop operator -- zip

a

Shop operator -- zip

b

[plugin.tx_ptgsashop.shopOperatorZip]

Zip code of the shop operator's address. This is required for the

a

Zip code of the shop operator's address. This is required for the usage of Heidelpay credit card ePayment (see config options "enableExtendedPaymentChoice" and "enableExtendedPaymentChoice" above).

Default:

Shop operator -- city

a

Shop operator -- city

b

[plugin.tx_ptgsashop.shopOperatorCity]

City of the shop operator's address. This is required for the usage of

a

City of the shop operator's address. This is required for the usage of Heidelpay credit card ePayment (see config options "enableExtendedPaymentChoice" and "enableExtendedPaymentChoice" above).

Default:

Shop operator -- country code

a

Shop operator -- country code

b

[plugin.tx_ptgsashop.shopOperatorCountryCode]

ISO2 country code (ISO-3166) of the shop operator's address. This is

a

ISO2 country code (ISO-3166) of the shop operator's address. This is required for the usage of Heidelpay credit card ePayment (see config options "enableExtendedPaymentChoice" and "enableExtendedPaymentChoice" above).

Default: DE

Shop operator bank -- bank name

a

Shop operator bank -- bank name

b

[plugin.tx_ptgsashop.shopOperatorBankName]

Bank name of the shop operator's bank.

a

Bank name of the shop operator's bank.

Default:

Shop operator bank -- bank code

a

Shop operator bank -- bank code

b

[plugin.tx_ptgsashop.shopOperatorBankCode]

Bank code of the shop operator's bank.

a

Bank code of the shop operator's bank.

Default:

Shop operator bank -- account numbe...

a

Shop operator bank -- account numbe...

b

[plugin.tx_ptgsashop.shopOperatorBankAccountNo]

Account number of the shop operator's bank account.

a

Account number of the shop operator's bank account.

Default:

Shop operator bank -- bic

a

Shop operator bank -- bic

b

[plugin.tx_ptgsashop.shopOperatorBankBic]

Bic code of the shop operator's bank.

a

Bic code of the shop operator's bank.

Default:

Shop operator bank -- iban

a

Shop operator bank -- iban

b

[plugin.tx_ptgsashop.shopOperatorBankIban]

Iban code of the shop operator's bank.

a

Iban code of the shop operator's bank.

Default:

Category: PT_GSASHOP::SMARTY TEMPLATES
Shopping cart display template

a

Shopping cart display template

b

[plugin.tx_ptgsashop.templateFileCart]

The template file to be used for the shopping cart display of pi1

a

The template file to be used for the shopping cart display of pi1 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/cart.tpl.html

Cart checkout login template

a

Cart checkout login template

b

[plugin.tx_ptgsashop.templateFileCheckoutLogin]

The template file to be used for the login for non-logged-in users

a

The template file to be used for the login for non-logged-in users after a cart checkout of pi1 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/checkoutlogin.tpl.html

Article confirmation template

a

Article confirmation template

b

[plugin.tx_ptgsashop.templateFileArticleConfirmation]

The template file to be used for the article relations confirmation

a

The template file to be used for the article relations confirmation text display of pi1 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/articleconfirmation.tpl.html

Article box template

a

Article box template

b

[plugin.tx_ptgsashop.templateFileArticleBox]

The template file to be used for the article box display of pi2

a

The template file to be used for the article box display of pi2 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/articlebox.tpl.html

Order overview template

a

Order overview template

b

[plugin.tx_ptgsashop.templateFileOrderOverview]

The template file to be used for the single order overview display of

a

The template file to be used for the single order overview display of pi3/pi4 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/orderoverview.tpl.html

Article distribution template

a

Article distribution template

b

[plugin.tx_ptgsashop.templateFileArticleDistribution]

The template file to be used for the article distribution GUI of pi3

a

The template file to be used for the article distribution GUI of pi3 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/articledistribution.tpl.html

Final order mail template

a

Final order mail template

b

[plugin.tx_ptgsashop.templateFileFinalOrderMail]

The template file to be used for the mailing of an final order of pi3

a

The template file to be used for the mailing of an final order of pi3 (template for the Smarty templating engine). NOTE: This template's contents will be sent by email with the charset encoding 'iso-8859-15'. If you're using an individual template please make sure to set the correct charset used by your template at the 'templateCharsetFinalOrderMail' option below, too!

Default: EXT:pt_gsashop/res/smarty_tpl/finalorder_utf8.tpl.txt

Final order mail template charset

a

Final order mail template charset

b

[plugin.tx_ptgsashop.templateCharsetFinalOrderMail]

The character set (e.g. 'utf-8', 'iso-8859-15', 'iso-8859-1') used for

a

The character set (e.g. 'utf-8', 'iso-8859-15', 'iso-8859-1') used for final order mail template (see config 'templateFileFinalOrderMail' above). The default template delivered by pt_gsashop is encoded in 'utf-8'.

Default: utf-8

Template for order errors

a

Template for order errors

b

[plugin.tx_ptgsashop.templateFileOrderError]

The template file to be used for errors in the ordering process of pi3

a

The template file to be used for errors in the ordering process of pi3 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/ordererror.tpl.html

Template for order list

a

Template for order list

b

[plugin.tx_ptgsashop.templateFileOrdersList]

The template file to be used for the order list (order

a

The template file to be used for the order list (order archive/workflow) of pi4 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/orderslist.tpl.html

Template for order single view

a

Template for order single view

b

[plugin.tx_ptgsashop.templateFileOrdersSingleView]

The template file to be used for the view of a single order (order

a

The template file to be used for the view of a single order (order archive/workflow) of pi4 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/ordersingleview.tpl.html

Template for a pi4 notice

a

Template for a pi4 notice

b

[plugin.tx_ptgsashop.templateFilePi4Notice]

The template file to be used for a notice page of the order archive

a

The template file to be used for a notice page of the order archive -/workflow-plugin pi4 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/pi4notice.tpl.html

Article single view template

a

Article single view template

b

[plugin.tx_ptgsashop.templateFileArticleSingleView]

The template file to be used for the article single view display of

a

The template file to be used for the article single view display of pi2 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/articlebox.tpl.html

ePayment Return template

a

ePayment Return template

b

[plugin.tx_ptgsashop.templateFileEpaymentReturn]

The template file to be used for the epayment returns of pi6 (template

a

The template file to be used for the epayment returns of pi6 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/epaymentreturn.tpl.html

Cart box template

a

Cart box template

b

[plugin.tx_ptgsashop.templateFileCartBox]

The template file to be used for the mini display of the shopping cart

a

The template file to be used for the mini display of the shopping cart in pi7 (template for the Smarty templating engine).

Default: EXT:pt_gsashop/res/smarty_tpl/cartbox.tpl.html

Category: PT_GSASHOP::ARTICLE DISPLAY
Name/Description

a

Name/Description

b

[plugin.tx_ptgsashop.articleDisplayDescription]

Default display of article name/description at article display

a

Default display of article name/description at article display (description source is configurable in GSA settings: articleDescriptionSourceField)

Default: 1

Article Number

a

Article Number

b

[plugin.tx_ptgsashop.articleDisplayArticleno]

Default display of GSA article number at article display

a

Default display of GSA article number at article display

Default: 1

Price

a

Price

b

[plugin.tx_ptgsashop.articleDisplayPrice]

Default display of article price at article display

a

Default display of article price at article display

Default: 1

Quantity

a

Quantity

b

[plugin.tx_ptgsashop.articleDisplayCartqty]

Default display of article quantity in shopping cart at article

a

Default display of article quantity in shopping cart at article display

Default: 1

Remove button

a

Remove button

b

[plugin.tx_ptgsashop.articleDisplayRemovebutton]

Default display of button to remove article from shopping cart at

a

Default display of button to remove article from shopping cart at article display

Default: 1

Match

a

Match

b

[plugin.tx_ptgsashop.articleDisplayMatch1]

Default display of GSA match (ARTIKEL.MATCH) at article display

a

Default display of GSA match (ARTIKEL.MATCH) at article display

Default: 0

GSA Description

a

GSA Description

b

[plugin.tx_ptgsashop.articleDisplayMatch2]

Default display of GSA description (ARTIKEL.MATCH2) at article display

a

Default display of GSA description (ARTIKEL.MATCH2) at article display

Default: 1

GSA default article text

a

GSA default article text

b

[plugin.tx_ptgsashop.articleDisplayDeftext]

Default display of GSA default article text (ARTIKEL.ZUSTEXT1) at

a

Default display of GSA default article text (ARTIKEL.ZUSTEXT1) at article display

Default: 1

GSA alternative article text

a

GSA alternative article text

b

[plugin.tx_ptgsashop.articleDisplayAlttext]

Default display of GSA alternative article text (ARTIKEL.ZUSTEXT2) at

a

Default display of GSA alternative article text (ARTIKEL.ZUSTEXT2) at article display

Default: 0

Article images

a

Article images

b

[plugin.tx_ptgsashop.articleDisplayImg]

Default display of article images at article display

a

Default display of article images at article display

Default: 1

Default display of cart link at article display

a

Default display of cart link at article display

Default: 1

Article box width

a

Article box width

b

[plugin.tx_ptgsashop.articleDisplayBoxdefault]

Default display of article box with default width at article display

a

Default display of article box with default width at article display

Default: 1

Price scales

a

Price scales

b

[plugin.tx_ptgsashop.articleDisplayPricescales]

Default display of price scales at article display

a

Default display of price scales at article display

Default: 0

Link article description to article single view page at article

a

Link article description to article single view page at article display

Default: 1

Order button

a

Order button

b

[plugin.tx_ptgsashop.articleDisplayOrderbutton]

Default display of order button at article display

a

Default display of order button at article display

Default: 1

Category: PT_GSASHOP::CARTBOX
CartBox header display

a

CartBox header display

b

[plugin.tx_ptgsashop.cartboxDisplayHeader]

Flag whether the cart box plugin (pi7) should display a linked-to-cart

a

Flag whether the cart box plugin (pi7) should display a linked-to-cart box header.

Default: 1

CartBox use image header

a

CartBox use image header

b

[plugin.tx_ptgsashop.cartboxUseImageHeader]

Flag whether the cart box plugin (pi7) should use an image header or a

a

Flag whether the cart box plugin (pi7) should use an image header or a text link header (default).

Default: 0

CartBox positions display

a

CartBox positions display

b

[plugin.tx_ptgsashop.cartboxDisplayPositions]

Flag whether the cart box plugin (pi7) should display a positions

a

Flag whether the cart box plugin (pi7) should display a positions line.

Default: 1

CartBox sum display

a

CartBox sum display

b

[plugin.tx_ptgsashop.cartboxDisplayCartSum]

Flag whether the cart box plugin (pi7) should display a sum total

a

Flag whether the cart box plugin (pi7) should display a sum total line.

Default: 1

CartBox clear cart display

a

CartBox clear cart display

b

[plugin.tx_ptgsashop.cartboxDisplayClearCartButton]

Flag whether the cart box plugin (pi7) should display a clear cart

a

Flag whether the cart box plugin (pi7) should display a clear cart button.

Default: 1

Category: PT_GSASHOP::WORKFLOW
Enable order workflow

a

Enable order workflow

b

[plugin.tx_ptgsashop.enableOrderWorkflow]

Enables the default order workflow of this extension after sending an

a

Enables the default order workflow of this extension after sending an order. If not checked, an order will be saved directly to the GSA database after a user has pressed the "Order now" button. CAUTION: Be sure to know what you do (and run tests in non-production environments)! Enabling this value without setting a correct workflowExtensionKey (and having the appropriate extension installed) will result in frontend errors and termination of the script processing!

Default: 0

Initial workflow page

a

Initial workflow page

b

[plugin.tx_ptgsashop.workflowPage]

Identifier (PID or alias) of the TYPO3 page where you've integrated

a

Identifier (PID or alias) of the TYPO3 page where you've integrated the "GSA Shop: Workflow" plugin (pi4 of this extension, plugin type "workflow") that should be used initially after submitting an order.

Default: workflow

Workflow extension key

a

Workflow extension key

b

[plugin.tx_ptgsashop.workflowExtensionKey]

Name of the extension key that contains the workflow status

a

Name of the extension key that contains the workflow status configuration classes in its directory "res/pt_gsashop_workflow/" (requires enableOrderWorkflow to be set to 1). CAUTION: Be sure to know what you do (and run tests in non-production environments)! Changing or disabling to this value without disabling the complete workflow (setting enableOrderWorkflow to 0) may result in frontend errors and termination of the script processing!

Default:

Workflow initial status code

a

Workflow initial status code

b

[plugin.tx_ptgsashop.workflowInitialStatusCode]

Status code of the first available workflow status - this status code

a

Status code of the first available workflow status - this status code will be set for all new orders (requires enableOrderWorkflow to be set to 1). CAUTION: Be sure to know what you do (and run tests in non- production environments)! Changing or disabling to this value without disabling the complete workflow (setting enableOrderWorkflow to 0) may result in frontend errors and termination of the script processing!

Range: 0 – 90

Default: 1

Workflow finished status code

a

Workflow finished status code

b

[plugin.tx_ptgsashop.workflowFinishStatusCode]

Status code to set after an orders workflow has been finished - this

a

Status code to set after an orders workflow has been finished - this status code should not have a real representation in the database table tx_ptgsashop_workflow (requires enableOrderWorkflow to be set to 1). CAUTION: Be sure to know what you do (and run tests in non- production environments)! Changing or disabling to this value without disabling the complete workflow (setting enableOrderWorkflow to 0) may result in frontend errors and termination of the script processing!

Default: 99

Extension Configuration with TypoScript

All above mentioned constant editor configurations can be adapted for individual needs using Typoscript. Please refer to the extensions default Typoscript setup file (pt_gsashop/static/setup.txt) to find out the TS setup the Constant Editors configurations has been assigned to.

Additionally you can add detailed configuration for the default display of data and images of pi2 (“Article display”):

Reference (TypoScript)
display_description

Property

display_description

Data type

boolean

Description

Display article name/description (source is configurable in Constant Editor)

Default

1

display_articleno

Property

display_articleno

Data type

boolean

Description

Display GSA article number

Default

1

display_price

Property

display_price

Data type

boolean

Description

Display article price

Default

1

display_cartqty

Property

display_cartqty

Data type

boolean

Description

Display article quantity in shopping cart

Default

1

display_removebutton

Property

display_removebutton

Data type

boolean

Description

Display button to remove article from shopping cart (button is displayed only for quantity >= 1)

Default

1

display_description

Property

display_description

Data type

boolean

Description

Display article price

Default

1

display_match1

Property

display_match1

Data type

boolean

Description

Display GSA match (ARTIKEL.MATCH)

Default

0

display_match2

Property

display_match2

Data type

boolean

Description

Display GSA description (ARTIKEL.MATCH2)

Default

1

display_deftext

Property

display_deftext

Data type

boolean

Description

Display article priceDisplay GSA default article text (ARTIKEL.ZUSTEXT1)

Default

1

display_alttext

Property

display_alttext

Data type

boolean

Description

Display GSA alternative article text (ARTIKEL.ZUSTEXT2)

Default

0

display_img

Property

display_img

Data type

boolean

Description

Display GSA article image

Default

1

display_boxdefault

Property

display_boxdefault

Data type

boolean

Description

Display article box with default width

Default

1

display_pricescales

Property

display_pricescales

Data type

integer

Description

Display price scales (0: do not display, 1: display only if price scales are available, 2: display always)

Default

0

display_url

Property

display_url

Data type

boolean

Description

Link description to article single view

Default

1

imageConf

Property

imageConf

Data type

->imgResource

Description

Default configuration for article image display.

This code is set by default (in pt_gsashop/static/setup.txt):

imageConf {
    file {
        width = 200m
        height = 200m
        format = jpg
        # backColor = #FBE59C
        quality = 95
    }
    imageLinkWrap = 1
    imageLinkWrap {
        enable = 1
        JSwindow = 1
        bodyTag = <body bgColor="#cccccc" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
        width = 600m
        height = 600m
        # title = pt_gsashop
        JSwindow.expand = 0,0
        wrap = <a href="javascript:close();"> | </a>
    }
}

Default

see “Description” on the left

[tsref:plugin.tx_ptgsashop_pi2]

Hook usage

GSA Shop offers lots of TYPO3 style “hooks” for developers to adapt the software to your individual needs. So there are miscellaneous hooks for special functionalities, for some plugin “controllers” and for all marker arrays used for the templates.

The usage of the hooks should be self explaining for experienced developers.

The marker array hooks can be used in combination with individual Smarty templates to change, reduce or extend the frontend output in an arbitrary way.

IMPORTANT hook changes in v0.14.0 (Dec. 2008):

As a side effect of the code refactoring of the order processing (after submitting an order) in version 0.14.0 of pt_gsashop (for details please refer to that version's changelog below), some hooks have changed, in terms of:

  • the "identifier key" in the $GLOBALS['TYPO3_CONF_VARS']['EXTCONF'] array
  • the available parameters in the hook
  • and the way the hook is called and the parameters are passed

These 3 hooks identifier keys have changed:

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['pt_gsashop']['pi3_hooks][' processOrderSubmission_fixFinalOrderHook']has changed to:$GLOBALS['TY PO3_CONF_VARS']['EXTCONF']['pt_gsashop']['orderProcessor_hooks]['f ixFinalOrderHook']

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['pt_gsashop']['pi3_hooks][' processOrderSubmission_alternativeOrderConfirmPage']has changed to:$G LOBALS['TYPO3_CONF_VARS']['EXTCONF']['pt_gsashop']['orderProcessor_hooks]['redirectToConfirmationPageHook']

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['pt_gsashop']['pi3_hooks][' getEpaymentDescrHook']has changed to:$GLOBALS['TYPO3_CONF_VARS']['EX TCONF']['pt_gsashop']['orderProcessor_hooks]['getEpaymentDescrHook']

In the case of the "fixFinalOrderHook" and the "redirectToConfirmationPageHook" the way they are called has changed as well: From now you register a TYPO3-userfunction in your ext_localconf.php and not only an objects name. You're free to choose any class name and method name that should process the hook.

Example:

$TYPO3_CONF_VARS['EXTCONF']['pt_gsashop']['orderProcessor_hooks']['fixFinalOrderHook'][] = 'EXT:pt_gsapdfdocs/res/pt_gsashop_hooks/class.tx_ptgsapdfdocs_hooks_ptgsashop_orderProcessor.php:tx_ptgsapdfdocs_hooks_ptgsashop_orderProcessor->fixFinalOrderHook';

In this case there is no need to include the class file, e.g. by require_once(). This will be done automatically be TYPO3 when calling the hook.

Each hook method called in this way will get two parameters:

an array of parameters – please refer to the appropriate hook's code for individual details (the array of parameters currently contains for the "fixFinalOrderHook" the current orderWrapper object $orderWrapperObj, and for the "redirectToConfirmationPageHook" it contains the original redirect target $redirectTarget...)

a reference to the calling object

Workflow Configuration

Note: This whole chapter is written in German since most parts have been copied from a former German extension manual of a customer project using the workflow engine. The chapter may be translated some day in a later version of this manual.
Aktivierung der Workflow Engine

Die Workflow-Engine ist Teil der Extension pt_gsashop und kann im Constant Editor, Category: “PT_GSASHOP: WORKFLOW” aktiviert und individuell konfiguriert werden. Zur Aktivierung muß mindestens der Wert plugin.tx_ptgsashop.enableOrderWorkflow auf 1 gesetzt werden.

Konfiguration der Workflow Status im Backend

Anwendung: Web->Liste->im Seitenbaum die Seite mit der PID 1 („Home/Login“) markieren->im Bereich „Workflow“ (s. Abb. 12 mitte/rechts: rosafarbene Blatt-Symbole) die einzelnen Stati individuell bearbeiten.

Diese Werte werden in die Datenbanktabelle „tx_ptgsashop_workflow“ der TYPO-Installation geschrieben.

Label imTYPO3 BE

Label imTYPO3 BE

Label imTYPO3 BE

Eingabe-Typ TYPO3 BE

Eingabe-Typ TYPO3 BE

Beschreibung(Datentyp))

Beschreibung(Datentyp))

Datenbankfeld in Tab. tx_ptgsashop_workflow

Datenbankfeld in Tab. tx_ptgsashop_workflow

DatenbankFeld-Typ

Datenbank

Feld-Typ

Status Code

Label imTYPO3 BE

Status Code

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Status Code des Workflow Status (integer: 0-99)

Datenbankfeld in Tab. tx_ptgsashop_workflow

status_code

DatenbankFeld-Typ

tinyint(2)

Status Name

Label imTYPO3 BE

Status Name

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Name des Workflow Status (string)

Datenbankfeld in Tab. tx_ptgsashop_workflow

name

DatenbankFeld-Typ

varchar(255)

Beschreibung

Label imTYPO3 BE

Beschreibung

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Beschreibung des Workflow Status (string)

Datenbankfeld in Tab. tx_ptgsashop_workflow

description

DatenbankFeld-Typ

varchar(255)

Berechtigte FE Gruppen fuer Anzeige

Label imTYPO3 BE

Berechtigte FE Gruppen fuer Anzeige

Eingabe-Typ TYPO3 BE

TYPO3 Element Selector

Beschreibung(Datentyp))

TYPO3 FE-Gruppen, die für die Anzeige des Workflow Status berechtigt sind (string: comma separated integer list)

Datenbankfeld in Tab. tx_ptgsashop_workflow

auth_groups_view

DatenbankFeld-Typ

blob [für comma sep-erated list]

Berechtigte FE Gruppen fuer Benutzung

Label imTYPO3 BE

Berechtigte FE Gruppen fuer Benutzung

Eingabe-Typ TYPO3 BE

TYPO3 Element Selector

Beschreibung(Datentyp))

TYPO3 FE-Gruppen, die für die Benutzung (d.h. Freigabe/Ablehnung) des Workflow Status berechtigt sind (string: comma separated integer list)

Datenbankfeld in Tab. tx_ptgsashop_workflow

auth_groups_use

DatenbankFeld-Typ

blob [für comma sep-erated list]

**Bestellung für diesen Status aktualisieren (dynamic order

Label imTYPO3 BE

Bestellung für diesen Status aktualisieren (dynamic order workflow)?

Eingabe-Typ TYPO3 BE

Checkbox

Beschreibung(Datentyp))

Flag, ob die zugrundeliegende Bestellung (Preise, Steuersätze, Versandkosten, Adress- und Zahlungsdaten) für den Workflow Status aktualisiert werden soll (default: ja). Dies hat eine aktualisierte Anzeige und eine Aktualisierung der zugehörigen Datenbank-Records der Bestelung zur Folge. (boolean)

Datenbankfeld in Tab. tx_ptgsashop_workflow

update_order

DatenbankFeld-Typ

tinyint(1) [für boolean]

Bedingungs-Methode

Label imTYPO3 BE

Bedingungs-Methode

Eingabe-Typ TYPO3 BE

Checkbox

Beschreibung(Datentyp))

Flag, ob für den Workflow Status eine Bedingungs-Methode tx_myext_wfsConfig_n::returnConditionCheck() in einer Konfigurationsklasse (s.u.) implementiert worden ist (boolean). Liefert diese Methode 'false'' zurück, schreitet der Workflow Engine im Rahmen seines “Automatic Advance” zum nächsten Status weiter.

Datenbankfeld in Tab. tx_ptgsashop_workflow

condition_method

DatenbankFeld-Typ

tinyint(1) [für boolean]

Autorisierungs-Methode

Label imTYPO3 BE

Autorisierungs-Methode

Eingabe-Typ TYPO3 BE

Checkbox

Beschreibung(Datentyp))

Flag, ob für den Workflow Status eine Autorisierung-Methode tx_myext_wfsConfig_n::returnPermissionCheck() in einer Konfigurationsklasse (s.u.) implementiert worden ist (boolean)

Datenbankfeld in Tab. tx_ptgsashop_workflow

permission_method

DatenbankFeld-Typ

tinyint(1) [für boolean]

Aktions-Methode bei Freigabe

Label imTYPO3 BE

Aktions-Methode bei Freigabe

Eingabe-Typ TYPO3 BE

Checkbox

Beschreibung(Datentyp))

Flag, ob für den Workflow Status eine Freigabe-Aktions-Methode tx_myext_wfsConfig_n::execApprovalAction() in einer Konfigurationsklasse (s.u.) implementiert worden ist (boolean)

Datenbankfeld in Tab. tx_ptgsashop_workflow

approve_action_method

DatenbankFeld-Typ

tinyint(1) [für boolean]

Aktions-Methode bei Ablehnung

Label imTYPO3 BE

Aktions-Methode bei Ablehnung

Eingabe-Typ TYPO3 BE

Checkbox

Beschreibung(Datentyp))

Flag, ob für den Workflow Status eine Ablehnungs-Aktions-Methode tx_myext_wfsConfig_n::execDenialAction() in einer Konfigurationsklasse (s.u.) implementiert worden ist (boolean)

Datenbankfeld in Tab. tx_ptgsashop_workflow

deny_action_method

DatenbankFeld-Typ

tinyint(1) [für boolean]

Aktions-Methode bei automatisches Fortschreiten

Label imTYPO3 BE

Aktions-Methode bei automatisches Fortschreiten

Eingabe-Typ TYPO3 BE

Checkbox

Beschreibung(Datentyp))

Flag, ob für das automatische Fortschreiten des Workflow Status eine- Aktions-Methode tx_myext_wfsConfig_n::execAdvanceAction() in einer Konfigurationsklasse (s.u.) implementiert worden ist (boolean)

Datenbankfeld in Tab. tx_ptgsashop_workflow

advance_action_method

DatenbankFeld-Typ

tinyint(1) [für boolean]

Aktions-Methode bei automatischem Anhalten

Label imTYPO3 BE

Aktions-Methode bei automatischem Anhalten

Eingabe-Typ TYPO3 BE

Checkbox

Beschreibung(Datentyp))

Flag, ob für das Anhalten des automatischen Fortschreitens bei diesem Workflow Status eine-Aktions-Methode tx_myext_wfsConfig_n::execHaltAction() in einer Konfigurationsklasse (s.u.) implementiert worden ist (boolean)

Datenbankfeld in Tab. tx_ptgsashop_workflow

halt_action_method

DatenbankFeld-Typ

tinyint(1) [für boolean]

Folgestatuscode bei Freigabe

Label imTYPO3 BE

Folgestatuscode bei Freigabe

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Status Code des Folgestatus bei Freigabe des aktuellen Workflow Status, falls der Folgestatus vom Default-Folgestatus (=nächster Status im Workflow) abweicht (integer: 0-99)

Datenbankfeld in Tab. tx_ptgsashop_workflow

approve_status_code

DatenbankFeld-Typ

char(2)

Folgestatuscode bei Ablehnung

Label imTYPO3 BE

Folgestatuscode bei Ablehnung

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Status Code des Folgestatus bei Ablehnung des aktuellen Workflow Status, falls der Folgestatus vom Default-Folgestatus (=vorheriger Status im Workflow) abweicht (integer: 0-99)

Datenbankfeld in Tab. tx_ptgsashop_workflow

deny_status_code

DatenbankFeld-Typ

char(2)

Folgestatuscode bei automat. Fortschreiten

Label imTYPO3 BE

Folgestatuscode bei automat. Fortschreiten

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Status Code des Folgestatus des aktuellen Workflow Status für das automatischem Fortschreiten des Workflows, falls der Folgestatus vom Default-Folgestatus (=nächster Status im Workflow) abweicht (integer: 0-99)

Datenbankfeld in Tab. tx_ptgsashop_workflow

advance_status_code

DatenbankFeld-Typ

char(2)

Text-Label fuer Auswahl-Frage

Label imTYPO3 BE

Text-Label fuer Auswahl-Frage

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Fragetext, der in einer Einzel-Bestellungsansicht des Workflow Status über den jew. Freigabe-/Ablehnungsbuttons erscheint (string)

Datenbankfeld in Tab. tx_ptgsashop_workflow

label_choice

DatenbankFeld-Typ

varchar(255)

Text-Label fuer Freigabe

Label imTYPO3 BE

Text-Label fuer Freigabe

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Beschriftung des Freigabe-Buttons für den Workflow Status, falls dieser vom Default-Freigabe-Button des Workflows abweicht

Datenbankfeld in Tab. tx_ptgsashop_workflow

label_approve

DatenbankFeld-Typ

varchar(255)

Text-Label fuer Ablehnung

Label imTYPO3 BE

Text-Label fuer Ablehnung

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Beschriftung des Ablehnungs-Buttons für den Workflow Status, falls dieser vom Default-Ablehnungs-Button des Workflows abweicht

Datenbankfeld in Tab. tx_ptgsashop_workflow

label_deny

DatenbankFeld-Typ

varchar(255)

Text-Label fuer Bestaetigung der Freigabe

Label imTYPO3 BE

Text-Label fuer Bestaetigung der Freigabe

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Bestätigungstext, der nach der Freigabe des Workflow Status erscheint (string)

Datenbankfeld in Tab. tx_ptgsashop_workflow

label_confirm_approve

DatenbankFeld-Typ

varchar(255)

Text-Label fuer Bestätigung der Ablehnung

Label imTYPO3 BE

Text-Label fuer Bestätigung der Ablehnung

Eingabe-Typ TYPO3 BE

String Input

Beschreibung(Datentyp))

Bestätigungstext, der nach der Ablehnung des Workflow Status erscheint (string)

Datenbankfeld in Tab. tx_ptgsashop_workflow

label_confirm_deny

DatenbankFeld-Typ

varchar(255)

[Workflow-Status-Konfiguration im Backend / DB: tx_ptgsashop_workflow]

Erweiterte Workflow-Konfiguration über Konfigurationsklassen

Zusätzlich können für einzelne Workflow Stati über Konfigurationsklassen noch Bedingungen und Aktionen in einer eigenen Extension definiert werden. Diese Extension muß im Constant Editor, Category: “PT_GSASHOP: WORKFLOW” bei plugin.tx_ptgsashop.workflowExtensionKey der Workflow Engine bekannt gemacht werden.

Die Konfigurationsklassen müssen das Interface tx_ptgsashop_iWfsConfigurator (typo3conf/ext/pt_gsashop/res/class.t x_ptgsashop_iWfsConfigurator.php) implementieren und sind innerhalb der eigenen Extensionim Verzeichnis res/pt_gsashop_workflow/ zu platzieren.

Die Namen der Konfigurationsklassen müssen dem Schema tx_<Ext.Key der implementierenden Ext. ohne Unterstrich>_wfsConfig_<n> folgen, wobei <n> für den Status Code des Workflow Status steht (Bsp. für Status 3 in der Extension myext: tx_myext_wfsConfig_3 ). Daraus ergibt sich dann mit vorgestelltem „class.“-Prefix und angehängtem „.php“-Suffix der Dateiname (im Bsp. class.tx_myext_wfsConfig_3.php ).:underline:ACHTUNG : Weichen Klassen- oder Dateiname von diesem Schema ab, wird die Konfigurationsklasse nicht gefunden und es werden Fehlermeldungen verursacht !

Innerhalb der Konfigurationsklasse müssen folgende Methoden mit dem jeweils vom Interface vordefinierten Methodennamen implementiert werden (optional mit eigenen Inhalten oder dem default “return true;”), für die bei Implementierung mit eigenen Inhalten jeweils in der Backend-Konfiguration eines Workflow Status (s.o.) die entsprechende Checkbox zu setzen ist:

returnConditionCheck()

Methodenname in Konfigurationsklasse

returnConditionCheck()

Funktionsbeschreibung der Methode

prüft die Bedingung, ob ein Workflow Status zum Tragen kommt (z.B. „ab einer Bestellsumme von n Euro muß die Bestellung vom Vorgesetzten freigegen werden“)

zugehörige Check-box im TYPO3 BE

Bedingungs-Methode

returnPermissionCheck()

Methodenname in Konfigurationsklasse

returnPermissionCheck()

Funktionsbeschreibung der Methode

prüft die Autorisierung, ob ein User einen Workflow Status bearbeiten (freigeben/ablehnen) darf (z.B. „Bestellungen können nur nach dem 4 -Augen-Prinzip freigegen werden/Freigabe darf nicht durch Ersteller erfolgen“ oder „Bestellsumme darf Freigabelimit des Users nicht überschreiten“)

zugehörige Check-box im TYPO3 BE

Autorisierungs-Methode

execApprovalAction()

Methodenname in Konfigurationsklasse

execApprovalAction()

Funktionsbeschreibung der Methode

führt individuelle Aktionen aus, die durch die Freigabe eines Workflow Status ausgelöst werden sollen (z.B. Email-Benachrichtigungen, PDF- Generierung usw.)

zugehörige Check-box im TYPO3 BE

Aktions-Methode bei Freigabe

execDenialAction()

Methodenname in Konfigurationsklasse

execDenialAction()

Funktionsbeschreibung der Methode

führt individuelle Aktionen aus, die durch die Ablehnung eines Workflow Status ausgelöst werden sollen (z.B. Email- Benachrichtigungen, PDF-Löschung usw.)

zugehörige Check-box im TYPO3 BE

Aktions-Methode bei Ablehnung

execAdvanceAction()

Methodenname in Konfigurationsklasse

execAdvanceAction()

Funktionsbeschreibung der Methode

führt individuelle Aktionen aus, die beim automatischen Fortschreiten des Workflow Status ausgelöst werden sollen

zugehörige Check-box im TYPO3 BE

Aktions-Methode bei automatischem Fortschreiten

execHaltAction()

Methodenname in Konfigurationsklasse

execHaltAction()

Funktionsbeschreibung der Methode

führt individuelle Aktionen aus, die beim Anhalten des automatischen Fortschreiten beim jeweiligen Workflow Status ausgelöst werden sollen

zugehörige Check-box im TYPO3 BE

Aktions-Methode bei Anhalten des Fortschreitens

[Workflow-Status-Konfigurationsmethoden]

Allen genannten Methoden muss das Bestellungsobjekt als Parameter übergeben werden, damit dieses innerhalb der Methode ausgewertet werden kann.

Das “automatische Fortschreiten” der Workflow Engine kann -wenn alle zu prüfenden returnConditionCheck() Methode der folgenden Workflow Status false zurückliefern – dazu führen, dass eine im Workflow befindliche Bestellung automatisch den Workflow bis zum Endstatus durchläuft und damit im Bestellarchiv landet. Deshalbist darauf zu achten, dass beim letzten Workflow Status mindestens in der execAdvanceAction() Methode alle gewünschten Aktionen implementiert werden, die für eine “finale” Bestellung ausgeführt werden sollen.

Im doc/ Verzeichnis der Extension liegt die Beispieldatei “class.tx_example_wfsConfig_1.php.txt” (der .txt Suffix wurde nur angehängt, um das Auslesen von .php-Dateien im TYPO Extension Manager zu verhindern). Diese enthält in der Methode execApprovalAction() auskommentierten Beispielcode (nicht getestet, bitte Feedback bei Problemen :-) zur Verarbeitung einer endgültig freigegebenen Bestellung nach dem gleichen Schema, das GSA Shop zur Verarbeitung von Bestellungen ohne Workflow verwendet.

**WICHTIGE ÄNDERUNG (Dez. 2008)** :

Die Bestellungs-Verarbeitung wurde in v0.14.0 der Extension komplett “refactored”, diverse “alte” pi3-Methoden als deprecated markiert (s. Changelog v0.14.0). Ab dieser Version ist nur noch das neue Beispiel aus example_wfsConfig_1::execApprovalAction() dieser Version zu verwenden! Ggf. bereits zuvor implementierte eigene Workflow-Klassen müssen entsprechend dieser neuen Vorlage geändert werden!

Known problems

  • article relation checks are not completely/finally implemented for all feature combinations
  • currently the GSA database based components of the shop (e.g. articles) and the workflow labels are not capable of multiple languages
  • due to internal change of processing 4 decimal places including the complete conversion of all float calculations to BCMath functions (since pt_gsashop v0.9.4) precision problems with rounding may occur, so the calculation of the order totals and the delivery totals is rounded down to 2 decimal places
  • if the extension “newloginbox” is used in combination with GSA Shop, and the login/logout is placed on all pages of the website, the redirect after pressing the login/logout button may lead to errors due to lacking parameter data – this is a known fault of the “newloginbox” extension and no problem of GSA Shop (there are some workarounds possible, e.g. by using an appropriate TS in combination with the “felogin” ext., by offering the login only on one dedicated page or by redirecting to dedicated pages after login or logout instead of returning to the originating page)
  • the whole bunch of GSA extensions is under continuous development – please report possibly occurring problems and bugs to the authors

To-Do list

  • major revision of GSA User Registration (ext. pt_gsauserreg) frontend, adding backend modules for user administration (including GUIs to set customer specific prices and price categories for users) – this is up to that extension's author...
  • implement automatic PDF generation of all order and accounting related documents (extension pt_gsapdfdocs is already existent, but not bound into the shop core)
  • implementation of product variants (implemented as an additional module: the upcoming extension pt_gsavariants)
  • test of the overhauled workflow engine with some real-life workflow applications, enhance localization handling of workflow status labels
  • see chapter “Work in progress/Future prospects” above

Changelog

Note: Changes marked as “**IMPORTANT** ” contain changes of the default behaviour or the dependencies – this may require user action when updating the extension!

((generated))

v1.0.1

updated chapter “GSA extension overview” of this manual, fixed some documentation errors

v1.0.0
  • updated extension dependencies and this manual to the current state of things
  • changed extension state to ''stable'' after successful usage in several production environment websites
  • added new hook 'mainControllerHook' to tx_ptgsashop_pi2::main()
  • added some getter methods to tx_ptgsashop_pi2
v0.14.1
  • bugfix in tx_ptgsashop_orderProcessor: added missing inclusion of class tx_ptgsashop_orderPresentator
  • added new hooks:
    • 'postOrderProcessingHook' in tx_ptgsashop_orderProcessor::processPostOrderProcessingHooks() (called from tx_ptgsashop_orderProcessor::processSubmission())
    • 'updateArtDistrQtyChangesConsequencesHook' in tx_ptgsashop_pi3::updateArtDistrQtyChangesConsequences()
  • refactoring of article box template articlebox.tpl.html: added new marker $additionalArticleData, reformatted HTML code
v0.14.0

This version contains lots of improvements and revisions of historically grown configurations and behaviours. In the course of getting rid of these legacy structures and to support future concepts of GSA Shop some things have been changed incisive. This results in changed behaviour, changed default configurations (Typoscript/Constant Editor) and changed hooks – so **please read the changelog notes and instructions carefully when updating an existing instance of this extension** :

  • adaptation for new optional "2-in-1" database concept (see extension manuals of pt_gsaminidb and pt_gsasocket): this allows the import of the required GSA database tables into an existing TYPO3 database (e.g. for users who do not have have the privileges to create an additional database on their database server) – requires updated dependencies, see below!
  • **IMPORTANT** : addedextension pt_mail as new dependency requirement; dependency version update for pt_tools (version 0.4.1-), pt_gsasocket )version 0.3.0-), pt_gsauserreg version )0.1.0-)
  • complete refactoring of the order submission process (processing was done within tx_ptgsashop_pi3 before):
    • added new class tx_ptgsashop_orderProcessor: based on refactored code of former tx_ptgsashop_pi3::processOrderSubmission()
    • **IMPORTANT** : static/setup.txt: moved several Typoscript configuration options from plugin.tx_ptgsashop_pi3 to config.tx_ptgsashop: orderConfirmPage, paymentPage, workflowPage, useAutomaticInvoiceBooking (this means these are removed in plugin.tx_ptgsashop_pi3, adapt your Typoscript if you've used them!)
    • static/setup.txt: added several configuration options from plugin.tx_ptgsashop_pi3 to config.tx_ptgsashop: orderEmailSender, orderEmailRecipient, orderConfirmationEmailBcc, orderConfirmationEmailReplyTo, sendFinalOrderEmailToCustomer, enableOrderWorkflow
    • **IMPORTANT** :tx_ptgsashop_pi3: returnWrapperForArchivedOrder() and sendFinalOrderEmail() marked as DEPRECATED now (both may be removed in one of the upcoming versions); moved class constant WORKFLOWPLUGIN_CLASS_NAME from tx_ptgsashop_pi3 to new class tx_ptgsashop_orderProcessor; refactored processOrderSubmission()
    • tx_ptgsashop_orderWrapper: added miscellaneous new methods and properties
    • moved appropriate pi3 locallang labels from pi3/locallang.xml res/locallang_res_classes.xml ("log_initial_workflow" is now "tx_ptgsashop_orderProcessor.logentryWorkflowInitial", "log_final_order" is now "tx_ptgsashop_orderProcessor.logentryFinalOrder", "orderEmail_subject" is now "tx_ptgsashop_orderProcessor.orderEmailSubject"
    • **IMPORTANT** : changed workflow example doc/class.tx_example_wfsConfig_1.php.txt: re-written execApprovalAction() example using new tx_ptgsashop_orderProcessor now – please adapt your workflow classes if you've used the old example with now deprecated pi3 methods!
    • **IMPORTANT** : three former Hooks of the $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['pt_gsashop']['pi3_hooks] array have been renamed (change of the hook identifier) and the way they are called has changed – please refer to the new chapter of this manual “Hook usage” for details on how to adapt your existing code using these hooks
  • major revision of email dispatch, usage of new dependency extension 'pt_mail' to send all shop related emails:
    • **IMPORTANT** : extension “pt_mail” has to installed on your server (seedependency update note above)
    • **IMPORTANT** : added new TypoScript template 'GSA Shop: pt_mail Config'in static/pt_mail_config/setup.txt – this template has to included additionally to your TypoScript template. Please note: the “ptmail Config” template has to be included after the “Basic Config” template (please refer to the adapted chapter of this manual “Installation and Extension Manager Settings” for details).
    • added new Constant Editor/TypoScript config option "shopName"
    • **IMPORTANT** : changed behaviour of Constant Editor/TypoScript config option "orderEmailSender": this will be used as sender address for _all_ shop emails now (e.g. the order confirmation and payment result emails of the the shop core, but intented for emails from other GSA extensions as well!). NOTE: Please ignore the historically grown (and for backwards compatibility reasons unchanged) option name "orderEmailSender", it's value will be used as general email sender and not for order emails only!
    • **IMPORTANT** : changed behaviour of Constant Editor/TypoScript config option ""sendFinalOrderEmailToCustomer": uncheck this if you do not want the final order to be sent as an auto- generated confirmation email - this setting affects the CC: and BCC: settings as well (no order confirmation email is sent at all if this one is disabed).
  • added new tx_ptgsashop_baseArticle property $artrelApplIdentifier and appropriate processing, including new database fields in ext_tables.sql - **IMPORTANT** : this requires a database update in the Extension Manager
  • added order confirmation email template in English language (res/smarty_tpl/finalorder_utf8_en.tpl.txt)
  • changes to “Payment sum” display (new feature since v0.13.0): new Constant Editor/Typoscript configuration option “displayPaymentSumByDefault” (see chapter “Configuration” above), added display condition in default templates for order overview and order confirmation email, minor layout changes for templates
  • added current order object as additional parameter to all (temporary) “processShopOrderTransactionStorage_manipulate* hook” hooks in tx_ptgsashop_gsaTransactionHandler – **IMPORTANT** : please adapt your hook methods if you're using these hooks
  • fixed bug in tx_ptgsashop_gsaTransactionHandler: delivery confirmation document ID is now passed to the call of both "processShopOrderTransactionStorage_manipulateDelNote*RecordHook" hooks (was order confirmation document ID before)
  • fixed bug in tx_ptgsashop_sessionOrder::createFromOrderObj() (caused type hint error with value NULL in tx_ptgsashop_order::set_paymentModifierCollObj())
  • fixed error display if the 'GSA Cache' button was pressed without any articles being existent in the GSA database
  • fixed 'no config' exception' when selecting plugin articles in the backend: article selection without configuration of the “description source field name” possible now
  • fixed backend tax description display if the “old” ERP tax table "STEUER" is not existent
  • tx_ptgsashop_iPaymentModifierCollection: added missing parameter $orderId for storeToOrderArchive()
  • tx_ptgsashop_orderWrapper: added missing require for tx_pttools_assert
  • tx_ptgsashop_order: added the possibility to force an uid when saving an order to the order archive (added optional parameter "uid" in saveToOrderArchive() and insertOrder())
  • tx_ptgsashop_baseArticle: marked all "old" image processing (of GSA database-internal stored binary images) methods and properties as DEPRECATED (due to "new" TYPO3 database based multiple image processing)
  • ext_emconf.php: changed 'createDirs' to the default smarty extension directories 'typo3temp/smarty_cache,typo3temp/smarty_compile'
  • miscellaneous minor internal improvements (revision of general exception handling; tx_ptgsashop_orderProcess::bookOrderConfirmationToInvoice(): changed/added internal checks of related doc numbers and already processed invoice transformation; tx_ptgsashop_gsaTransactionAccessor: added checks to assure that only 1 row is found; etc.)
v0.13.0
  • major performance improvements due to usage of a configuration registry for all classes using Typoscript configuration (new method tx_ptgsashop_lib::getGsaShopConfig(), changes in all appropriate classes) – **IMPORTANT** : this requires the extension pt_tools version 0.4.0 or higher
  • added several shop core additions to process arbitrary payment modifiers (e.g. voucher, credit balances etc.):
    • added new interface tx_ptgsashop_iPaymentModifierCollection
    • added new property tx_ptgsashop_order::paymentModifierCollObj and the appropriate handling in all related functionality
    • added new method property tx_ptgsashop_order::getPaymentSumTotal() - this method's return is passed to epayment requests now
    • **IMPORTANT** : added “Payment sum” display in default templates for order overview and order confirmation email
  • **IMPORTANT** : added cookie check in tx_ptgsashop_pi1::main() and tx_ptgsashop_pi2::exec_addArticleToCart()
  • **IMPORTANT** : Bugfix in ext_tables.sql: added missing database field "tx_ptgsashop_orders.applSpecDataClass" - this requires a database update in the Extension Manager
  • **IMPORTANT** : tx_ptgsashop_articleAccessor::selectOnlineArticles() throws exceptions now if query failed or returned empty result (the later can be suppressed with a new optional parameter)
  • shopping cart changes: empty cart message is displayed with a message box now, article sorting now shows articles changed in quantity at the end of the list, article images available in shopping cart now (see tx_ptgsashop_pi1::displayShoppingCart())
  • added handling of EAN numbers (European Article Number is a barcoding standard) to articles: new property tx_ptgsashop_baseArticle::eanNumber, new method tx_ptgsashop_articleAccessor::selectArticleDataByEAN()
  • added miscellaneous new additional data marker hooks (in tx_ptgsashop_pi3::displayOrderOverview_MarkerArrayHook(), tx_ptgsashop_orderPresentator::getPlaintextPresentation(), tx_ptgsashop_pi4::displayOrdersList() and tx_ptgsashop_pi4::displaySingleView())
  • added appropriate template markers for additional data (in templates orderoverview.tpl.html, orderslist.tpl.html, ordersingleview.tpl.html, finalorder_utf8.tpl.txt)
  • added new "mainControllerHook" in tx_ptgsashop_pi3::main()
  • added TS option “config.tx_ptgsashop.orderPage” to default TS setup
  • tx_ptgsashop_gsaTransactionHandler::continueOrderConfirmationToInvoi ce(): added special treatment for invoices with sum total equals zero, these are marked as settled (ERP: "erledigt") now
  • miscellaneous minor internal improvements
v0.12.2
  • added new scale price quantity tolerance setting (for detailsplease refer to the description of the setting in Constant Editor category PT_GSASHOP::GENERAL, option “scalePriceQtyTolerance”)
  • added new customer specific price handling setting for mixed calculation/combined costing (for details please refer to the description of the setting in Constant Editor category PT_GSASHOP::GENERAL, option “custSpecPriceOverridesDefaultPrice”)
  • improvements of plugin tx_ptgsashop_pi2 (article display) for integration via Typoscript (no missing flexform configuration exception thrown anymore, added stdWrap handling of $this->conf['article_uid'])
  • changed scale price related locallang labels of pi2: new labels "pricescales_qty" and "pricescales_price" are used from now on
  • added additional parameter $orderWrapperObj to hook “processOrderSubmission_fixFinalOrderHook” in tx_ptgsashop_pi3
v0.12.1
  • added update warning in extension manager display to inform users updating previous versions via the extension manager
  • changed sorting in Constant Editor category PT_GSASHOP::PAYMENT
  • revision of this manual: used new 2008 manual template, format corrections for online display, minor updates
v0.12.0

This version contains lots of improvements and revisions of historically grown configurations and behaviours. In the course of getting rid of these legacy structures and to support future concepts of GSA Shop some things have been changed incisive. This results in changed default configurations (Typoscript/Constant Editor) and changed behaviour – so **please read the changelog notes and instructions carefully when updating an existing instance of this extension** :

  • **IMPORTANT** :dependency changes: raised TYPO3 version dependency to version 4.1; raised pt_tools library dependency to version 0.3.0, removed dependency for CC clearing extension pt_heidelpay (now suggestion only)
  • new features and elements:
    • added views of complete orders including all sub-elements in the backend by restructuring the order related TCA entries using IRRE,
    • submitted orders can be stored in a sysfolder now by using the new TS/CE config “orderStoragePid” (see below),
    • added new individual backend icons for all appropriate TCA elements, plugins and modules of GSA Shop (replaced default icons, added new passive article icon for article cache, adapted appropriate TCA configuration, SQL definitions etc.)
    • **IMPORTANT** : these additions require a database update in the extension manager after updating the extension
    • **IMPORTANT** : to display existing orders correctly in the new backend view, use the “UPDATE!” option in the upper right selectorbox of the Extension Manager to convert your existing order database records for usage with IRRE
  • major revision of article linking (links from article to their appropriate detail/single view pages):
    • complete revision of tx_ptgsashop_baseArticle::getFePageLink() (changed internal logic, adopted typolink functionality for the linking functions, removed method parameter), appropriate removal of method parameter in all calls of this method
    • **IMPORTANT** : Constant Editor category PT_GSASHOP::GENERAL: option “displayCartArticleLinks” (CE header “Enable cart article linking”) is now re-used for it's original purpose only (a flag whether:underline:cart article should be linked to detail pages or not) and it's default value has been changed from 0 to 1 now; appropriate changes to displayShoppingCart() und displayArticleConfirmation() in pi1
    • **IMPORTANT** : the former additional link configuration values of the “displayCartArticleLinks” TS/CE config option on:underline:how to create detail pages links for articles in general have been removed now, the linking of articles to their detail pages is now:underline:always based on former setting “(2) Link to pid or alias set in field "Webadresse" in GSA-Admin or ERP-GUI (GSA- DB: ARTIKEL.WEBADRESSE)”!
    • **IMPORTANT** : the internal logic of processing the contents of the GSA-DB field “ARTIKEL.WEBADRESSE” (field "Webadresse" in GSA-Admin or ERP-GUI) has been switched vice versa to improve future handling of articles: an empty field (null) now means “Link to the shop's default article single view page”, value “-1” now means “do not link article at all”! This relates to all article links if they are switched on, e.g. articles in cart (CE category PT_GSASHOP::GENERAL, option “displayCartArticleLinks”) and pi2-articles in “article display” content elements or article lists (CE category PT_GSASHOP::ARTICLE DISPLAY, option “articleDisplayUrl”).This incisive changes requires a manual update of your articles in the GSA-DB table “ARTIKEL” - execute the following SQL query to perform the update:“UPDATE `ARTIKEL` SET `WEBADRESSE` = '-2' WHERE `WEBADRESSE` LIKE '-1'; UPDATE `ARTIKEL` SET `WEBADRESSE` = '-1' WHERE (ISNULL(`WEBADRESSE`) OR `WEBADRESSE` LIKE ''); UPDATE `ARTIKEL` SET `WEBADRESSE` = NULL WHERE `WEBADRESSE` LIKE '-2';”
    • changes to TS config in static/setup.txt: moved former setting config.tx_ptgsashop.displayCartArticleLinks to plugin.tx_ptgsashop_pi1.displayCartArticleLinks now; added new typolink configuration option config.tx_ptgsashop.articleSingleViewTypoLink for links to article single view
  • revision of payment handling: Constant Editor category PT_GSASHOP::PAYMENT - changed defaults and renamed TS options (please refer to the appropriate Constant Editor descriptions for details):
    • renamed former option “enableCCpayment” to “enableSimpleCcPaymentChoice” and changed it's default value from 1 to 0 (since pt_heidelpay is no dependency anymore),
    • renamed former option “useGsaPaymentChoice” to “enableExtendedPaymentChoice” and changed it's default value from 0 to 1
    • **IMPORTANT** : adapt any individual TS setup using the mentioned options, set “enableSimpleCcPaymentChoice” to your previous entry for “enableCCpayment” and set “enableExtendedPaymentChoice” to your previous entry for “useGsaPaymentChoice”
  • revision of email handling for order confirmations and payment results (refer to the appropriate Constant Editor descriptions for details):
    • Constant Editor category PT_GSASHOP::GENERAL: added new config options “orderConfirmationEmailBcc” and “orderConfirmationEmailReplyTo”, made option “orderEmailRecipient” optional, revised CE email options descriptions;
    • CE category PT_GSASHOP::PAYMENT: removed option “sendEpaymentResultEmail”, added new option “epaymentResultRecipient” instead
    • **IMPORTANT** : please add your former email address entry at option “orderEmailRecipient” to the new option “epaymentResultRecipient”, adapt any individual TS setup using the mentioned options and check your email configuration in the mentioned CE categories after updating!
  • revision of page/sysfolder settings in TS configuration (Constant Editor category PT_GSASHOP::PAGES):
    • all pages and sysfolder settings now allow a PID or an alias;
    • added new option “orderStoragePid” to store shop orders in a sysfolder different from the order page; added default aliases for former PID- only settings
  • corrected behaviour of TS config options "enableXssSecurityForArticleText" and "enableRteForArticleText" in article display (pi2/article lists) according to their CE descriptions: RTE content is now devaluated as well if both configs are set to 1
  • removed the admin restriction for the “GSA Cache” module – it is now available for non-admin users as well
  • tx_ptgsashop_orderPresentator: removed TSFE dependency of class constructor, added new method getMarkerArray()
  • added new TS config parameters “shopOperatorBankName”, “shopOperatorBankCode”, “shopOperatorBankAccountNo”, “shopOperatorBankBic”, “shopOperatorBankIban” to Constant Editor category PT_GSASHOP::PAYMENT and TS setup config.tx_ptgsashop. - added new parameters to template marker array of tx_ptgsashop_orderPresentator::getMarkerArray()
  • added article userfields (“Freifelder” in GSA-Admin or ERP-GUI) to template marker array of tx_ptgsashop_pi2::getMarkerArrayFromArticle()
  • added new Hook “processOrderSubmission_alternativeOrderConfirmPage” in tx_ptgsashop_pi3::processOrderSubmission()
  • changed extension status to “beta”
  • major revision and extension of this manual, re-written chapter “Example shop setup: Overview of pages & plugins”
  • miscellaneous minor internal improvements
v0.11.0
  • GSA Shop is -combined with some other extensions- available as a TYPO3 standalone version now (disengagement of the ERP software): extended tx_ptgsashop_taxAccessor for usage with new extension pt_gsaadmin, extended and adapted this manual for the TYPO3 standalone version
  • renamed all “display_*”settings to “articleDisplay*” in Constant Editor/TS configuration options, in articlebox template markers and in template /smarty_tpl/articlebox.tpl.html. **IMPORTANT** : please adapt your TypoScript template (if you've used the “display_*” settings) & your cartbox HTML template accordingly
  • default template for final order email converted to UTF8 and renamed to res/smarty_tpl/finalorder_utf8.tpl.txt; new Constant Editor/TS configuration option “templateCharsetFinalOrderMail”; adapted charset handling in tx_ptgsashop_pi3::sendFinalOrderEmail()
  • fixed bug for backend article search in list view and TBE popup window of pi2's article selection
  • fixed bug for “return to last order page” link: stored value is not overwritten anymore in article single view now
  • fixed bug for article relations/required articles: shop stays on cart page now after pressing the special required article order button (if configured accordingly in Constant Editor option “addToCartAction”)
  • improvement of PHP's date_default_timezone_set() handling in all plugins (previous value is stored & re-set on execution end now)
  • order button for article view now configurable in pi2's backend flexform
  • Constant Editor cleanup: new categories 'pages', 'payment', 'cartbox' and 'article display', new order and category sorting for configuration options, changed data type for all “img*” options from type file to type string, correction of labels and descriptions
  • changes to Constant Editor/TS configuration options: new option “sendEpaymentResultEmail” (for pi6), changed defaults for “feUserRegPage” and “userAccountPage”
  • added additional optional net/gross template markers (independent from default pt_gsashop templates) for article view (tx_ptgsashop_pi2::getMarkerArrayFromArticle()), cart (tx_ptgsashop_pi1::displayShoppingCart()) and order overview (tx_ptgsashop_pi3::displayOrderOverview())
  • extended “displayArticleInfobox_MarkerArrayHook” hook in with 3rd parameter (in tx_ptgsashop_pi2::getMarkerArrayFromArticle())
  • changed visibility of miscellaneous object properties and methods from “private” to “protected” for better support of OOP inherintance
  • general cleanup: removed all doc/px_*.sql files (partially moved to extension pt_gsasocket), moved all extension icons to res/img/, removed obsolete file class.tx_ptgsashop_tt_content_tx_ptgsashop_article_uid.php
  • minor improvements, TCA corrections (incl. bugfix for field “tx_ptgsashop_amendmentlog”), standardization of locallang labels and source code comment cleanup
v0.10.0
  • backend configuration of plugin “Article Display” (pi2) extended and changed to flexform **IMPORTANT** : choose 'pt_gsashop' in the TYPO3 extension manager and use the “UPDATE!” option in the upper right selectorbox to convert your existing installation to flexform; the defaults are configurable via Typoscript now
  • plugin “Article Single View” (pi5) removed – functionality now integrated in plugin “Article Display” (pi2): pi2 inserted without any article selected works as “Article Single View” now (template articlebox.tpl.html now set as default for TS templateFileArticleSingleView, too)
  • new backend module “Tools->GSA Cache” implemented – this should be used by the admin once the articles have been imported/entered into the GSA DB: create a new sysfolder “GSA Article Cache”, enter this sysfolder's PID in Constant Editor of your pt_gsashop template (“Article cache storage PID“), clear the TYPO3 cache and hit the “Tools->GSA Cache” button
  • backend article choice of plugin “Article Display” (pi2) now works with a “Element Browser” popup wizard (instead of former selectorbox) to improve usability for large article amounts; the wizard requires the article cache to be filled using the “GSA Cache” module (s. above)
  • overhaul of the authentication concept – pt_gsauserauth dependency removed, authentication checks implemented in pt_gsashop now
  • plugin “Article Display” (pi2) is enabled to render RTE content and to display price scales now (appropriate Constant Editor/TS config required for both new features), article linking to the “Article Single View” page is now enabled by default
  • handling and display of article images implemented (BE module ext. pt_gsaadmin needed to add images to articles); the usage of the former database internal image storage of GSA is deprecated now
  • overhaul of the address handling in orders and deliveries: deleted or deprecated addresses from orders opened from the archive will be replaced by the appropriate default address of the user now, API changes (method parameters) for tx_ptgsashop_address::__construct() and tx_ptgsashop_delivery::updateDelivery()
  • general cleanup: converted all locallang-files from php to xml, removed dispensable “insert content element” wizards for all all plugins except for pi2/”Article display” (other plugins have to be inserted using the “General Plugin” option in the TYPO3 backend now)
  • new extension category “General Shop Applications” created for bundled display of all extension of the “pt_gsa* family” in TYPO3's Extension Manager
  • miscellaneous internal enhancements, new hooks etc.
v0.9.7 (not published in TER)

miscellaneous internal enhancements, especially for usage in combination with the new backend modules extension pt_gsadmin

v0.9.6
  • automatic invoice booking in ERP activated by default (new TS/Constant Editor config option “useAutomaticInvoiceBooking”)
  • reorganization of the article structure to use a scale price collection now
  • bugfixes for article fixed costs incl. harmonisation of fixed cost handling with GSA's way to handle this (always net)
  • enhancements in article and tax classes for usage with the upcoming backend data administration extension "pt_gsaadmin"
  • minor code improvements, overhaul of inline doc comments for IDE code completion usage
v0.9.5
  • overhaul of the GSA DB storage of shop order confirmations and invoices (massive changes to the gsaTransaction* classes) for seamless integration into GSA ERP: allows to make credit notes for shop orders now etc.
  • fixed bank account holder name bug for automatically created DTA records
v0.9.4
  • internal change of processing 4 decimal places including the complete conversion of all float calculations to BCMath functions - **IMPORTANT** : This requires PHP to be configured with '--enable-bcmath' (see www.php.net/bc)
  • improvements and bugfixes of order storage in TYPO3 DB, article fixed costs, tax calculation, workflow and GSA invoice creation
  • new TS/Constant Editor config options: usePricesWithMoreThanTwoDecimals, gsaCreateDeliveryReceipt
  • tx_ptgsashop_pi3::processOrderOverview(): new Hook processOrderOverview_checkoutHook
  • update of this manual, format changes due to faulty online display in TER
v0.9.3
  • complete revision of the workflow engine (new engline logic for automaticadvance handling, enhanced configuration possibilities for workflow status, massive code improvements for plugin pi4, enhanced workflow list view, localisation for workflow status labels etc.)
  • fixed costs for articles implemented (one-time/non-recurring fixed costs for an article independently of its ordered quantity)
  • supplier control for article purchases implemented (requires the DB table 'pt_gsashop_supplierControl' to be existent in the GSA DB)
  • improvements and bugfixes of GSA transaction handling and of the article factory class
  • Miscellaneous changes and enhancements, including changed TYPO3 database structure (the 'UNIQUE key(s) on 'status_code' of an eventually existing database table 'tx_ptgsashop_workflow' have to be deleted manually!)
v0.9.2
  • revision and extension of GSA transaction (“Vorgang”) handling (new classes tx_ptgsashop_gsaTransactionAccessor, tx_ptgsashop_gsaTransactionHandler), new invoice booking methods including German DTA
  • Plugin pi4 changed to a configurabe flexform plugin: allows different workflow views on multiple pages now
  • Miscellaneous changes and enhancements (XHTML fixes, new pi1 hook, enhanced handling of applSpecDataObjects, conversion of GSA Paradox database tables, enhanced articles and article storage, workflow improvements, resource classes locallang etc.)
v0.9.1
  • integration of new pt_heidelpay ext. version including changed API and WPF-Interface (ePayment popup window provided by Heidelpay)
  • complete revision and improvements of workflow engine (including automatic order archive database updates and replacement of general workflow config 'workflowDynamicOrder' with individual update config for each workflow status)
  • GSA-based special customer related special prices implemented (GSA: “kundenspezifische Preise”)
  • miscellaneous internal changes, improvements and bugfixes (especially database error after credit card payment)

EXT: GSA Shop - 35

img-16