Commit Graph

35 Commits

Author SHA1 Message Date
Jean-Yves Gaulier
e09c176f3f PHRAS-2831_port-truncation_4.1
fix tests
2019-11-19 17:34:27 +01:00
aynsix
20076df3f8 port to 4.1 date with time on phraseanet 2019-08-15 15:23:03 +04:00
aina-esokia
47d974a466 PHRAS-2497 #comment port to 4.1 Search issue when query mix data from Public and Private field
#time 2h
2019-04-23 12:10:25 +04:00
Thibaud Fabre
299b24d4fb Update class for mapping type constants 2016-10-19 13:31:17 +02:00
Mathieu Darse
8e5d09bd76 Test value compatibility before creating ES query 2015-11-10 16:40:10 +01:00
Mathieu Darse
407470ab10 Rename key-value expression classes 2015-11-10 13:04:28 +01:00
Mathieu Darse
e953998ca7 Use analysis on key-value expressions (with colon operator) 2015-11-09 19:08:40 +01:00
Mathieu Darse
9d3dfa5653 Manage metadata tags from structure 2015-11-09 19:04:54 +01:00
Mathieu Darse
77b9faaa4e Handle equality test on metadata
Still need some work on testing side
2015-11-06 19:34:09 +01:00
Mathieu Darse
3d7ab6a292 Move field logic from RangeExpression to FieldKey
- Prevent Demeter’s Law violation
2015-11-06 19:10:26 +01:00
Mathieu Darse
467e530a93 Handle inequality comparisons with technical data. 2015-11-06 10:16:33 +01:00
Mathieu Darse
713442c7b4 Merge metadata & native key expressions
Do not delegates query building to Key instance anymore.
2015-11-06 10:16:33 +01:00
Mathieu Darse
803a9010a5 Pass metadata key as value object 2015-11-06 10:16:31 +01:00
Benoît Burnichon
94bf685437 Merge pull request #1525 from mdarse/new-in-syntax
Grammar unification
2015-11-04 21:16:03 +01:00
Mathieu Darse
950e623f47 Test equality expressions 2015-11-04 16:53:04 +01:00
Mathieu Darse
766d9b86f3 Update tests according to latest changes (PHRAS-688) 2015-10-12 17:27:57 +02:00
Mathieu Darse
e4ec73c58b Same grammar path for native keys than « IN » expressions
- Replace Database/Collection/Type/RecordIdentifier specific AST with a generic KeyValueExpression
- « IN » queries in regular fields are still using InExpression right now
- Add some tests for « type:XXXX » queries
2015-10-06 18:41:51 +02:00
Mathieu Darse
d6a82370a9 Merge branch 'master' into ar-731-status-search-dsl
Conflicts:
	lib/Alchemy/Phrasea/SearchEngine/Elastic/Indexer/RecordIndexer.php
2015-10-06 12:26:03 +02:00
Mathieu Darse
8a5afb1140 Fix public API BC break 2015-10-06 11:22:44 +02:00
Nicolas Maillat
15e632b44e Merge pull request #1502 from mdarse/ar-731-status-search-dsl
PHRAS-731 Add status match DSL
2015-09-15 09:22:17 +02:00
Mathieu Darse
8b87e94ff2 Add status match DSL 2015-09-14 19:25:44 +02:00
Mathieu Darse
2afd15dd38 Fix tests 2015-09-08 10:37:32 +02:00
Mathieu Darse
ed0affa921 buildConceptQueriesForFields() replaces buildConceptQueries() 2015-08-27 17:35:34 +02:00
Mathieu Darse
064c5e01a6 Wrap text and concept queries with a single filtered query 2015-08-26 19:29:26 +02:00
Mathieu Darse
e058814638 Test TextNode with private fields and concepts on private fields 2015-08-26 19:29:26 +02:00
Mathieu Darse
c596914ab9 Fix concept query builder & private field wrapping
Concept queries on private fields where adding a « must » clause to
restrict match on certain collections only. Boolean queries do not
enforce one « should » clause match at least once a « must » clause is
added to it.
To make queries on private fields more robust & performants, these are
now wrapped in a filtered query with a collection filter.
2015-08-26 15:21:02 +02:00
Jean-Yves Gaulier
5d493321fa #PHRAS-622 #time 20m
fix tests
2015-07-29 19:15:52 +02:00
Mathieu Darse
a59c42980c Fix facets on non string fields & fix raw with "in" query 2015-07-23 18:41:10 +02:00
Mathieu Darse
a31442368b Fix number field search
Search with non numeric content will not hit number field (it breaks elasticsearch and is useless anyway)

- Rename QueryHelper::buildPrivateFieldQueries() to wrapPrivateFieldQuery().
    - Signature changed too, the third parameter is dropped an QueryContext is replaced by an array of Field.
    - Query builder closure is now passed an array of Field, not of index field names.
- Remove Field::toConceptPathIndexFieldArray() because method name was beyond understanding (and also because it wasn't needed anymore)
- Various AST node types have changed due to previous API changes
2015-07-23 17:39:11 +02:00
Mathieu Darse
1e31b68c5f Refactor Term (Thesaurus), Text and Raw queries to work with private fields
Also fix a bug in QueryHelper::applyBooleanClause()
2015-07-10 20:58:37 +02:00
Mathieu Darse
d778ab5126 Refactor query context
No more private collection map, uses new features from LimitedStructure.
From now on, Context tries to return Field objects instead of strings.

New context methods:
- getUnrestrictedFields()
- getPrivateFields()
- localizeField(Field) (signature changed)
- localizeFieldName(string)

QueryContext::localizeField() now takes a Field object, use localizeFieldName() if you want to pass a string.

Field::getIndexFieldName() renamed to Field::getIndexField().
Raw index fields are now obtained with Field::getIndexField(true).
2015-07-10 17:33:10 +02:00
Mathieu Darse
aa0b40b679 Test TermNode 2015-07-03 20:01:29 +02:00
Mathieu Darse
6b88b7d17b Tests & private fields support on QuotedTextNode 2015-07-03 20:01:20 +02:00
Mathieu Darse
386251b91c Remove duplication & fix test class name 2015-07-03 17:40:56 +02:00
Mathieu Darse
570e4fea81 Test TextNode
Make buildConceptQueries() return early when no concepts are available (do not
call getFields() uselessly anymore).
2015-07-03 16:54:47 +02:00