Commit graph

333 commits

Author SHA1 Message Date
88f301f228
FEATURE: Allow range queries for elasticsearch
Allow "raw" configuration and support "range" type.

Also prevent adding boosts if no search term was submitted which can be
boosted.

Resolves: #119
2018-03-06 16:42:22 +01:00
6544ec07d3
FEATURE: Support display name for facet option
As some search services, like elasticsearch, allow generation of a
string that should be displayed in frontend, we provide a new getter for
that.
The old existing name can be a fallback in custom implementations.
2018-03-06 16:41:54 +01:00
74e5f6d432
Merge pull request #127 from Codappix/hotfix/cgl
TASK: Fix CGL
2018-03-06 16:40:42 +01:00
3731bcf474
TASK: Fix CGL 2018-03-06 16:39:07 +01:00
6ac2680211
Merge pull request #101 from Codappix/feature/phpcs-travis
Feature: Run phpcs on travis
2018-03-06 15:11:46 +01:00
fa2b11f276
Merge pull request #123 from Codappix/feature/118-dataprocessor-adapter
FEATURE: 118 dataprocessor adapter
2018-03-06 14:02:10 +01:00
951edf3871
Merge pull request #122 from Codappix/feature/116-execute-dataprocessor-on-result
FEATURE: 116 execute dataprocessor on result
2018-03-06 13:47:35 +01:00
6456f31503
TASK: Make test more readable
Make sure everyone knows what we compare, do not add hardcoded
information.
2018-03-06 13:23:08 +01:00
ae51de9041
Merge remote-tracking branch 'origin/develop' into feature/phpcs-travis
Conflicts:
    Classes/Hook/DataHandler.php
2018-03-06 13:17:29 +01:00
a893303939
TASK: Improve ResultItemTest
Do not repeat content, use variable which is also better to read.
And do not add unnecessary, unused, variables.
2018-03-06 13:04:42 +01:00
42c9ae026f
Merge pull request #124 from Codappix/feature/120-pass-facets-configuration
!!!|FEATURE: 120 Pass facet configuration to search service
2018-03-06 12:59:50 +01:00
5d1e7c41bc
!!!|FEATURE: Pass facet configuration to search service
Do not limit integrator in possibilities to configure.

Therefore previously configure facets for a field need to be adjusted to
contain full configuration for elasticsearch. See changelog.

Resolves: #120
2018-03-06 12:05:32 +01:00
04aaad12fe
FEATURE: Provide ContentObjectDataProcessorAdapterProcessor
Allow integrator to execute any existing data processor for content
objects.

Resolves: #118
2018-03-06 11:16:00 +01:00
f0e58afe01
Merge remote-tracking branch 'origin/develop' into feature/116-execute-dataprocessor-on-result
Conflicts:
    Classes/Domain/Index/AbstractIndexer.php
    Documentation/source/configuration/indexing.rst
    Tests/Unit/Domain/Index/AbstractIndexerTest.php
2018-03-06 10:52:06 +01:00
176c466d7e
TASK: Update documentation for data processing 2018-03-06 10:47:14 +01:00
0210110ccf
TASK: Add test for applied data processing on search result 2018-03-06 10:26:39 +01:00
45bb12cf51
TASK: Add tests for search result model 2018-03-06 09:44:26 +01:00
cf91251be3
TASK :Add tests for SearchRequest
Make sure exceptions with helpful messages are thrown if one object is
missing when execute is called.

Also make sure the expected methods are called.
2018-03-06 09:36:39 +01:00
79aba3c544
TASK: Add test cases for ResultItem Model
Check whether all methods work as expected.

E.g. we can retrieve data in all ways, but not change anything.
2018-03-06 09:19:09 +01:00
769fb8237b
TASK: Add data processing to search result
Search results are now processed through data processing by search
service. The result will be a SearchResult model from our domain. Also
SearchResult will execute new queries, e.g. from paginate widget,
through SearchService to apply data processing again.

Remove duplicate stub code to trait, to keep own logic and code clean.
2018-03-06 09:04:47 +01:00
2998c43ba8
TASK: Refactor data processing
Use own service to handle data processing. Classes like indexer should
not know anything about the structure and how to process the data.

Also rename record to data, as we can process just any data in form of
an array.

Relates: #116
2018-03-01 08:03:51 +01:00
3bfe55cd33
Merge pull request #121 from Codappix/feature/117-use-extbase-object-manager-for-dataprocessor
FEATURE: Use extbase for processor instantiation
2018-02-27 19:53:57 +01:00
350f8a52b6
FEATURE: Use extbase for processor instantiation
This way injects will be resolved inside of processors, enabling
developers to inject dependencies.

We use inject instead of constructor as indexers mostly will change the
constructor and should not need to add the objectmanager.

Resolves: #117
2018-02-27 14:47:22 +01:00
fef2bdac89
Merge pull request #115 from Codappix/feature/112-resolve-relations-for-new-records
BUGFIX: Allow indexing of new records with their relations
2018-02-23 10:20:58 +01:00
f997717d03
Merge pull request #114 from Codappix/feature/support-php70
TASK: Support PHP 7.0
2018-02-23 10:20:46 +01:00
47b3282034
BUGFIX: Allow indexing of new records with their relations
Relations were inserted by TYPO3's DataHandler after indexing and were
therefore not indexed.

