Replaces the original condition with a custom one from views recursively.
string $search: The searched value.
string $replace: The value which replaces the search value.
Drupal\Core\Database\Query\Condition $condition: The query condition in which the string is replaced.
function condition_replace_string($search, $replace, &$condition) {
if ($condition['field'] instanceof Condition) {
$conditions =& $condition['field']
->conditions();
foreach ($conditions as $key => &$subcondition) {
if (is_numeric($key)) {
// As conditions can have subconditions, for example db_or(), the
// function has to be called recursively.
$this
->condition_replace_string($search, $replace, $subcondition);
}
}
}
else {
$condition['field'] = str_replace($search, $replace, $condition['field']);
}
}