Details
-
Story
-
Resolution: Duplicate
-
High
-
5.3, 5.4.0
-
None
Description
Search in Platform stack is a replacement both for Search and Fetch functions in legacy.
Right now this is disallowed and Field, MapLocationDistance and potentially others meant for querying (filtering like in legacy fetch functions), so the change would be to:
- allow despite this flag, simplifying the queries needed there
- just make sure indexing (check all search engines) takes this into account, and only in regards to FullText indexing
- Document that reindexing is needed if this flag is re configured (when we have async indexing in place we should do this in the background)
Draft for API changes:
diff --git a/eZ/Publish/API/Repository/Values/ContentType/FieldDefinition.php b/eZ/Publish/API/Repository/Values/ContentType/FieldDefinition.php index 7fd0fdb..b3f9b4c 100644 --- a/eZ/Publish/API/Repository/Values/ContentType/FieldDefinition.php +++ b/eZ/Publish/API/Repository/Values/ContentType/FieldDefinition.php @@ -23,7 +23,7 @@ use eZ\Publish\API\Repository\Values\ValueObject; * @property-read string $fieldTypeIdentifier String identifier of the field type * @property-read boolean $isTranslatable indicates if fields of this definition are translatable * @property-read boolean $isRequired indicates if this field is required in the content object - * @property-read boolean $isSearchable indicates if the field is searchable + * @property-read boolean $isSearchable indicates if the field is indexed for FullText search * @property-read boolean $isInfoCollector indicates if this field is used for information collection * @property-read $defaultValue the default value of the field */ @@ -150,7 +150,11 @@ abstract class FieldDefinition extends ValueObject protected $defaultValue; /** - * Indicates if th the content is searchable by this attribute + * Indicates if the field is indexed for FullText search + * + * Means that if FieldType is indexable and this is true, then content for the Field will be indexed + * for FullText search. Field either way will (if supported) still be queryable with Field specific Criteria. + * * * @var boolean */ diff --git a/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitionCreateStruct.php b/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitio index 24a7141..7a99d85 100644 --- a/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitionCreateStruct.php +++ b/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitionCreateStruct.php @@ -108,7 +108,10 @@ class FieldDefinitionCreateStruct extends ValueObject public $defaultValue; /** - * Indicates if th the content is searchable by this attribute + * Indicates if the field is indexed for FullText search + * + * Means that if FieldType is indexable and this is true, then content for the Field will be indexed + * for FullText search. Field either way will (if supported) still be queryable with Field specific Criteria. * * @var boolean */ diff --git a/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitionUpdateStruct.php b/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitio index c0fb3d3..c26de3a 100644 --- a/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitionUpdateStruct.php +++ b/eZ/Publish/API/Repository/Values/ContentType/FieldDefinitionUpdateStruct.php @@ -96,7 +96,13 @@ class FieldDefinitionUpdateStruct extends ValueObject public $defaultValue; /** - * If set the the searchable flag is set to this value. + * If set the the searchable flag is updated to indicate if the field is indexed for FullText search + * + * Means that if FieldType is indexable and this is true, then content for the Field will be indexed + * for FullText search. Field either way will (if supported) still be queryable with Field specific Criteria. + * + * Note: Changes to this flag means existing content with this attribute will need to be re-indexed, until async + * indexing support is added this needs to be done manually. * * @var boolean */