We now use a later hook after DataHandler has finished everything, so we
know that we can index. As it's not relevant, we do not differentiate
between add and update anymore, as both trigger "indexDocument" internal.

Resolves: #112
2018-02-22 22:14:44 +01:00
ebaeaf4c92
TASK: Support PHP 7.0
As some (e.g. debian) do not provide PHP 7.1 and we did not use so much
features which were introduced in PHP 7.1, we add support for PHP 7.0.
2018-02-22 21:59:13 +01:00
f42b58bdcf
Merge pull request #113 from Codappix/hotfix/111-do-not-register-elasticsearch-by-default
FEATURE: Allow to disable elasticsearch integration
2018-02-22 21:32:19 +01:00
92af364b8d
FEATURE: Allow to disable elasticsearch integration
This extension currently ships with Elasticsearch integration which is
enabled by default. This behaviour is kept for backwards compatibility.
Still you now have the possibility to disable this integration in
extension manager, just check the "disable" box for elasticsearch.

In the future elasticsearch will become another extension and no default
is shipped with search_core. But for now, as we are still in alpha /
beta phase we keep things together to keep development fast.

Resolves: #111
2018-02-22 20:56:51 +01:00
ebf722a03e TASK: Fix license for packagist 2018-01-30 14:35:31 +01:00
33d4116fe6 TASK: Fix license for packagist 2018-01-30 14:33:18 +01:00
Justus Leon Moroni
07c9d5a136
Merge pull request #107 from Codappix/hotfix/fix-frontend-issue-with-relation-resolver
BUGFIX: Make BackendUtility usable in frontend
2018-01-30 10:29:45 +01:00
Justus Moroni
c994a32ac1 BUGFIX: Make BackendUtility usable in frontend
BackendUtility used LanguageService which only works
in the backend.
Extend BackendUtility and use TSFE instead.
2018-01-29 22:49:29 +01:00
bdecbf9699 TASK: Fix license for packagist 2018-01-29 22:46:47 +01:00
9cad547b09
Merge pull request #105 from Codappix/feature/configure-fields-to-search
FEATURE: Provide new feature to configure fields to search in
2017-12-04 21:36:29 +01:00
5ba860b8de
TASK: Add new test covering new feature 2017-11-29 20:00:10 +01:00
e3151e802c
TASK: Fix broken unit tests
Adjust tests to match new queries built with multiple fields.
2017-11-29 19:52:10 +01:00
0006148a52
TASK: Fix broken functional tests
Add new default TypoScript to not break tests.
2017-11-29 19:43:16 +01:00
02ef86b67b
FEATURE: Provide new feature to configure fields to search in
This enables you to search only in some fields.
Also if some fields contain mapping, you can add them in addition to
e.g. `_all`.
2017-11-29 18:57:09 +01:00
0bac2df6a4
BUGFIX: Fix broken dependencies 2017-11-11 17:01:50 +01:00
b7b783a7fe
TASK: Use Code Sniffer at travis
This way we need no external service.
Each developer can fully run all tests and cgl on local environment.
Also this integrated better into IDEs and editors.
2017-11-11 16:52:02 +01:00
689d8f0c53
Merge pull request #96 from Codappix/feature/refactor-dataprocessing
!!!|FEATURE: Make data processing available to all indexer
2017-11-10 22:05:49 +01:00
7472cab660
Merge pull request #98 from Codappix/feature/provide-form-finisher
FEATURE: Provide form finisher for integration into form extension
2017-11-10 22:05:34 +01:00
03d4d7493c
Merge pull request #99 from Codappix/feature/provide-index-deletion-command
FEATURE: Provide command to delete whole index
2017-11-10 22:05:02 +01:00
1840eba07b
Merge pull request #100 from Codappix/hotfix/if-record-can-not-be-updated-delete-it-instead
BUGFIX: Remove records during update if no longer available
2017-11-10 22:04:48 +01:00
0815eaff6b
BUGFIX: Remove records during update if no longer available
E.g. update is to deactivate a record. In this case we will not be able
to update the record but should delete him instead.
2017-11-10 13:48:53 +01:00
a3a46f5cb5
FEATURE: Provide command to delete whole index
This is necessary, e.g. for complete re-indexing.
2017-11-10 13:22:15 +01:00
31202f8882
FEATURE: Provide form finisher for integration into form extension
Provide a finisher, working as a proxy, to internal data handler, which
is already used for Hooks in TYPO3 backend.
2017-11-10 12:31:06 +01:00
ea8eb8148e
Merge pull request #95 from Codappix/feature/dataprocessor-remove
FEATURE: Add data processor to remove fields for indexing
2017-11-08 21:16:48 +01:00
e1a14b2f04
!!!|FEATURE: Make data processing available to all indexer
Before data processing was applied for TCA only, through tca table
service.
Now it's applied much later in process and in abstract indexer.
Therefore all indexer will run data processing if configured.
2017-11-08 21:05:53 +01:00