diff --git a/Documentation/Store.rst b/Documentation/Store.rst index e90a532818be5662cf2981399960fa19dfdb31b1..e65a69ccd39d360289a5a849d91f9a507a814c4f 100644 --- a/Documentation/Store.rst +++ b/Documentation/Store.rst @@ -334,6 +334,9 @@ QFQ values +-------------------+-------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | mimeType | FE *upload* | Mime type of the uploaded file. | +-------------------+-------------+--------------------------------------------------------------------------------------------------------------------------------------------+ +| indexData | Form / | By default value of `Settings > Extenions > QFQ > Database > indexData`. | +| | Report | | ++-------------------+-------------+--------------------------------------------------------------------------------------------------------------------------------------------+ .. _`RANDOM`: diff --git a/extension/Classes/Core/Constants.php b/extension/Classes/Core/Constants.php index b32f82b3faa52895dbe154e9af265a4c6b04c04f..9e2391384addb5d83421952ffa236985021c12c7 100644 --- a/extension/Classes/Core/Constants.php +++ b/extension/Classes/Core/Constants.php @@ -2090,6 +2090,7 @@ const TOKEN_FORM = CLIENT_FORM; const TOKEN_RECORD_ID = CLIENT_RECORD_ID; const TOKEN_DEBUG_BODYTEXT = TYPO3_DEBUG_SHOW_BODY_TEXT; const TOKEN_DB_INDEX = F_DB_INDEX; +// Keywords parsed from QFQ Report code will be converted to LC. Most of the keywords do not have camelcase (=already LC) >> No LC version required. const TOKEN_DB_INDEX_LC = 'dbindex'; const TOKEN_CONTENT = 'content'; const TOKEN_REPORT_FILE = 'file'; diff --git a/extension/Classes/Core/Report/Report.php b/extension/Classes/Core/Report/Report.php index 2862061b11cb7ac8a735a91834e4e6ee4c920f84..224adf58d9347ce5bf383caf5db3a57f8a707c07 100644 --- a/extension/Classes/Core/Report/Report.php +++ b/extension/Classes/Core/Report/Report.php @@ -659,6 +659,8 @@ class Report { $full_super_level = ''; } + $this->store->setVar(SYSTEM_DB_INDEX_DATA, $this->dbIndexData, STORE_VAR); + //condition1: indexArray //condition2: full_level == Superlevel (but at the length of the Superlevel) while ($counter < count($this->indexArray) && $full_super_level == substr($fullLevel, 0, strlen($full_super_level))) { @@ -694,6 +696,7 @@ class Report { $dbIndexDataLast = $this->dbIndexData; if (($this->frArray[$fullLevel . "." . TOKEN_DB_INDEX_LC] ?? '') != '') { $this->dbIndexData = $this->evaluate->parse($this->frArray[$fullLevel . "." . TOKEN_DB_INDEX_LC]); + $this->store->setVar(SYSTEM_DB_INDEX_DATA, $this->dbIndexData, STORE_VAR); } if (!isset($this->dbArr[$this->dbIndexData])) { @@ -914,7 +917,11 @@ class Report { $fullLevel = ''; } - $this->dbIndexData = $dbIndexDataLast; + if($this->dbIndexData != $dbIndexDataLast){ + $this->dbIndexData = $dbIndexDataLast; + $this->store->setVar(SYSTEM_DB_INDEX_DATA, $this->dbIndexData, STORE_VAR); + } + } return $content; }