QueryGenerator
Class used in module tools/dbint (advanced search) and which may hold code specific for that module
This class is a specific implementation for the lowlevel extension and is not part of the TYPO3's Core API.
Table of Contents
Properties
- $comp_offsets : array<string|int, mixed>
- $compSQL : array<string|int, mixed>
- $enablePrefix : bool
- $enableQueryParts : bool
- $extFieldLists : array<string|int, mixed>
- $fieldList : string
- Field list
- $fieldName : string
- $fields : array<string|int, mixed>
- Array of the fields possible
- $formName : string
- $hookArray : array<string|int, mixed>
- $iconFactory : IconFactory
- $lang : array<string|int, mixed>
- $menuItems : array<string|int, mixed>
- $moduleName : string
- $name : string
- Form data name prefix
- $noDownloadB : int
- $queryConfig : array<string|int, mixed>
- The query config
- $settings : array<string|int, mixed>
- $showFieldAndTableNames : bool
- If the current user is an admin and $GLOBALS['TYPO3_CONF_VARS']['BE']['debug'] is set to true, the names of fields and tables are displayed.
- $storeList : string
- $table : string
- Table for the query
- $tableArray : array<string|int, mixed>
Methods
- __construct() : mixed
- form() : string
- Get form
- queryMaker() : string
- Query marker
- search() : string
- Search
- setFormName() : mixed
- Sets the current name of the input form.
- addToStoreQueryConfigs() : array<string|int, mixed>
- Add to store query configs
- cleanInputVal() : string|int|float|null
- Clean input value
- cleanStoreQueryConfigs() : array<string|int, mixed>
- Clean store query configs
- cleanUpQueryConfig() : array<string|int, mixed>
- Clean up query config
- convertIso8601DatetimeStringToUnixTimestamp() : array<string|int, mixed>
- Convert ISO-8601 timestamp (string) into unix timestamp (int)
- csvValues() : string
- CSV values
- getBackendUserAuthentication() : BackendUserAuthentication
- getDateTimePickerField() : string
- getFormElements() : array<string|int, mixed>
- Get form elements
- getLabelCol() : string
- Get label column
- getLanguageService() : LanguageService
- getProcessedValueExtra() : string
- Get processed value extra
- getQuery() : string
- Get query
- getQueryResultCode() : array<string|int, mixed>
- Get query result code
- getQuerySingle() : string
- Get single query
- getSelectQuery() : string
- Get select query
- getSubscript() : array<string|int, mixed>
- Get subscript
- getTreeList() : string
- Recursively fetch all descendants of a given page
- init() : mixed
- Init function
- initStoreArray() : array<string|int, mixed>
- Init store array
- isDateOfIso8601Format() : bool
- Checks if the given value is of the ISO 8601 format.
- loadStoreQueryConfigs() : array<string|int, mixed>
- Load store query configs
- makeComparisonSelector() : string
- makeFieldList() : string
- Make a list of fields for current table
- makeOptionList() : string
- Make option list
- makeSelectorTable() : string
- Make selector table
- makeStoreControl() : string
- Make store control
- makeValueList() : string
- Make value list
- mkCompSelect() : string
- Make comparison select
- mkFieldToInputSelect() : string
- Make field to input select
- mkOperatorSelect() : string
- Make operator select
- mkTableSelect() : string
- Make table select
- mkTypeSelect() : string
- Make type select
- printCodeArray() : string
- Print code array
- procesData() : mixed
- Process data
- procesStoreControl() : string
- Process store control
- resultRowDisplay() : string
- Result row display
- resultRowTitles() : string
- Render table header
- saveQueryInAction() : bool
- Save query in action
- setAndCleanUpExternalLists() : mixed
- Set and clean up external lists
- updateIcon() : string
- Update icon
- verifyComparison() : int
- Verify comparison
- verifyType() : string
- Verify type
Properties
$comp_offsets
protected
array<string|int, mixed>
$comp_offsets
= ['text' => 0, 'number' => 1, 'multiple' => 2, 'relation' => 2, 'date' => 3, 'time' => 3, 'boolean' => 4, 'binary' => 5]
$compSQL
protected
array<string|int, mixed>
$compSQL
= [
// Type = text offset = 0
'0' => '#FIELD# LIKE \'%#VALUE#%\'',
'1' => '#FIELD# NOT LIKE \'%#VALUE#%\'',
'2' => '#FIELD# LIKE \'#VALUE#%\'',
'3' => '#FIELD# NOT LIKE \'#VALUE#%\'',
'4' => '#FIELD# LIKE \'%#VALUE#\'',
'5' => '#FIELD# NOT LIKE \'%#VALUE#\'',
'6' => '#FIELD# = \'#VALUE#\'',
'7' => '#FIELD# != \'#VALUE#\'',
// Type = number, offset = 32
'32' => '#FIELD# = \'#VALUE#\'',
'33' => '#FIELD# != \'#VALUE#\'',
'34' => '#FIELD# > #VALUE#',
'35' => '#FIELD# < #VALUE#',
'36' => '#FIELD# >= #VALUE# AND #FIELD# <= #VALUE1#',
'37' => 'NOT (#FIELD# >= #VALUE# AND #FIELD# <= #VALUE1#)',
'38' => '#FIELD# IN (#VALUE#)',
'39' => '#FIELD# NOT IN (#VALUE#)',
'40' => '(#FIELD# & #VALUE#)=#VALUE#',
'41' => '(#FIELD# & #VALUE#)!=#VALUE#',
'42' => '(#FIELD# | #VALUE#)=#VALUE#',
'43' => '(#FIELD# | #VALUE#)!=#VALUE#',
// Type = multiple, relation, offset = 64
'64' => '#FIELD# = \'#VALUE#\'',
'65' => '#FIELD# != \'#VALUE#\'',
'66' => '#FIELD# LIKE \'%#VALUE#%\' AND #FIELD# LIKE \'%#VALUE1#%\'',
'67' => '(#FIELD# NOT LIKE \'%#VALUE#%\' OR #FIELD# NOT LIKE \'%#VALUE1#%\')',
'68' => '#FIELD# IN (#VALUE#)',
'69' => '#FIELD# NOT IN (#VALUE#)',
'70' => '(#FIELD# & #VALUE#)=#VALUE#',
'71' => '(#FIELD# & #VALUE#)!=#VALUE#',
'72' => '(#FIELD# | #VALUE#)=#VALUE#',
'73' => '(#FIELD# | #VALUE#)!=#VALUE#',
// Type = date, offset = 32
'96' => '#FIELD# = \'#VALUE#\'',
'97' => '#FIELD# != \'#VALUE#\'',
'98' => '#FIELD# > #VALUE#',
'99' => '#FIELD# < #VALUE#',
'100' => '#FIELD# >= #VALUE# AND #FIELD# <= #VALUE1#',
'101' => 'NOT (#FIELD# >= #VALUE# AND #FIELD# <= #VALUE1#)',
'102' => '(#FIELD# & #VALUE#)=#VALUE#',
'103' => '(#FIELD# & #VALUE#)!=#VALUE#',
'104' => '(#FIELD# | #VALUE#)=#VALUE#',
'105' => '(#FIELD# | #VALUE#)!=#VALUE#',
// Type = boolean, offset = 128
'128' => '#FIELD# = \'1\'',
'129' => '#FIELD# != \'1\'',
// Type = binary = 160
'160' => '#FIELD# = \'#VALUE#\'',
'161' => '#FIELD# != \'#VALUE#\'',
'162' => '(#FIELD# & #VALUE#)=#VALUE#',
'163' => '(#FIELD# & #VALUE#)=0',
]
$enablePrefix
protected
bool
$enablePrefix
= false
$enableQueryParts
protected
bool
$enableQueryParts
= false
$extFieldLists
protected
array<string|int, mixed>
$extFieldLists
= []
$fieldList
Field list
protected
string
$fieldList
$fieldName
protected
string
$fieldName
$fields
Array of the fields possible
protected
array<string|int, mixed>
$fields
= []
$formName
protected
string
$formName
= ''
$hookArray
protected
array<string|int, mixed>
$hookArray
= []
$iconFactory
protected
IconFactory
$iconFactory
$lang
protected
array<string|int, mixed>
$lang
= ['OR' => 'or', 'AND' => 'and', 'comparison' => [
// Type = text offset = 0
'0_' => 'contains',
'1_' => 'does not contain',
'2_' => 'starts with',
'3_' => 'does not start with',
'4_' => 'ends with',
'5_' => 'does not end with',
'6_' => 'equals',
'7_' => 'does not equal',
// Type = number , offset = 32
'32_' => 'equals',
'33_' => 'does not equal',
'34_' => 'is greater than',
'35_' => 'is less than',
'36_' => 'is between',
'37_' => 'is not between',
'38_' => 'is in list',
'39_' => 'is not in list',
'40_' => 'binary AND equals',
'41_' => 'binary AND does not equal',
'42_' => 'binary OR equals',
'43_' => 'binary OR does not equal',
// Type = multiple, relation, offset = 64
'64_' => 'equals',
'65_' => 'does not equal',
'66_' => 'contains',
'67_' => 'does not contain',
'68_' => 'is in list',
'69_' => 'is not in list',
'70_' => 'binary AND equals',
'71_' => 'binary AND does not equal',
'72_' => 'binary OR equals',
'73_' => 'binary OR does not equal',
// Type = date,time offset = 96
'96_' => 'equals',
'97_' => 'does not equal',
'98_' => 'is greater than',
'99_' => 'is less than',
'100_' => 'is between',
'101_' => 'is not between',
'102_' => 'binary AND equals',
'103_' => 'binary AND does not equal',
'104_' => 'binary OR equals',
'105_' => 'binary OR does not equal',
// Type = boolean, offset = 128
'128_' => 'is True',
'129_' => 'is False',
// Type = binary , offset = 160
'160_' => 'equals',
'161_' => 'does not equal',
'162_' => 'contains',
'163_' => 'does not contain',
]]
$menuItems
protected
array<string|int, mixed>
$menuItems
= []
information on the menu of this module
$moduleName
protected
string
$moduleName
$name
Form data name prefix
protected
string
$name
$noDownloadB
protected
int
$noDownloadB
= 0
$queryConfig
The query config
protected
array<string|int, mixed>
$queryConfig
= []
$settings
protected
array<string|int, mixed>
$settings
= []
Settings, usually from the controller
$showFieldAndTableNames
If the current user is an admin and $GLOBALS['TYPO3_CONF_VARS']['BE']['debug'] is set to true, the names of fields and tables are displayed.
protected
bool
$showFieldAndTableNames
= false
$storeList
protected
string
$storeList
= 'search_query_smallparts,search_result_labels,labels_noprefix,show_deleted,queryConfig,queryTable,queryFields,queryLimit,queryOrder,queryOrderDesc,queryOrder2,queryOrder2Desc,queryGroup,search_query_makeQuery'
$table
Table for the query
protected
string
$table
$tableArray
protected
array<string|int, mixed>
$tableArray
= []
Methods
__construct()
public
__construct(array<string|int, mixed> $settings, array<string|int, mixed> $menuItems, string $moduleName) : mixed
Parameters
- $settings : array<string|int, mixed>
- $menuItems : array<string|int, mixed>
- $moduleName : string
form()
Get form
public
form() : string
Return values
stringqueryMaker()
Query marker
public
queryMaker() : string
Return values
stringsearch()
Search
public
search() : string
Return values
stringsetFormName()
Sets the current name of the input form.
public
setFormName(string $formName) : mixed
Parameters
- $formName : string
-
The name of the form.
addToStoreQueryConfigs()
Add to store query configs
protected
addToStoreQueryConfigs(array<string|int, mixed> $storeQueryConfigs, int $index) : array<string|int, mixed>
Parameters
- $storeQueryConfigs : array<string|int, mixed>
- $index : int
Return values
array<string|int, mixed>cleanInputVal()
Clean input value
protected
cleanInputVal(array<string|int, mixed> $conf[, string $suffix = '' ]) : string|int|float|null
Parameters
- $conf : array<string|int, mixed>
- $suffix : string = ''
Return values
string|int|float|nullcleanStoreQueryConfigs()
Clean store query configs
protected
cleanStoreQueryConfigs(array<string|int, mixed> $storeQueryConfigs, array<string|int, mixed> $storeArray) : array<string|int, mixed>
Parameters
- $storeQueryConfigs : array<string|int, mixed>
- $storeArray : array<string|int, mixed>
Return values
array<string|int, mixed>cleanUpQueryConfig()
Clean up query config
protected
cleanUpQueryConfig(array<string|int, mixed> $queryConfig) : array<string|int, mixed>
Parameters
- $queryConfig : array<string|int, mixed>
-
Query config
Return values
array<string|int, mixed>convertIso8601DatetimeStringToUnixTimestamp()
Convert ISO-8601 timestamp (string) into unix timestamp (int)
protected
convertIso8601DatetimeStringToUnixTimestamp(array<string|int, mixed> $conf) : array<string|int, mixed>
Parameters
- $conf : array<string|int, mixed>
Return values
array<string|int, mixed>csvValues()
CSV values
protected
csvValues(array<string|int, mixed> $row[, string $delim = ',' ][, string $quote = '"' ][, array<string|int, mixed> $conf = [] ][, string $table = '' ]) : string
Parameters
- $row : array<string|int, mixed>
- $delim : string = ','
- $quote : string = '"'
- $conf : array<string|int, mixed> = []
- $table : string = ''
Return values
string —A single line of CSV
getBackendUserAuthentication()
protected
getBackendUserAuthentication() : BackendUserAuthentication
Return values
BackendUserAuthenticationgetDateTimePickerField()
protected
getDateTimePickerField(string $name, string $timestamp, string $type) : string
Parameters
- $name : string
-
the field name
- $timestamp : string
-
ISO-8601 timestamp
- $type : string
-
[datetime, date, time, timesec, year]
Return values
stringgetFormElements()
Get form elements
protected
getFormElements([int $subLevel = 0 ][, string $queryConfig = '' ][, string $parent = '' ]) : array<string|int, mixed>
Parameters
- $subLevel : int = 0
- $queryConfig : string = ''
- $parent : string = ''
Return values
array<string|int, mixed>getLabelCol()
Get label column
protected
getLabelCol() : string
Return values
stringgetLanguageService()
protected
getLanguageService() : LanguageService
Return values
LanguageServicegetProcessedValueExtra()
Get processed value extra
protected
getProcessedValueExtra(string $table, string $fieldName, string $fieldValue, array<string|int, mixed> $conf, string $splitString) : string
Parameters
- $table : string
- $fieldName : string
- $fieldValue : string
- $conf : array<string|int, mixed>
-
Not used
- $splitString : string
Return values
stringgetQuery()
Get query
protected
getQuery(array<string|int, mixed> $queryConfig[, string $pad = '' ]) : string
Parameters
- $queryConfig : array<string|int, mixed>
- $pad : string = ''
Return values
stringgetQueryResultCode()
Get query result code
protected
getQueryResultCode(string $type, array<string|int, mixed> $dataRows, string $table) : array<string|int, mixed>
Parameters
- $type : string
- $dataRows : array<string|int, mixed>
-
Rows to display
- $table : string
Tags
Return values
array<string|int, mixed> —HTML-code for "header" and "content"
getQuerySingle()
Get single query
protected
getQuerySingle(array<string|int, mixed> $conf, bool $first) : string
Parameters
- $conf : array<string|int, mixed>
- $first : bool
Return values
stringgetSelectQuery()
Get select query
protected
getSelectQuery([string $qString = '' ]) : string
Parameters
- $qString : string = ''
Return values
stringgetSubscript()
Get subscript
protected
getSubscript(array<string|int, mixed> $arr) : array<string|int, mixed>
Parameters
- $arr : array<string|int, mixed>
Return values
array<string|int, mixed>getTreeList()
Recursively fetch all descendants of a given page
protected
getTreeList(int $id, int $depth[, int $begin = 0 ][, string $permsClause = '' ]) : string
Parameters
- $id : int
-
uid of the page
- $depth : int
- $begin : int = 0
- $permsClause : string = ''
Return values
string —comma separated list of descendant pages
init()
Init function
protected
init(string $name, string $table[, string $fieldList = '' ][, array<string|int, mixed> $settings = [] ]) : mixed
Parameters
- $name : string
-
The name
- $table : string
-
The table name
- $fieldList : string = ''
-
The field list
- $settings : array<string|int, mixed> = []
-
Module settings like checkboxes in the interface
initStoreArray()
Init store array
protected
initStoreArray() : array<string|int, mixed>
Return values
array<string|int, mixed>isDateOfIso8601Format()
Checks if the given value is of the ISO 8601 format.
protected
isDateOfIso8601Format(mixed $date) : bool
Parameters
- $date : mixed
Return values
boolloadStoreQueryConfigs()
Load store query configs
protected
loadStoreQueryConfigs(array<string|int, mixed> $storeQueryConfigs, int $storeIndex, array<string|int, mixed> $writeArray) : array<string|int, mixed>
Parameters
- $storeQueryConfigs : array<string|int, mixed>
- $storeIndex : int
- $writeArray : array<string|int, mixed>
Return values
array<string|int, mixed>makeComparisonSelector()
protected
makeComparisonSelector(string $subscript, string $fieldName, array<string|int, mixed> $conf) : string
Parameters
- $subscript : string
- $fieldName : string
- $conf : array<string|int, mixed>
Return values
stringmakeFieldList()
Make a list of fields for current table
protected
makeFieldList() : string
Return values
string —Separated list of fields
makeOptionList()
Make option list
protected
makeOptionList(string $fieldName, array<string|int, mixed> $conf, string $table) : string
Parameters
- $fieldName : string
- $conf : array<string|int, mixed>
- $table : string
Return values
stringmakeSelectorTable()
Make selector table
protected
makeSelectorTable(array<string|int, mixed> $modSettings[, string $enableList = 'table,fields,query,group,order,limit' ]) : string
Parameters
- $modSettings : array<string|int, mixed>
- $enableList : string = 'table,fields,query,group,order,limit'
Return values
stringmakeStoreControl()
Make store control
protected
makeStoreControl() : string
Return values
stringmakeValueList()
Make value list
protected
makeValueList(string $fieldName, string $fieldValue, array<string|int, mixed> $conf, string $table, string $splitString) : string
Parameters
- $fieldName : string
- $fieldValue : string
- $conf : array<string|int, mixed>
- $table : string
- $splitString : string
Return values
stringmkCompSelect()
Make comparison select
protected
mkCompSelect(string $name, string $comparison, int $neg) : string
Parameters
- $name : string
- $comparison : string
- $neg : int
Return values
stringmkFieldToInputSelect()
Make field to input select
protected
mkFieldToInputSelect(string $name, string $fieldName) : string
Parameters
- $name : string
- $fieldName : string
Return values
stringmkOperatorSelect()
Make operator select
protected
mkOperatorSelect(string $name, string $op, bool $draw, bool $submit) : string
Parameters
- $name : string
- $op : string
- $draw : bool
- $submit : bool
Return values
stringmkTableSelect()
Make table select
protected
mkTableSelect(string $name, string $cur) : string
Parameters
- $name : string
- $cur : string
Return values
stringmkTypeSelect()
Make type select
protected
mkTypeSelect(string $name, string $fieldName[, string $prepend = 'FIELD_' ]) : string
Parameters
- $name : string
- $fieldName : string
- $prepend : string = 'FIELD_'
Return values
stringprintCodeArray()
Print code array
protected
printCodeArray(array<string|int, mixed> $codeArr[, int $recursionLevel = 0 ]) : string
Parameters
- $codeArr : array<string|int, mixed>
- $recursionLevel : int = 0
Return values
stringprocesData()
Process data
protected
procesData([array<string|int, mixed> $qC = [] ]) : mixed
Parameters
- $qC : array<string|int, mixed> = []
-
Query config
procesStoreControl()
Process store control
protected
procesStoreControl() : string
Return values
stringresultRowDisplay()
Result row display
protected
resultRowDisplay(array<string|int, mixed> $row, array<string|int, mixed> $conf, string $table) : string
Parameters
- $row : array<string|int, mixed>
- $conf : array<string|int, mixed>
- $table : string
Return values
stringresultRowTitles()
Render table header
protected
resultRowTitles(array<string|int, mixed> $row, array<string|int, mixed> $conf) : string
Parameters
- $row : array<string|int, mixed>
-
Table columns
- $conf : array<string|int, mixed>
-
Table TCA
Return values
string —HTML of table header
saveQueryInAction()
Save query in action
protected
saveQueryInAction(int $uid) : bool
Parameters
- $uid : int
Return values
boolsetAndCleanUpExternalLists()
Set and clean up external lists
protected
setAndCleanUpExternalLists(string $name, string $list[, string $force = '' ]) : mixed
Parameters
- $name : string
-
The name
- $list : string
-
The list
- $force : string = ''
updateIcon()
Update icon
protected
updateIcon() : string
Return values
stringverifyComparison()
Verify comparison
protected
verifyComparison(string $comparison, int $neg) : int
Parameters
- $comparison : string
- $neg : int
Return values
intverifyType()
Verify type
protected
verifyType(string $fieldName) : string
Parameters
- $fieldName : string