Helper function that removes the fields that are already in a condition.
$fields: The fields.
QueryConditionInterface $condition: A database condition.
protected function removeFieldsInCondition(&$fields, ConditionInterface $condition) {
foreach ($condition
->conditions() as $child_condition) {
if (isset($child_condition['field'])) {
if ($child_condition['field'] instanceof ConditionInterface) {
$this
->removeFieldsInCondition($fields, $child_condition['field']);
}
else {
unset($fields[$child_condition['field']]);
}
}
}
}