diff --git a/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/Query.php b/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/Query.php index 829ea94140..24354a2688 100644 --- a/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/Query.php +++ b/lib/Alchemy/Phrasea/SearchEngine/Elastic/Search/Query.php @@ -27,8 +27,9 @@ class Query { $query = $this->root->buildQuery($context); if ($query === null) { - $query = []; - $query['bool']['must'] = []; + //$query = ['bool'=> ['must' => []]]; + // a null query shoud return no results ! + $query = ['constant_score'=> ['filter' => new \stdClass]]; } return $query; diff --git a/lib/Alchemy/Phrasea/SearchEngine/Elastic/Thesaurus.php b/lib/Alchemy/Phrasea/SearchEngine/Elastic/Thesaurus.php index 51942b5c28..7abe088520 100644 --- a/lib/Alchemy/Phrasea/SearchEngine/Elastic/Thesaurus.php +++ b/lib/Alchemy/Phrasea/SearchEngine/Elastic/Thesaurus.php @@ -60,6 +60,7 @@ class Thesaurus // TODO Use bulk queries for performance $concepts = array(); foreach ($terms as $index => $term) { + $strict = ($term instanceof AST\TermNode); // a "term" node is [strict group of words] $concepts[] = $this->findConcepts($term, $lang, $filters[$index], $strict); } diff --git a/lib/classes/databox.php b/lib/classes/databox.php index 968ad2f80b..ba12def8f8 100644 --- a/lib/classes/databox.php +++ b/lib/classes/databox.php @@ -1217,7 +1217,7 @@ class databox extends base implements ThumbnailedElement if ($domct !== false) { $nodesToDel = []; for($n = $domct->documentElement->firstChild; $n; $n = $n->nextSibling) { - if(!($n->getAttribute('delbranch'))){ + if($n->nodeType == XML_ELEMENT_NODE && !($n->getAttribute('delbranch'))){ $nodesToDel[] = $n; } }