1
0
Fork 0
mirror of synced 2024-06-26 10:10:57 +12:00

Added request filters for queries

This commit is contained in:
Matej Baco 2021-12-31 16:45:49 +01:00
parent 551021085a
commit 577eb107da

View file

@ -120,7 +120,36 @@ class V12 extends Filter
protected function convertQueries(array $content): array
{
// TODO: remove filters, search; add queries
$queries = [];
if(!empty($content['filters'])) {
foreach ($content['filters'] as $filter) {
$operators = ['=' => 'equal', '!=' => 'notEqual', '>' => 'greater', '<' => 'lesser', '<=' => 'lesserEqual', '>=' => 'greaterEqual'];
foreach ($operators as $operator => $operatorVerbose) {
if (\str_contains($filter, $operator)) {
$usedOperator = $operator;
break;
}
}
if(isset($usedOperator)) {
[ $attributeKey, $filterValue ] = \explode($usedOperator, $filter);
// TODO: String or not? Any way to figure out?
$query = $attributeKey . '.' . $operators[$usedOperator] . '("' . $filterValue . '")';
\array_push($queries, $query);
}
}
}
// TODO: Can we even migrate search? Which key? Is $id key OK?
// TODO: What's difference between !empty and isset?
if(!empty($content['search'])) {
\array_push($queries, '$id.search("' . $content['search'] . '")');
}
unset($content['filters']);
unset($content['search']);
$content['queries'] = $queries;
return $content;
}