From fcc3f1ba24dfcc23adce64e2c60b4ce2c1c57e82 Mon Sep 17 00:00:00 2001 From: Mathieu Darse Date: Thu, 9 Apr 2015 12:13:39 +0200 Subject: [PATCH] Fix range query field --- .../Phrasea/SearchEngine/Elastic/AST/RangeExpression.php | 3 ++- .../Phrasea/SearchEngine/Elastic/Search/QueryContext.php | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/Alchemy/Phrasea/SearchEngine/Elastic/AST/RangeExpression.php b/lib/Alchemy/Phrasea/SearchEngine/Elastic/AST/RangeExpression.php index 5e85715087..a8b95e7455 100644 --- a/lib/Alchemy/Phrasea/SearchEngine/Elastic/AST/RangeExpression.php +++ b/lib/Alchemy/Phrasea/SearchEngine/Elastic/AST/RangeExpression.php @@ -59,8 +59,9 @@ class RangeExpression extends Node } } + $field = $context->normalizeField($this->field->getValue()); $query = array(); - $query['range'][$this->field->getValue()] = $params; + $query['range'][$field] = $params; return $query; } diff --git a/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/QueryContext.php b/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/QueryContext.php index 2159672f1f..dd1b86a3a3 100644 --- a/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/QueryContext.php +++ b/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/QueryContext.php @@ -73,6 +73,13 @@ class QueryContext return $fields; } + public function normalizeField($field) + { + // TODO Private fields handling + // TODO Field label dereferencing (we only want names) + return sprintf('caption.%s', $field); + } + public function getFields() { return $this->fields;