Login / Status
developer.Resource
Home . Documentation . Document Library . Extension Manuals
Sponsors
hosted by punkt.deTYPO3 and Open Source MagazineAOE Media

1.4. Installation

To install the extension simply download it from the TYPO3 Extension Repository and install it via the Extension Manager. When you are installing the extension it requires to create the categories and properties tables and some relation tables and allows you to setup some configuration options.

Some of the options MUST get set to a valid value (sysfolder-page in the pagetree) – some are only optional. Below is a list of the confguration options.

Required options are:

  1. TCA mode: Must get set currently. KB Shop is intended to also work with flexform storage instead of traditional TCA tables (real database tables) but this is currently not fully implemented. So always let this checkbox stay checked.

  2. Category Folders: This must be set to a comma separated list of folders which contain properties.

  3. Property Folders: This must be set at least to the UID of one single page which contains the properties. It is currently not possible to distribute properties amongst different Pages (altough they can be contained in subpages of the given folder – in this case add them AFTER the “Base Page” separated with comma)

Configuration variable

Type

Description

TCAmode

boolean

When this get's set (default) the extension operates in TCA mode. Which means all properties are generated as “real” fields in the tables and not only as XML field in a Flexform.

Currently only the TCA mode works as the work on Flexform mode has been delayed. Flexforms are not that good for searching and ordering the records after their values cause you would have to extract the values to order after from the XML first.

dontCache

boolean

When this option get's set no caching of the generated TCA happens. When you have a large configuration this really slows down work and you should of no course ever set it in production environments as it really causes huge load to regenerate the TCA on each page request either in the BE or the FE.

categoryFolders

comma-list

This is a comma separated list of Page UIDs which can contain category records. Those UIDs are checked when generating all tables (Only all tables can get generated at once).

propertyFolders

comma-list

This is a comma separated list of UIDs of pages containing all available properties. The first page must be the “Base Page” for all properties. This page may have subpages which should get listed and get checked for properties under special circumstances but it is not possible to have two different “Base Pages” pages with different properties.

fieldPrefix

string

This get's used as prefix to all fields in the database. If you do not set it “kbs_” get's used as field prefix for the fields defined by properties but you can simply insert a shortname for your current project for example. Please note that this value will be directly used in SQL.

configExtension

string

This is the extension key of an extension which act's as a container for the generated ext_tables.php, ext_tables.sql, and similar files. This is nice to have because when you update the main kb_shop extension the current configuration will not get lost (altough it would get regenerated on the next site hit from the table/property configuration stored in DB).

It is just easier to have those quite often chanign files out of the main shop-extension directory.

The extenion itself doesn't need to contain anything. You can simply create a completely empty extension with the kickstarter and insert it's extension key here – a possible candiate for such an extension is the “nothing” extension – which also has a sense now.

listItems

integer

The number of elements/records which shall get shown in List mode. This is the value which get's used when multiple tables are shown in List view.

singleListItems

integer

The number of elements/records which shall get shown in List mode when only a single table is shown because you clicked on one of the Table-Field names or the Table-Title itself.