From 245ec1697b2cf9f1cba6ab30a28bbd07ec966d80 Mon Sep 17 00:00:00 2001
From: Patryk Knysak <jonsh4nnow@gmail.com>
Date: Thu, 19 Jan 2017 10:06:18 +0100
Subject: [PATCH] ES 5 support: Changed syntax of script_score (fix for #175)
 (#186)

---
 src/Query/FunctionScoreQuery.php | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

diff --git a/src/Query/FunctionScoreQuery.php b/src/Query/FunctionScoreQuery.php
index c154092..1519e4d 100644
--- a/src/Query/FunctionScoreQuery.php
+++ b/src/Query/FunctionScoreQuery.php
@@ -181,14 +181,23 @@ class FunctionScoreQuery implements BuilderInterface
         array $options = [],
         BuilderInterface $query = null
     ) {
-        $function = [
-            'script_score' => array_merge(
-                [
-                    'script' => $script,
-                    'params' => $params,
-                ],
+        if (count($params) > 0) {
+            $options = array_merge(
+                ['params' => $params],
                 $options
-            ),
+            );
+        }
+
+        $function = [
+            'script_score' => [
+                'script' => array_merge(
+                    [
+                        'lang' => 'painless',
+                        'inline' => $script
+                    ],
+                    $options
+                )
+            ]
         ];
 
         $this->applyFilter($function, $query);
-- 
GitLab