.. You may want to use the usual include line. Uncomment and adjust the path. .. include:: ../Includes.txt .. role:: underline ============= 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: EXT: GSA Shop ============= Extension Key: **pt\_gsashop** Copyright 2005-2009, Rainer Kuhn, Extension maintaining transfered to punkt.de GmbH 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/ `_ )** 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: 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: Introduction ------------ .. _What-does-it-do: 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. .. _Legal-notice-Disclaimer: Legal notice / Disclaimer ^^^^^^^^^^^^^^^^^^^^^^^^^ “GS Auftrag Professional”, Windows, Borland and all other third-party product names, trademarks or registered trademarksmentioned in this manual are the property of their respective owners. .. _Credits-and-history: 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 “t3extensionspunkt.de” for any questions about GSA Shop. .. _Features: 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: 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: 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): .. ### BEGIN~OF~TABLE ### .. _GSA-Shop: GSA Shop """""""" .. container:: table-row 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: GSA Standalone Database """"""""""""""""""""""" .. container:: table-row 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: GSA Socket """""""""" .. container:: table-row 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: GSA User Registration """"""""""""""""""""" .. container:: table-row 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: GSA Admin """"""""" .. container:: table-row 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: GSA Article Lists """"""""""""""""" .. container:: table-row 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: GSA Article Categories """""""""""""""""""""" .. container:: table-row 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: GSA Dunning """"""""""" .. container:: table-row 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: GSA Stock """"""""" .. container:: table-row 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: Heidelpay ePayment """""""""""""""""" .. container:: table-row 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: VR-ePay ePayment """""""""""""""" .. container:: table-row 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** .. ###### END~OF~TABLE ###### [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 “t3extensionspunkt.de” for development versions of the extensions, for further information and for questions about GSA Shop. .. _Screenshots: 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: Administration -------------- .. _System-requirements: 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** : :underline:`Either` the standalone database *GSAMINIDB* (ext. pt\_gsaminidb), a *GSMAND* 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* 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: 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: 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.). :underline:`**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). :underline:`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! :underline:`Please note` : the “ptmail Config” template has to be included :underline:`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): .. ### BEGIN~OF~TABLE ### .. _TS-configuration-PID: **TS configuration PID** """""""""""""""""""""""" .. container:: table-row a **TS configuration PID** b [tsConfigurationPid] .. _PID-of-the-page-where-to-find-the-main-typoscript-configuration-of-GSA: PID of the page where to find the main typoscript configuration of GSA """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row 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: **Timezone (PHP)** """""""""""""""""" .. container:: table-row a **Timezone (PHP)** b [timezone] .. _The-timezone-identifier-see-http-php-net-manual-en-timezones-php: The timezone identifier (see http://php.net/manual/en/timezones.php) """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row 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: **Production Environment** """""""""""""""""""""""""" .. container:: table-row a **Production Environment** b [prodEnv] .. _Check-this-box-if-the-extension-is-used-in-production-environment: Check this box if the extension is used in production environment, """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row 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 .. ###### END~OF~TABLE ###### 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: 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 :underline:`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). .. ### BEGIN~OF~TABLE ### .. _Page-page-tree-example-name: Page (“page tree example name”) """"""""""""""""""""""""""""""" .. container:: table-row 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: General Storage Folder """""""""""""""""""""" .. container:: table-row 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: FE User """"""" .. container:: table-row 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: Article Cache (“Artikel (Cache)”) """"""""""""""""""""""""""""""""" .. container:: table-row 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: Article Images (“Artikel-Bilder”) """"""""""""""""""""""""""""""""" .. container:: table-row 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-underline-optional: Orders (“Bestellungen”) [ :underline:`optional` ] """"""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Orders (“Bestellungen”) [ :underline:`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-underline-optional: Categories (“Kategorien”) [ :underline:`optional` ] """"""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Categories (“Kategorien”) [ :underline:`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: Login/Logout """""""""""" .. container:: table-row 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: Product pages (“Produktseite n”) """""""""""""""""""""""""""""""" .. container:: table-row 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: Article single view (“Artikel-Einzelansicht (pi2)”) """"""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Article single view (“Artikel-Einzelansicht (pi2)”) Plugins used for appropriate page GSA Shop: Article display(tx\_ptgsashop\_pi2)-:underline:`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”:underline:`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: Shopping cart (“Warenkorb”) """"""""""""""""""""""""""" .. container:: table-row 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: Order overview (“Bestellung”) """"""""""""""""""""""""""""" .. container:: table-row 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: Order submitted (“Bestellung abgeschickt”) """""""""""""""""""""""""""""""""""""""""" .. container:: table-row 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-underline-optional: Credit Card Payment (“Kreditkarten-Zahlung”)[ :underline:`optional` ] """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Credit Card Payment (“Kreditkarten-Zahlung”)[ :underline:`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-underline-optional: Payment ok(“Zahlung erfolgt”) [ :underline:`optional` ] """"""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Payment ok(“Zahlung erfolgt”) [ :underline:`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-underline-optional: Payment failed(“Zahlung fehlgeschlagen”[ :underline:`optional` ] """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Payment failed(“Zahlung fehlgeschlagen”[ :underline:`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-underline-optional: Workflow (“Workflow (Customer/Operator)”)[ :underline:`optional` ] """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Workflow (“Workflow (Customer/Operator)”)[ :underline:`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-underline-optional: Order archive (“Bestellarchiv”)[ :underline:`optional` ] """""""""""""""""""""""""""""""""""""""""""""""""""""""" .. container:: table-row Page (page tree example name) Order archive (“Bestellarchiv”)[ :underline:`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-Persnliche-Daten: Personal data (“Persönliche Daten”) """"""""""""""""""""""""""""""""""" .. container:: table-row 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: Customer data (“Kundendaten”) """"""""""""""""""""""""""""" .. container:: table-row 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: Bank data (“Bankdaten”) """"""""""""""""""""""" .. container:: table-row 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: User data (“Benutzerdaten”) """"""""""""""""""""""""""" .. container:: table-row 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: Delivery addresses (“Adressen”) """"""""""""""""""""""""""""""" .. container:: table-row 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: Terms and conditions (“AGB”) """""""""""""""""""""""""""" .. container:: table-row 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: Right of withdrawal (“Widerrufsrecht”) """""""""""""""""""""""""""""""""""""" .. container:: table-row 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) .. ###### END~OF~TABLE ###### [Usage of pages and plugins] \* :underline:`GSA customer group` = see description directly above this table .. _Using-the-article-cache-GSA-Cache: 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: **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: **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: Configuration ------------- .. _Extension-Configuration-in-Constant-Editor: 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. :underline:`IMPORTANT` : Don't forget to set an individual “salt” string at plugin.tx\_ptgsashop.md5SecurityCheckSalt! .. _Category-PT-GSASHOP-PAGES: Category: PT\_GSASHOP::PAGES """""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _FE-Users-storage-PID: **FE Users storage PID** ~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **FE Users storage PID** b [plugin.tx\_ptgsashop.feUsersSysfolderPid] .. _Identifier-PID-or-alias-of-the-TYPO3-sysfolder-where-you-ve: Identifier (PID or alias) of the TYPO3 sysfolder where you've ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Article cache storage PID** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article cache storage PID** b [plugin.tx\_ptgsashop.cacheArticlesStoragePid] .. _Identifier-PID-or-alias-of-the-TYPO3-page-sysfolder-where-to-store: Identifier (PID or alias) of the TYPO3 page/sysfolder where to store ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Identifier (PID or alias) of the TYPO3 page/sysfolder where to store cached articles.Range: 0 - **Default:** articlecache .. _Article-image-storage-PID: **Article image storage PID** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article image storage PID** b [plugin.tx\_ptgsashop.articleImageStoragePid] .. _Identifier-PID-or-alias-of-the-TYPO3-page-sysfolder-where-to-store: Identifier (PID or alias) of the TYPO3 page/sysfolder where to store ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Identifier (PID or alias) of the TYPO3 page/sysfolder where to store article images. **Default:** articleimages .. _Order-storage-PID: **Order storage PID** ~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Order storage PID** b [plugin.tx\_ptgsashop.orderStoragePid] .. _Identifier-PID-or-alias-of-the-TYPO3-page-sysfolder-where-to-store: Identifier (PID or alias) of the TYPO3 page/sysfolder where to store ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Identifier (PID or alias) of the TYPO3 page/sysfolder where to store submitted orders. **Default:** order .. _Shopping-cart-page: **Shopping cart page** ~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shopping cart page** b [plugin.tx\_ptgsashop.shoppingcartPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Article single view page** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article single view page** b [plugin.tx\_ptgsashop.articleSingleViewPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Order overview page** ~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Order overview page** b [plugin.tx\_ptgsashop.orderPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Order confirmation page** ~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Order confirmation page** b [plugin.tx\_ptgsashop.orderConfirmPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **FE customer registration page** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **FE customer registration page** b [plugin.tx\_ptgsashop.feUserRegPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **User account page** ~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **User account page** b [plugin.tx\_ptgsashop.userAccountPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **"Terms and conditions" page** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **"Terms and conditions" page** b [plugin.tx\_ptgsashop.termsCondPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Identifier (PID or alias) of the TYPO3 page where you've integrated the "terms and conditions" page. **Default:** termscond .. _Right-of-withdrawal-page: **"Right of withdrawal" page** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **"Right of withdrawal" page** b [plugin.tx\_ptgsashop.withdrawalPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Identifier (PID or alias) of the TYPO3 page where you've integrated the "right of withdrawal" page. **Default:** withdrawal .. _Forgot-password-page-optional: **"Forgot password" page (optional)** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **"Forgot password" page (optional)** b [plugin.tx\_ptgsashop.forgotPwPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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:** .. ###### END~OF~TABLE ###### .. _Category-PT-GSASHOP-GENERAL: Category: PT\_GSASHOP::GENERAL """""""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _Shop-operator-FE-group-ID: **Shop operator FE group ID** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator FE group ID** b [plugin.tx\_ptgsashop.shopOperatorGroupUid] .. _ID-of-the-frontend-usergroup-with-shop-operator-rights-DB-table: ID of the frontend usergroup with shop operator rights (DB table ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **MD5 security check "salt"** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **MD5 security check "salt"** b [plugin.tx\_ptgsashop.md5SecurityCheckSalt] .. _Salt-string-to-use-for-building-an-md5-hash-used-for-security-checks: "Salt" string to use for building an md5 hash used for security checks ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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). :underline:`IMPORTANT` : Change the default setting for security reasons! **Default:** ThisIsTheDefaultSalt .. _Shop-name: **Shop name** ~~~~~~~~~~~~~ .. container:: table-row a **Shop name** b [plugin.tx\_ptgsashop.shopName] .. _Name-of-the-shop-to-be-used-e-g-as-sender-name-for-all-emails-sent: Name of the shop, to be used e.g. as sender name for all emails sent ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **General email sender address** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **General email sender address** b [plugin.tx\_ptgsashop.orderEmailSender] .. _Email-address-to-be-used-as-sender-address-for-all-auto-generated: Email address to be used as sender address for \_all\_ auto-generated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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!). :underline:`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: **Order confirmation email CC** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Order confirmation email CC** b [plugin.tx\_ptgsashop.orderEmailRecipient] .. _Email-recipient-address-comma-separated-list-for-multiple-recipients: Email recipient address (comma-separated list for multiple recipients) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Order confirmation email BCC** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Order confirmation email BCC** b [plugin.tx\_ptgsashop.orderConfirmationEmailBcc] .. _Email-address-comma-separated-list-for-multiple-recipients-for-blind: Email address (comma-separated list for multiple recipients) for blind ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Order confirmation email Reply-To** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Order confirmation email Reply-To** b [plugin.tx\_ptgsashop.orderConfirmationEmailReplyTo] .. _Email-address-for-the-Reply-To-header-of-auto-generated-order: Email address for the Reply-To header of auto-generated order ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Send order conf. email to customer** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: Uncheck if you do not want the final order to be sent as an auto- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Currency code** ~~~~~~~~~~~~~~~~~ .. container:: table-row a **Currency code** b [plugin.tx\_ptgsashop.currencyCode] .. _The-ISO-three-letter-currency-code-specifying-the-used-currency-e-g: The ISO three letter currency code specifying the used currency (e.g. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Use precision prices** ~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Use precision prices** b [plugin.tx\_ptgsashop.usePricesWithMoreThanTwoDecimals] .. _Flag-whether-the-shop-should-use-prices-with-more-than-two-decimals: Flag whether the shop should use prices with more than two decimals ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Use supplier control** ~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Use supplier control** b [plugin.tx\_ptgsashop.useSupplierControl] .. _Check-if-you-want-all-article-purchases-to-be-logged-to-a-database: Check if you want all article purchases to be logged to a database ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Enable XSS security f. article text** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable XSS security f. article text** b [plugin.tx\_ptgsashop.enableXssSecurityForArticleText] .. _Flag-whether-the-shop-should-enable-the-XSS-security-conversion-for: Flag whether the shop should enable the XSS security conversion for ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Enable RTE rendering f.article text** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable RTE rendering f.article text** b [plugin.tx\_ptgsashop.enableRteForArticleText] .. _Flag-whether-the-shop-should-enable-RTE-rendering-for-HTML-output: Flag whether the shop should enable RTE rendering for HTML output ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **"Add to cart" button image file 1** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: Path to the image file to be used for the "Add to cart" button in the ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **"Add to cart" button image file 2** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: Path to the image file to be used for the "Add to cart" button in the ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **"Remove from cart" button img file** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: Path to the image file to be used for the "Remove from cart" button in ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Use automatic invoice booking** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Use automatic invoice booking** b [plugin.tx\_ptgsashop.useAutomaticInvoiceBooking] .. _Flag-whether-the-shop-should-book-invoices-for-all-shops-orders: Flag whether the shop should book invoices for all shops orders ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **"Add to Cart" Action** ~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **"Add to Cart" Action** b [plugin.tx\_ptgsashop.addToCartAction] .. _Action-to-be-executed-after-an-article-has-been-successfully-added-to: Action to be executed after an article has been successfully added to ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Display "Clear all" button for cart** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: Uncheck if you do not want the "Clear all" button to be displayed at ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Enable cart article linking** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable cart article linking** b [plugin.tx\_ptgsashop.displayCartArticleLinks] .. _Flag-whether-articles-in-the-shopping-cart-pi1-should-be-linked-to: Flag whether articles in the shopping cart (pi1) should be linked to ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Display payment sum by default** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Display payment sum by default** b [plugin.tx\_ptgsashop.displayPaymentSumByDefault] .. _Flag-whether-the-payment-sum-for-an-order-should-be-displayed-by: Flag whether the payment sum for an order should be displayed by ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Allow multiple deliveries per order** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Allow multiple deliveries per order** b [plugin.tx\_ptgsashop.allowMultipleDeliveries] .. _Uncheck-if-you-do-not-want-to-allow-multiple-deliveries-per-order-By: Uncheck if you do not want to allow multiple deliveries per order. By ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Allow billing address change** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Allow billing address change** b [plugin.tx\_ptgsashop.allowBillingAddrChange] .. _Check-if-you-do-want-to-allow-the-user-to-change-the-orders-billing: Check if you do want to allow the user to change the orders billing ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Allow shipping address change** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Allow shipping address change** b [plugin.tx\_ptgsashop.allowShippingAddrChange] .. _Uncheck-if-you-do-not-want-to-allow-the-user-to-change-the-shipping: Uncheck if you do not want to allow the user to change the shipping ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Scale price quantity tolerance (%)** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Scale price quantity tolerance (%)** b [plugin.tx\_ptgsashop.scalePriceQtyTolerance] .. _Tolerance-in-percent-integer-for-scale-prices-to-be-added-to-the: Tolerance in percent (integer) for scale prices to be added to the ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Always use customer specific price** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Always use customer specific price** b [plugin.tx\_ptgsashop.custSpecPriceOverridesDefaultPrice] .. _Flag-whether-a-possibly-existing-customer-specific-price-of-an-article: Flag whether a possibly existing customer specific price of an article ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Enable article relations** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable article relations** b [plugin.tx\_ptgsashop.enableArticleRelations] .. _Flag-whether-the-shop-should-use-article-relations-e-g: Flag whether the shop should use article relations (e.g. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Logical "OR" for required articles** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Logical "OR" for required articles** b [plugin.tx\_ptgsashop.artrelReqUseLogicalOr] .. _for-article-relations-only-Flag-whether-the-shop-should-use-the: (for article relations only:) Flag whether the shop should use the ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Enable article delivery date** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable article delivery date** b [plugin.tx\_ptgsashop.enableArticleDeliveryDate] .. _Flag-whether-the-shop-should-use-delivery-dates-for-articles: Flag whether the shop should use delivery dates for articles ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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 .. ###### END~OF~TABLE ###### .. _Category-PT-GSASHOP-GSA-SETTINGS: Category: PT\_GSASHOP::GSA SETTINGS """"""""""""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _GSA-article-description-source: **GSA article description source** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA article description source** b [plugin.tx\_ptgsashop.articleDescriptionSourceField] .. _Source-field-from-GSA-database-table-ARTIKEL-to-use-for-the: Source field from GSA database table "ARTIKEL" to use for the ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **GSA tax code for dispatch cost** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: Code of the GSA-DB record to use for the chosen dispatch type's cost ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Virtual table for OpNr** ~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Virtual table for OpNr** b [plugin.tx\_ptgsashop.gsaVirtualTableOpNr] .. _Name-of-the-virtual-table-to-use-in-GSA-database-table-SYNEWNUMBER-for: Name of the virtual table to use in GSA database table SYNEWNUMBER for ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Starting value of the virtual OpNr** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Starting value of the virtual OpNr** b [plugin.tx\_ptgsashop.gsaVirtualOpNrMin] .. _Minimum-value-to-start-with-in-virtual-table-for-OpNr-see-option: Minimum value to start with in virtual table for OpNr (see option ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Create delivery receipts** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Create delivery receipts** b [plugin.tx\_ptgsashop.gsaCreateDeliveryReceipt] .. _Flag-whether-the-shop-should-create-GSA-delivery-receipt-German: Flag whether the shop should create GSA delivery receipt (German: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **GSA dispatch - cost free** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA dispatch - cost free** b [plugin.tx\_ptgsashop.gsaDispatchTypeCostFree] .. _Name-of-the-GSA-dispatch-type-German-Versandart-to-use-for: Name of the GSA dispatch type (German: "Versandart") to use for ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **GSA dispatch - inland net** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA dispatch - inland net** b [plugin.tx\_ptgsashop.gsaDispatchTypeInlandNet] .. _Name-of-the-GSA-dispatch-type-German-Versandart-to-use-for-net: Name of the GSA dispatch type (German: "Versandart") to use for net ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **GSA dispatch - inland gross** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA dispatch - inland gross** b [plugin.tx\_ptgsashop.gsaDispatchTypeInlandGross] .. _Name-of-the-GSA-dispatch-type-German-Versandart-to-use-for-gross: Name of the GSA dispatch type (German: "Versandart") to use for gross ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **GSA dispatch - abroad net** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA dispatch - abroad net** b [plugin.tx\_ptgsashop.gsaDispatchTypeAbroadNet] .. _Name-of-the-GSA-dispatch-type-German-Versandart-to-use-for-net: Name of the GSA dispatch type (German: "Versandart") to use for net ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **GSA dispatch - abroad gross** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA dispatch - abroad gross** b [plugin.tx\_ptgsashop.gsaDispatchTypeAbroadGross] .. _Name-of-the-GSA-dispatch-type-German-Versandart-to-use-for-gross: Name of the GSA dispatch type (German: "Versandart") to use for gross ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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) .. ###### END~OF~TABLE ###### .. _Category-PT-GSASHOP-PAYMENT: Category: PT\_GSASHOP::PAYMENT """""""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _CC-payment-page: **CC payment page** ~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **CC payment page** b [plugin.tx\_ptgsashop.paymentPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Enable extended payment choice** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable extended payment choice** b [plugin.tx\_ptgsashop.enableExtendedPaymentChoice] .. _Flag-whether-the-shop-should-offer-the-extended-payment-choice-of-the: Flag whether the shop should offer the extended payment choice of the ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Enable simple CC payment choice** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable simple CC payment choice** b [plugin.tx\_ptgsashop.enableSimpleCcPaymentChoice] .. _This-setting-has-no-effect-if-the-enableExtendedPaymentChoice-option: This setting has no effect if the "enableExtendedPaymentChoice" option ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **ePayment result email recipient** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **ePayment result email recipient** b [plugin.tx\_ptgsashop.epaymentResultRecipient] .. _Email-recipient-address-comma-separated-list-for-multiple-recipients: Email recipient address (comma-separated list for multiple recipients) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Shop operator -- name** ~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator -- name** b [plugin.tx\_ptgsashop.shopOperatorName] .. _Name-of-the-shop-operator-e-g-company-name-This-is-required-for: Name of the shop operator (e.g. company name). This is required for ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Shop operator -- email** ~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator -- email** b [plugin.tx\_ptgsashop.shopOperatorEmail] .. _Email-address-of-the-shop-operator-This-is-required-for-the-usage-of: Email address of the shop operator. This is required for the usage of ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Shop operator -- street and no.** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator -- street and no.** b [plugin.tx\_ptgsashop.shopOperatorStreetNo] .. _Street-and-house-number-of-the-shop-operator-s-address-This-is: Street and house number of the shop operator's address. This is ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Shop operator -- zip** ~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator -- zip** b [plugin.tx\_ptgsashop.shopOperatorZip] .. _Zip-code-of-the-shop-operator-s-address-This-is-required-for-the: Zip code of the shop operator's address. This is required for the ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Shop operator -- city** ~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator -- city** b [plugin.tx\_ptgsashop.shopOperatorCity] .. _City-of-the-shop-operator-s-address-This-is-required-for-the-usage-of: City of the shop operator's address. This is required for the usage of ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Shop operator -- country code** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator -- country code** b [plugin.tx\_ptgsashop.shopOperatorCountryCode] .. _ISO2-country-code-ISO-3166-of-the-shop-operator-s-address-This-is: ISO2 country code (ISO-3166) of the shop operator's address. This is ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Shop operator bank -- bank name** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator bank -- bank name** b [plugin.tx\_ptgsashop.shopOperatorBankName] .. _Bank-name-of-the-shop-operator-s-bank: Bank name of the shop operator's bank. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Bank name of the shop operator's bank. **Default:** .. _Shop-operator-bank-bank-code: **Shop operator bank -- bank code** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator bank -- bank code** b [plugin.tx\_ptgsashop.shopOperatorBankCode] .. _Bank-code-of-the-shop-operator-s-bank: Bank code of the shop operator's bank. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Bank code of the shop operator's bank. **Default:** .. _Shop-operator-bank-account-numbe: **Shop operator bank -- account numbe...** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator bank -- account numbe...** b [plugin.tx\_ptgsashop.shopOperatorBankAccountNo] .. _Account-number-of-the-shop-operator-s-bank-account: Account number of the shop operator's bank account. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Account number of the shop operator's bank account. **Default:** .. _Shop-operator-bank-bic: **Shop operator bank -- bic** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator bank -- bic** b [plugin.tx\_ptgsashop.shopOperatorBankBic] .. _Bic-code-of-the-shop-operator-s-bank: Bic code of the shop operator's bank. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Bic code of the shop operator's bank. **Default:** .. _Shop-operator-bank-iban: **Shop operator bank -- iban** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shop operator bank -- iban** b [plugin.tx\_ptgsashop.shopOperatorBankIban] .. _Iban-code-of-the-shop-operator-s-bank: Iban code of the shop operator's bank. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Iban code of the shop operator's bank. **Default:** .. ###### END~OF~TABLE ###### .. _Category-PT-GSASHOP-SMARTY-TEMPLATES: Category: PT\_GSASHOP::SMARTY TEMPLATES """"""""""""""""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _Shopping-cart-display-template: **Shopping cart display template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Shopping cart display template** b [plugin.tx\_ptgsashop.templateFileCart] .. _The-template-file-to-be-used-for-the-shopping-cart-display-of-pi1: The template file to be used for the shopping cart display of pi1 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Cart checkout login template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Cart checkout login template** b [plugin.tx\_ptgsashop.templateFileCheckoutLogin] .. _The-template-file-to-be-used-for-the-login-for-non-logged-in-users: The template file to be used for the login for non-logged-in users ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Article confirmation template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article confirmation template** b [plugin.tx\_ptgsashop.templateFileArticleConfirmation] .. _The-template-file-to-be-used-for-the-article-relations-confirmation: The template file to be used for the article relations confirmation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Article box template** ~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article box template** b [plugin.tx\_ptgsashop.templateFileArticleBox] .. _The-template-file-to-be-used-for-the-article-box-display-of-pi2: The template file to be used for the article box display of pi2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Order overview template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Order overview template** b [plugin.tx\_ptgsashop.templateFileOrderOverview] .. _The-template-file-to-be-used-for-the-single-order-overview-display-of: The template file to be used for the single order overview display of ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Article distribution template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article distribution template** b [plugin.tx\_ptgsashop.templateFileArticleDistribution] .. _The-template-file-to-be-used-for-the-article-distribution-GUI-of-pi3: The template file to be used for the article distribution GUI of pi3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Final order mail template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: The template file to be used for the mailing of an final order of pi3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Final order mail template charset** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: The character set (e.g. 'utf-8', 'iso-8859-15', 'iso-8859-1') used for ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Template for order errors** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Template for order errors** b [plugin.tx\_ptgsashop.templateFileOrderError] .. _The-template-file-to-be-used-for-errors-in-the-ordering-process-of-pi3: The template file to be used for errors in the ordering process of pi3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Template for order list** ~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Template for order list** b [plugin.tx\_ptgsashop.templateFileOrdersList] .. _The-template-file-to-be-used-for-the-order-list-order: The template file to be used for the order list (order ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Template for order single view** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: The template file to be used for the view of a single order (order ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Template for a pi4 notice** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: The template file to be used for a notice page of the order archive ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Article single view template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article single view template** b [plugin.tx\_ptgsashop.templateFileArticleSingleView] .. _The-template-file-to-be-used-for-the-article-single-view-display-of: The template file to be used for the article single view display of ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **ePayment Return template** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **ePayment Return template** b [plugin.tx\_ptgsashop.templateFileEpaymentReturn] .. _The-template-file-to-be-used-for-the-epayment-returns-of-pi6-template: The template file to be used for the epayment returns of pi6 (template ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Cart box template** ~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Cart box template** b [plugin.tx\_ptgsashop.templateFileCartBox] .. _The-template-file-to-be-used-for-the-mini-display-of-the-shopping-cart: The template file to be used for the mini display of the shopping cart ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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 .. ###### END~OF~TABLE ###### .. _Category-PT-GSASHOP-ARTICLE-DISPLAY: Category: PT\_GSASHOP::ARTICLE DISPLAY """""""""""""""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _Name-Description: **Name/Description** ~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Name/Description** b [plugin.tx\_ptgsashop.articleDisplayDescription] .. _Default-display-of-article-name-description-at-article-display: Default display of article name/description at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of article name/description at article display (description source is configurable in GSA settings: articleDescriptionSourceField) **Default:** 1 .. _Article-Number: **Article Number** ~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article Number** b [plugin.tx\_ptgsashop.articleDisplayArticleno] .. _Default-display-of-GSA-article-number-at-article-display: Default display of GSA article number at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of GSA article number at article display **Default:** 1 .. _Price: **Price** ~~~~~~~~~ .. container:: table-row a **Price** b [plugin.tx\_ptgsashop.articleDisplayPrice] .. _Default-display-of-article-price-at-article-display: Default display of article price at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of article price at article display **Default:** 1 .. _Quantity: **Quantity** ~~~~~~~~~~~~ .. container:: table-row a **Quantity** b [plugin.tx\_ptgsashop.articleDisplayCartqty] .. _Default-display-of-article-quantity-in-shopping-cart-at-article: Default display of article quantity in shopping cart at article ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of article quantity in shopping cart at article display **Default:** 1 .. _Remove-button: **Remove button** ~~~~~~~~~~~~~~~~~ .. container:: table-row a **Remove button** b [plugin.tx\_ptgsashop.articleDisplayRemovebutton] .. _Default-display-of-button-to-remove-article-from-shopping-cart-at: Default display of button to remove article from shopping cart at ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of button to remove article from shopping cart at article display **Default:** 1 .. _Match: **Match** ~~~~~~~~~ .. container:: table-row a **Match** b [plugin.tx\_ptgsashop.articleDisplayMatch1] .. _Default-display-of-GSA-match-ARTIKEL-MATCH-at-article-display: Default display of GSA match (ARTIKEL.MATCH) at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of GSA match (ARTIKEL.MATCH) at article display **Default:** 0 .. _GSA-Description: **GSA Description** ~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA Description** b [plugin.tx\_ptgsashop.articleDisplayMatch2] .. _Default-display-of-GSA-description-ARTIKEL-MATCH2-at-article-display: Default display of GSA description (ARTIKEL.MATCH2) at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of GSA description (ARTIKEL.MATCH2) at article display **Default:** 1 .. _GSA-default-article-text: **GSA default article text** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA default article text** b [plugin.tx\_ptgsashop.articleDisplayDeftext] .. _Default-display-of-GSA-default-article-text-ARTIKEL-ZUSTEXT1-at: Default display of GSA default article text (ARTIKEL.ZUSTEXT1) at ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of GSA default article text (ARTIKEL.ZUSTEXT1) at article display **Default:** 1 .. _GSA-alternative-article-text: **GSA alternative article text** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **GSA alternative article text** b [plugin.tx\_ptgsashop.articleDisplayAlttext] .. _Default-display-of-GSA-alternative-article-text-ARTIKEL-ZUSTEXT2-at: Default display of GSA alternative article text (ARTIKEL.ZUSTEXT2) at ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of GSA alternative article text (ARTIKEL.ZUSTEXT2) at article display **Default:** 0 .. _Article-images: **Article images** ~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article images** b [plugin.tx\_ptgsashop.articleDisplayImg] .. _Default-display-of-article-images-at-article-display: Default display of article images at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of article images at article display **Default:** 1 .. _Cart-link: **Cart link** ~~~~~~~~~~~~~ .. container:: table-row a **Cart link** b [plugin.tx\_ptgsashop.articleDisplayCartlink] .. _Default-display-of-cart-link-at-article-display: Default display of cart link at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of cart link at article display **Default:** 1 .. _Article-box-width: **Article box width** ~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Article box width** b [plugin.tx\_ptgsashop.articleDisplayBoxdefault] .. _Default-display-of-article-box-with-default-width-at-article-display: Default display of article box with default width at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of article box with default width at article display **Default:** 1 .. _Price-scales: **Price scales** ~~~~~~~~~~~~~~~~ .. container:: table-row a **Price scales** b [plugin.tx\_ptgsashop.articleDisplayPricescales] .. _Default-display-of-price-scales-at-article-display: Default display of price scales at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of price scales at article display **Default:** 0 .. _Link-to-single-view: **Link to single view** ~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Link to single view** b [plugin.tx\_ptgsashop.articleDisplayUrl] .. _Link-article-description-to-article-single-view-page-at-article: Link article description to article single view page at article ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Link article description to article single view page at article display **Default:** 1 .. _Order-button: **Order button** ~~~~~~~~~~~~~~~~ .. container:: table-row a **Order button** b [plugin.tx\_ptgsashop.articleDisplayOrderbutton] .. _Default-display-of-order-button-at-article-display: Default display of order button at article display ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Default display of order button at article display **Default:** 1 .. ###### END~OF~TABLE ###### .. _Category-PT-GSASHOP-CARTBOX: Category: PT\_GSASHOP::CARTBOX """""""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _CartBox-header-display: **CartBox header display** ~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **CartBox header display** b [plugin.tx\_ptgsashop.cartboxDisplayHeader] .. _Flag-whether-the-cart-box-plugin-pi7-should-display-a-linked-to-cart: Flag whether the cart box plugin (pi7) should display a linked-to-cart ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Flag whether the cart box plugin (pi7) should display a linked-to-cart box header. **Default:** 1 .. _CartBox-use-image-header: **CartBox use image header** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **CartBox use image header** b [plugin.tx\_ptgsashop.cartboxUseImageHeader] .. _Flag-whether-the-cart-box-plugin-pi7-should-use-an-image-header-or-a: Flag whether the cart box plugin (pi7) should use an image header or a ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Flag whether the cart box plugin (pi7) should use an image header or a text link header (default). **Default:** 0 .. _CartBox-positions-display: **CartBox positions display** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **CartBox positions display** b [plugin.tx\_ptgsashop.cartboxDisplayPositions] .. _Flag-whether-the-cart-box-plugin-pi7-should-display-a-positions: Flag whether the cart box plugin (pi7) should display a positions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Flag whether the cart box plugin (pi7) should display a positions line. **Default:** 1 .. _CartBox-sum-display: **CartBox sum display** ~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **CartBox sum display** b [plugin.tx\_ptgsashop.cartboxDisplayCartSum] .. _Flag-whether-the-cart-box-plugin-pi7-should-display-a-sum-total: Flag whether the cart box plugin (pi7) should display a sum total ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Flag whether the cart box plugin (pi7) should display a sum total line. **Default:** 1 .. _CartBox-clear-cart-display: **CartBox clear cart display** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **CartBox clear cart display** b [plugin.tx\_ptgsashop.cartboxDisplayClearCartButton] .. _Flag-whether-the-cart-box-plugin-pi7-should-display-a-clear-cart: Flag whether the cart box plugin (pi7) should display a clear cart ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a Flag whether the cart box plugin (pi7) should display a clear cart button. **Default:** 1 .. ###### END~OF~TABLE ###### .. _Category-PT-GSASHOP-WORKFLOW: Category: PT\_GSASHOP::WORKFLOW """"""""""""""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _Enable-order-workflow: **Enable order workflow** ~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Enable order workflow** b [plugin.tx\_ptgsashop.enableOrderWorkflow] .. _Enables-the-default-order-workflow-of-this-extension-after-sending-an: Enables the default order workflow of this extension after sending an ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Initial workflow page** ~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Initial workflow page** b [plugin.tx\_ptgsashop.workflowPage] .. _Identifier-PID-or-alias-of-the-TYPO3-page-where-you-ve-integrated: Identifier (PID or alias) of the TYPO3 page where you've integrated ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Workflow extension key** ~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Workflow extension key** b [plugin.tx\_ptgsashop.workflowExtensionKey] .. _Name-of-the-extension-key-that-contains-the-workflow-status: Name of the extension key that contains the workflow status ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Workflow initial status code** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Workflow initial status code** b [plugin.tx\_ptgsashop.workflowInitialStatusCode] .. _Status-code-of-the-first-available-workflow-status-this-status-code: Status code of the first available workflow status - this status code ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Workflow finished status code** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row a **Workflow finished status code** b [plugin.tx\_ptgsashop.workflowFinishStatusCode] .. _Status-code-to-set-after-an-orders-workflow-has-been-finished-this: Status code to set after an orders workflow has been finished - this ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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 .. ###### END~OF~TABLE ###### .. _Extension-Configuration-with-TypoScript: 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: Reference (TypoScript) """""""""""""""""""""" .. ### BEGIN~OF~TABLE ### .. _display-description: display\_description ~~~~~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_description Data type boolean Description Display article name/description (source is configurable in Constant Editor) Default 1 .. _display-articleno: display\_articleno ~~~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_articleno Data type boolean Description Display GSA article number Default 1 .. _display-price: display\_price ~~~~~~~~~~~~~~ .. container:: table-row Property display\_price Data type boolean Description Display article price Default 1 .. _display-cartqty: display\_cartqty ~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_cartqty Data type boolean Description Display article quantity in shopping cart Default 1 .. _display-removebutton: display\_removebutton ~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: display\_description ~~~~~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_description Data type boolean Description Display article price Default 1 .. _display-match1: display\_match1 ~~~~~~~~~~~~~~~ .. container:: table-row Property display\_match1 Data type boolean Description Display GSA match (ARTIKEL.MATCH) Default 0 .. _display-match2: display\_match2 ~~~~~~~~~~~~~~~ .. container:: table-row Property display\_match2 Data type boolean Description Display GSA description (ARTIKEL.MATCH2) Default 1 .. _display-deftext: display\_deftext ~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_deftext Data type boolean Description Display article priceDisplay GSA default article text (ARTIKEL.ZUSTEXT1) Default 1 .. _display-alttext: display\_alttext ~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_alttext Data type boolean Description Display GSA alternative article text (ARTIKEL.ZUSTEXT2) Default 0 .. _display-img: display\_img ~~~~~~~~~~~~ .. container:: table-row Property display\_img Data type boolean Description Display GSA article image Default 1 .. _display-cartlink: display\_cartlink ~~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_cartlink Data type boolean Description Display link to shopping cart page Default 1 .. _display-boxdefault: display\_boxdefault ~~~~~~~~~~~~~~~~~~~ .. container:: table-row Property display\_boxdefault Data type boolean Description Display article box with default width Default 1 .. _display-pricescales: display\_pricescales ~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: display\_url ~~~~~~~~~~~~ .. container:: table-row Property display\_url Data type boolean Description Link description to article single view Default 1 .. _imageConf: imageConf ~~~~~~~~~ .. container:: table-row 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 = width = 600m height = 600m # title = pt_gsashop JSwindow.expand = 0,0 wrap = | } } Default see “Description” on the left .. ###### END~OF~TABLE ###### [tsref:plugin.tx\_ptgsashop\_pi2] .. _Hook-usage: 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: 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: 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: 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: 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. .. ### BEGIN~OF~TABLE ### .. _Label-imTYPO3-BE: Label imTYPO3 BE ~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Status Code** ~~~~~~~~~~~~~~~ .. container:: table-row 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: **Status Name** ~~~~~~~~~~~~~~~ .. container:: table-row 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: **Beschreibung** ~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Berechtigte FE Gruppen fuer Anzeige** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Berechtigte FE Gruppen fuer Benutzung** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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-fr-diesen-Status-aktualisieren-dynamic-order: **Bestellung für diesen Status aktualisieren (dynamic order ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Bedingungs-Methode** ~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Autorisierungs-Methode** ~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Aktions-Methode bei Freigabe** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Aktions-Methode bei Ablehnung** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Aktions-Methode bei automatisches Fortschreiten** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Aktions-Methode bei automatischem Anhalten** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Folgestatuscode bei Freigabe** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Folgestatuscode bei Ablehnung** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Folgestatuscode bei automat. Fortschreiten** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Text-Label fuer Auswahl-Frage** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Text-Label fuer Freigabe** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Text-Label fuer Ablehnung** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **Text-Label fuer Bestaetigung der Freigabe** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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-Besttigung-der-Ablehnung: **Text-Label fuer Bestätigung der Ablehnung** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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) .. ###### END~OF~TABLE ###### [Workflow-Status-Konfiguration im Backend / DB: tx\_ptgsashop\_workflow] .. _Erweiterte-Workflow-Konfiguration-ber-Konfigurationsklassen: 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\_\_wfsConfig\_* folgen, wobei 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: .. ### BEGIN~OF~TABLE ### .. _returnConditionCheck: **returnConditionCheck()** ~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **returnPermissionCheck()** ~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **execApprovalAction()** ~~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **execDenialAction()** ~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **execAdvanceAction()** ~~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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: **execHaltAction()** ~~~~~~~~~~~~~~~~~~~~ .. container:: table-row 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 .. ###### END~OF~TABLE ###### [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. :underline:`**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: 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: 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: Changelog --------- Note: Changes marked as “:underline:`**IMPORTANT**` ” contain changes of the default behaviour or the dependencies – this may require user action when updating the extension! .. _generated: ((generated)) ^^^^^^^^^^^^^ .. _v1-0-1: v1.0.1 """""" updated chapter “GSA extension overview” of this manual, fixed some documentation errors .. _v1-0-0: 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: 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: 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 :underline:`**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! - :underline:`**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() - :underline:`**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 - :underline:`**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" - :underline:`**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! - :underline:`**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: - :underline:`**IMPORTANT**` : extension “pt\_mail” has to installed on your server (seedependency update note above) - :underline:`**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" - :underline:`**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! - :underline:`**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 - :underline:`**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 – :underline:`**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: 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) – :underline:`**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 - :underline:`**IMPORTANT**` : added “Payment sum” display in default templates for order overview and order confirmation email - :underline:`**IMPORTANT**` : added cookie check in tx\_ptgsashop\_pi1::main() and tx\_ptgsashop\_pi2::exec\_addArticleToCart() - :underline:`**IMPORTANT**` : Bugfix in ext\_tables.sql: added missing database field "tx\_ptgsashop\_orders.applSpecDataClass" - this requires a database update in the Extension Manager - :underline:`**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: 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: 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: 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 :underline:`**please read the changelog notes and instructions carefully when updating an existing instance of this extension**` : - :underline:`**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.) - :underline:`**IMPORTANT**` : these additions require a database update in the extension manager after updating the extension - :underline:`**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 - :underline:`**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 - :underline:`**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)”! - :underline:`**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 - :underline:`**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 - :underline:`**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: 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. :underline:`**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: v0.10.0 """"""" - backend configuration of plugin “Article Display” (pi2) extended and changed to flexform :underline:`**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: 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: 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: 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: v0.9.4 """""" - internal change of processing 4 decimal places including the complete conversion of all float calculations to BCMath functions - :underline:`**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: 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: 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: 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| .. ######CUTTER_MARK_IMAGES###### .. |img-1| image:: img-1.png .. :align: left .. :border: 0 .. :height: 375 .. :id: Grafik1 .. :name: Grafik1 .. :width: 669 .. |img-2| image:: img-2.png .. :align: left .. :border: 0 .. :height: 460 .. :id: Grafik2 .. :name: Grafik2 .. :width: 437 .. |img-3| image:: img-3.png .. :align: left .. :border: 0 .. :height: 371 .. :id: Grafik3 .. :name: Grafik3 .. :width: 602 .. |img-4| image:: img-4.png .. :align: left .. :border: 0 .. :height: 332 .. :id: Grafik4 .. :name: Grafik4 .. :width: 578 .. |img-5| image:: img-5.png .. :align: left .. :border: 0 .. :height: 413 .. :id: Grafik6 .. :name: Grafik6 .. :width: 593 .. |img-6| image:: img-6.png .. :align: left .. :border: 0 .. :height: 811 .. :id: Grafik5 .. :name: Grafik5 .. :width: 355 .. |img-7| image:: img-7.png .. :align: left .. :border: 0 .. :height: 515 .. :id: Grafik7 .. :name: Grafik7 .. :width: 259 .. |img-8| image:: img-8.png .. :align: left .. :border: 0 .. :height: 180 .. :id: Grafik8 .. :name: Grafik8 .. :width: 146 .. |img-9| image:: img-9.png .. :align: left .. :border: 0 .. :height: 151 .. :id: Grafik14 .. :name: Grafik14 .. :width: 405 .. |img-10| image:: img-10.png .. :align: left .. :border: 0 .. :height: 162 .. :id: Grafik9 .. :name: Grafik9 .. :width: 357 .. |img-11| image:: img-11.png .. :align: left .. :border: 0 .. :height: 354 .. :id: Grafik15 .. :name: Grafik15 .. :width: 534 .. |img-12| image:: img-12.png .. :align: left .. :border: 0 .. :height: 366 .. :id: Grafik10 .. :name: Grafik10 .. :width: 438 .. |img-13| image:: img-13.png .. :align: left .. :border: 0 .. :height: 148 .. :id: Grafik11 .. :name: Grafik11 .. :width: 508 .. |img-14| image:: img-14.png .. :align: left .. :border: 0 .. :height: 294 .. :id: Grafik13 .. :name: Grafik13 .. :width: 669 .. |img-15| image:: img-15.png .. :align: left .. :border: 0 .. :height: 587 .. :id: Grafik12 .. :name: Grafik12 .. :width: 449 .. |img-16| image:: img-16.png .. :align: left .. :border: 0 .. :height: 29 .. :id: graphics1 .. :name: graphics1 .. :width: 105