| @@ 333-346 (lines=14) @@ | ||
| 330 | * |
|
| 331 | * @return string The SQL query part to add to a query. |
|
| 332 | */ |
|
| 333 | protected function generateFilterConditionSQL(ClassMetadata $targetEntity, $targetTableAlias) |
|
| 334 | { |
|
| 335 | $filterClauses = []; |
|
| 336 | ||
| 337 | foreach ($this->em->getFilters()->getEnabledFilters() as $filter) { |
|
| 338 | if ($filterExpr = $filter->addFilterConstraint($targetEntity, $targetTableAlias)) { |
|
| 339 | $filterClauses[] = '(' . $filterExpr . ')'; |
|
| 340 | } |
|
| 341 | } |
|
| 342 | ||
| 343 | return $filterClauses |
|
| 344 | ? '(' . implode(' AND ', $filterClauses) . ')' |
|
| 345 | : ''; |
|
| 346 | } |
|
| 347 | ||
| 348 | /** |
|
| 349 | * Generate ON condition |
|
| @@ 2044-2057 (lines=14) @@ | ||
| 2041 | * |
|
| 2042 | * @return string The SQL query part to add to a query. |
|
| 2043 | */ |
|
| 2044 | protected function generateFilterConditionSQL(ClassMetadata $targetEntity, $targetTableAlias) |
|
| 2045 | { |
|
| 2046 | $filterClauses = []; |
|
| 2047 | ||
| 2048 | foreach ($this->em->getFilters()->getEnabledFilters() as $filter) { |
|
| 2049 | if ('' !== $filterExpr = $filter->addFilterConstraint($targetEntity, $targetTableAlias)) { |
|
| 2050 | $filterClauses[] = '(' . $filterExpr . ')'; |
|
| 2051 | } |
|
| 2052 | } |
|
| 2053 | ||
| 2054 | $sql = implode(' AND ', $filterClauses); |
|
| 2055 | ||
| 2056 | return $sql ? "(" . $sql . ")" : ""; // Wrap again to avoid "X or Y and FilterConditionSQL" |
|
| 2057 | } |
|
| 2058 | ||
| 2059 | /** |
|
| 2060 | * Switches persister context according to current query offset/limits |
|