From 5bd51bcd34ba357a8e0814fc9317aeef09d48774 Mon Sep 17 00:00:00 2001 From: "joel.capillo" Date: Thu, 13 Dec 2018 17:01:32 -0800 Subject: [PATCH 1/4] ensure to perform lowercase action for strings data type only --- src/Builder/ElasticaQueryBuilder.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Builder/ElasticaQueryBuilder.php b/src/Builder/ElasticaQueryBuilder.php index 85b2e3c..5de9a9d 100755 --- a/src/Builder/ElasticaQueryBuilder.php +++ b/src/Builder/ElasticaQueryBuilder.php @@ -451,7 +451,7 @@ protected function addTermToQuery(string $method, Node $node, ?Field $field = nu return; } - $value = $this->lowerCaseTerms ? strtolower((string)$node->getValue()) : $node->getValue(); + $value = $this->lowerCaseTerms && is_string($node->getValue()) ? strtolower((string)$node->getValue()) : $node->getValue(); $fieldName = $this->inField() ? $field->getName() : $this->defaultFieldName; if ($this->inField() && !$this->inSubquery()) { From 15e7f1c9025f5ab45292aa384fa941d0f384f821 Mon Sep 17 00:00:00 2001 From: "joel.capillo" Date: Thu, 13 Dec 2018 17:05:08 -0800 Subject: [PATCH 2/4] bump up change log --- CHANGELOG-0.x.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG-0.x.md b/CHANGELOG-0.x.md index ca7a976..a066800 100644 --- a/CHANGELOG-0.x.md +++ b/CHANGELOG-0.x.md @@ -1,6 +1,8 @@ # CHANGELOG for 0.x This changelog references the relevant changes done in 0.x versions. +## v0.3.1 +* (patch) issue #288: cannot search nodes using any time field ## v0.3.0 __BREAKING CHANGES__ From f4a09d0d7bb3aafc6ff2926ece701942df80d5c6 Mon Sep 17 00:00:00 2001 From: "joel.capillo" Date: Thu, 13 Dec 2018 17:16:09 -0800 Subject: [PATCH 3/4] check to execute string casting if it's only an instance of Numbr --- src/Builder/ElasticaQueryBuilder.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Builder/ElasticaQueryBuilder.php b/src/Builder/ElasticaQueryBuilder.php index 5de9a9d..4bbd09e 100755 --- a/src/Builder/ElasticaQueryBuilder.php +++ b/src/Builder/ElasticaQueryBuilder.php @@ -451,7 +451,7 @@ protected function addTermToQuery(string $method, Node $node, ?Field $field = nu return; } - $value = $this->lowerCaseTerms && is_string($node->getValue()) ? strtolower((string)$node->getValue()) : $node->getValue(); + $value = $this->lowerCaseTerms && !$node instanceof Numbr ? strtolower((string)$node->getValue()) : $node->getValue(); $fieldName = $this->inField() ? $field->getName() : $this->defaultFieldName; if ($this->inField() && !$this->inSubquery()) { From cd4ca111278cdee96d4dc26929da187eb6a6a124 Mon Sep 17 00:00:00 2001 From: "joel.capillo" Date: Thu, 13 Dec 2018 17:28:16 -0800 Subject: [PATCH 4/4] update change log comment --- CHANGELOG-0.x.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG-0.x.md b/CHANGELOG-0.x.md index a066800..6d13f0d 100644 --- a/CHANGELOG-0.x.md +++ b/CHANGELOG-0.x.md @@ -2,7 +2,7 @@ This changelog references the relevant changes done in 0.x versions. ## v0.3.1 -* (patch) issue #288: cannot search nodes using any time field +* BUG :: Fix invalid string casting on Numbr in ElasticaQueryBuilder. ## v0.3.0 __BREAKING CHANGES__