Newer
Older
Notes / Best Practices for Coding
=================================
General
=======
* When qfq starts, it looks for the formname at:
1. Typo3 Bodytext Element,
2. For the 'SIP' ($_GET['s'])
3. $_GET variables 'form' and 'r' (=recordId) - the parameter 'form' has to be allowed in 'Permit URL Parameter'
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
* The active formname is stored in $this->store->setVar(SYSTEM_FORM, $formName, STORE_SYSTEM);
* In QuickFormQuery.php the whole Form will be copied to $this->formSpec and depending on further processing, the elements are
available in $this->feNative and $this->feAction.
* The Form specificaton (table form) will be evaluated after loading.
* The FormElement specification will be evaluated later on in BuildForm*.php
* Get the recent SIP, Formname, RecordId with:
[src] $this->store->getVar('form', STORE_SIP), or
[src] $this->store->getStore(STORE_SIP)
* Check Contstants.php for known Store members
Debug / Log / Errormessages
===========================
* Before firing a SQL or doing processing of an FormElement, set some debugging / error variables:
[src] $this->store->setVar(SYSTEM_SQL_RAW, STORE_SYSTEM)
* Available fields:
<code>
SYSTEM_SQL_RAW
SYSTEM_SQL_FINAL
SYSTEM_SQL_COUNT
SYSTEM_SQL_PARAM_ARRAY
SYSTEM_FORM = CLIENT_FORM; // '<formName> / <formId>'
SYSTEM_FORM_ELEMENT = 'formElement'; // '<formElementName> / <formElementeId>'
SYSTEM_FORM_ELEMENT_COLUMN = 'formElementColumn'; // '<columnname of current processed formElement>'
</code>
Stores
======
* Retrieve 'get' or 'post' variables by:
[src] $values = $this->store->getStore(STORE_CLIENT)
Primary Table
=============
* For the primary table all informations are available in STORE_TABLE_DEFAULT and STORE_TABLE_COLUMN_TYPES.
* Get all columns of the primary table by
[src] array_keys($this->getStore(STORE_TABLE_COLUMN_TYPES))
* Get the recent record in STORE_RECORD and the parent record (multiforms) in STORE_PARENT_RECORD.
Typo3
=====
* $GLOBALS["TSFE"]->id current Page
* $GLOBALS["TSFE"]->fe_user->user["uid"] fe_user_uid
* https://wiki.typo3.org/Extbase_HowTos
* Old: $this->cObj->data['bodytext']
* New:
$contentObject = $this->configurationManager->getContentObject();
$configuration = $contentObject->data['bodytext'];
* Verzeichnisstruktur Extension: https://docs.typo3.org/typo3cms/CoreApiReference/ExtensionArchitecture/FilesAndLocations/Index.html
* http://api.typo3.org/
* http://api.typo3.org/typo3cms/62/html/index.html
* https://docs.typo3.org/typo3cms/CoreApiReference/Introduction/Index.html