protected function SearchApiElasticsearchAbstractService::correctFilter in Search API Elasticsearch 7
Helper function that check if filter is set correct.
1 call to SearchApiElasticsearchAbstractService::correctFilter()
- SearchApiElasticsearchAbstractService::parseFilter in includes/
SearchApiElasticsearchAbstractService.inc - Helper function: Recursively parse Search API filters.
1 method overrides SearchApiElasticsearchAbstractService::correctFilter()
- SearchApiElasticsearchElastica::correctFilter in modules/
elastica/ includes/ SearchApiElasticsearchElastica.inc - Helper function that check if filter is set correct.
File
- includes/
SearchApiElasticsearchAbstractService.inc, line 880 - Provides a Elasticsearch-based service class for the Search API.
Class
- SearchApiElasticsearchAbstractService
- Elasticsearch service abstract class.
Code
protected function correctFilter($filter_assoc, $index_fields, $ignored_field_id = '') {
if (!isset($filter_assoc['field_id']) || !isset($filter_assoc['filter_value']) || !isset($filter_assoc['filter_operator'])) {
throw new Exception(t('Incorrect filter criteria is using for searching!'));
}
$field_id = $filter_assoc['field_id'];
if (!isset($index_fields[$field_id])) {
throw new Exception(t(':field_id Undefined field ! Incorrect filter criteria is using for searching!', array(
':field_id' => $field_id,
)));
}
// Check operator.
if (empty($filter_assoc['filter_operator'])) {
throw new Exception(t('Empty filter operator for :field_id field! Incorrect filter criteria is using for searching!', array(
':field_id' => $field_id,
)));
}
// If field should be ignored, we skip.
if ($field_id === $ignored_field_id) {
return TRUE;
}
return TRUE;
}