If a searchable TCA field has a sortby setting which contains an empty
string or NULL, then BE Livesearch creates a query with one or more
'ORDER BY' without value, generating an SQL error. This fixes that.
Change-Id: I63aabfe860cd37645d9ac2905ed020d572629a1b
Fixes: #40816
Releases: 6.0
Reviewed-on: http://review.typo3.org/14526
Reviewed-by: Dmitry Dulepov
Tested-by: Dmitry Dulepov
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Mattias Nilsson
Tested-by: Mattias Nilsson
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
protected function makeOrderByTable($tableName) {
$orderBy = '';
if (is_array($GLOBALS['TCA'][$tableName]['ctrl']) && array_key_exists('sortby', $GLOBALS['TCA'][$tableName]['ctrl'])) {
- $orderBy = 'ORDER BY ' . $GLOBALS['TCA'][$tableName]['ctrl']['sortby'];
+ $sortBy = trim($GLOBALS['TCA'][$tableName]['ctrl']['sortby']);
+ if (!empty($sortBy)) {
+ $orderBy = 'ORDER BY ' . $sortBy;
+ }
} else {
$orderBy = $GLOBALS['TCA'][$tableName]['ctrl']['default_sortby'];
}
}
-?>
\ No newline at end of file
+?>