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
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
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
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
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
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
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
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
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
43ec410eb5
Merge pull request #93 from Codappix/hotfix/allow-empty-filter
...
BUGFIX: Do not remove submitted filter if configured one is empty
2017-11-02 22:41:20 +01:00
8206a1ec59
BUGFIX: Do not remove submitted filter if configured one is empty
...
This will be the case if you add a flexform to the plugin with no value.
Then an empty filter is configured and you will not be able to submit a
value for this filter.
2017-10-29 17:08:33 +01:00
c38f7b9d6a
TASK: Move configuration logic into own class
...
Also add tests for new code.
2017-10-29 13:44:17 +01:00
bf91c4a5ba
TASK: Allow fields and sorting to contain a condition
...
This way integrators can configure when the sorting and fields should be
added.
2017-10-29 12:25:25 +01:00
07a4fec622
WIP|FEATURE: Allow fields and sorting to be configurable
2017-10-23 16:35:38 +02:00
b1f81c0d3b
WIP|FEATURE: Add field and sorting
...
Sort result by distance and provide distance to result items.
2017-10-22 17:51:04 +02:00
8d343ee97f
FEATURE: Finish filter configuration for geo_search
2017-10-22 17:34:48 +02:00
636ef78a14
WIP|TASK: Remove sort and add filter
...
As we filter for distance and do not sort.
2017-10-22 11:23:28 +02:00
3f1c3db2a2
Merge remote-tracking branch 'origin/develop' into feature/geo-search
...
Conflicts:
Classes/DataProcessing/ProcessorInterface.php
Classes/Domain/Index/TcaIndexer/TcaTableService.php
2017-10-20 09:20:04 +02:00
5026de0acd
Merge remote-tracking branch 'origin/develop' into bugfix/do-not-fetch-non-existing-db-fields
2017-10-14 15:41:21 +02:00
2c466854b2
BUGFIX: Do not add non existing db columns to fields array
...
As TCA might contain columns which do not exist in DB, filter them out.
2017-10-14 15:23:13 +02:00
6c01abe5a5
BUGFIX: Also handle data processor without configuration
2017-10-14 13:35:44 +02:00
efeb5d1e07
FEATURE: Add data processing to extension
...
Allow integrators / developer to apply data processing concept known
from FLUIDTEMPLATE to indexing.
2017-10-14 13:02:48 +02:00
fafa919f37
WIP|FEATURE: Basic hardcoded implementation
2017-09-16 20:50:03 +02:00
13004e86f2
FEATURE: Allow filter mode by not forcing a search term
2017-09-15 21:54:47 +02:00
4de1828905
FIX: Fix phpcs issues with annotations
2017-09-15 21:36:52 +02:00
be75248517
FEATURE: Allow configured filters
...
Add new feature to allow pre configured filters. The filters will be
applied to all requests.
2017-09-15 21:35:52 +02:00
d45d231585
Merge remote-tracking branch 'origin/develop' into feature/cms-8-support
2017-09-05 19:26:09 +02:00
fcaf1efc79
Merge pull request #82 from Codappix/feature/add-pagination
...
FEATURE: Implement necessary logic to support PaginateViewHelper
2017-08-29 09:25:32 +02:00
efc2fb7da6
BUGFIX: Remove pr issue
2017-08-25 11:46:46 +02:00
3bb875d99a
Merge pull request #81 from Codappix/feature/support-timing-inheritance-for-pages
...
FEATURE: Respect inherited start- and endtime for pages
2017-08-25 11:44:20 +02:00
fe754964fe
BUGFIX: Fetch record to update
2017-08-21 12:10:34 +02:00
9617733826
BUGFIX: Fix accessing non existing property
2017-08-15 09:36:25 +02:00
8b28d5eda6
Merge remote-tracking branch 'origin/develop' into feature/cms-8-support
...
Conflicts:
Configuration/TypoScript/constants.txt
2017-08-15 09:35:05 +02:00
040206c95d
FEATURE: Respect further root line cases
...
Respect the following situations during indexing:
- Page is not reachable due to broken root line.
- Page is not reachable due to being below a recycler.
2017-08-15 09:21:04 +02:00
f311357d0e
TASK: Fix indentation
2017-08-15 08:30:49 +02:00
bd8ed737e2
Merge remote-tracking branch 'origin/develop' into feature/add-pagination
...
Conflicts:
Classes/Domain/Search/QueryFactory.php
2017-08-15 08:29:48 +02:00
ef7c1b680c
Merge pull request #78 from Codappix/feature/small-improvements
...
Feature: Small improvements
2017-08-15 08:08:10 +02:00
416e49026e
TASK: Break line exceeding max line length
2017-08-10 09:05:20 +02:00
c5766f5b12
BUGFIX: Use fresh query for each creation
...
This prevents issues with modifying an build query.
2017-08-10 08:54:36 +02:00
f7e1bd1cdf
FEATURE: Implement necessary logic to support PaginateViewHelper
2017-08-08 17:19:50 +02:00
17eb35a92b
FEATURE: Respect inherited start- and endtime for pages
...
Do not index records below tables that extend their start- or endtime to
their subpages are not accessible due to timing now.
2017-08-08 12:58:01 +02:00
49a56496c6
TASK: Fix codacy issues
...
Break line to not exceed maximum line length.
Use imported namespace to shorten line.
2017-08-08 11:54:32 +02:00
0fa05270d5
Merge branch 'feature/small-improvements' into feature/cms-8-support
2017-08-04 13:40:53 +02:00
56ce88b005
TASK: Resolve relations always to array
...
Do not resolve to empty string but array to allow same handling for all
relations.
2017-08-04 13:39:18 +02:00
96cfa46056
Merge remote-tracking branch 'origin/develop' into feature/cms-8-support
2017-08-04 13:01:33 +02:00
d59173ec9a
Merge remote-tracking branch 'origin/develop' into feature/cms-8-support
2017-07-28 11:45:09 +02:00
da7692b502
TASK: Adjust code accordingly to pr
2017-07-27 16:31:37 +02:00
36777c700b
Merge remote-tracking branch 'origin/develop' into feature/switch-from-ttcontent-to-pages
2017-07-27 16:26:24 +02:00
3973d981d4
Merge pull request #71 from Codappix/feature/boosting
...
FEATURE: Add possibility to boost certain fields
2017-07-27 16:05:03 +02:00
0f4186048c
Merge branch 'develop' into feature/boosting
2017-07-27 14:48:43 +02:00
3771e6f8f9
Merge branch 'develop' into feature/configure-result-size
2017-07-27 14:41:30 +02:00
324137711e
Merge pull request #65 from Codappix/feature/allow-exchange-of-limit
...
TASK: Allow sub indexer to exchange limit
2017-07-27 14:28:04 +02:00
f436a02f55
FEATURE: Add field_value_factor support through configuration
2017-07-27 14:20:37 +02:00
334bb34625
TASK: Cleanup code
...
Use get and use an try catch. Receiving null through ifExists will
result in an php error.
2017-07-27 13:00:51 +02:00
f138cd9034
FEATURE: Add possibility to boost certain fields
...
Allow configuration via TS to boost certain fields during searching.
2017-07-25 15:38:40 +02:00
6462052c9b
FEATURE: Add ngram
...
Provide configuration for index.
Provide minimum_should_match configuration.
2017-07-25 09:52:17 +02:00
7722c37ea5
TASK: Check multiple fields for pages to be used as title
2017-07-20 14:22:52 +02:00
e8a84a8ecc
TASK: Remove temp variable
2017-07-20 13:48:27 +02:00
b832a6e6b3
TASK: Allow sub indexer to exchange limit
...
As long as it's not configurable, allow concrete implementations to
exchange. Necessary for one customer at the moment.
2017-07-20 09:48:44 +02:00
e2c1846d6b
BUGFIX: Allow parent implementation to access content entry
...
E.g. it's possible to configure search_abstract to contain the value of
any record entry. Still content was not possible as it was set
afterwards.
2017-07-18 14:19:32 +02:00
1030e8d5cf
FEATURE: Make number of search results to fetch configurable
2017-07-18 10:44:39 +02:00
b6ab05bac7
FEATURE: Switch from ttcontent to pages
...
Also provide search_abstract as new auto added field which is
configurable.
2017-07-13 12:51:36 +02:00
2cd5debf97
BUGFIX: Fix broken getRecord method
...
Also add test covering method.
2017-07-07 16:44:57 +02:00
d61a86f8fe
TASK: Finish TYPO3 CMS 8 update
2017-07-07 16:16:49 +02:00
cf902dde83
TASK: Make extension more compatible
...
Migrate sql to doctrine.
Migrate relation resolver to use new API.
2017-07-07 14:44:32 +02:00
fc3c12fa96
BUGFIX: Allow tests to run without database connection
...
Ad TYPO3 Core now makes use of Doctrine, a connection is required to
build system where. Therefore we move it to an own method to exchange
the execution inside of tests.
2017-07-07 12:19:35 +02:00
3d90bad58d
Merge remote-tracking branch 'origin/develop' into feature/cms-8-support
2017-07-07 11:58:15 +02:00
c58e13cdf6
TASK: Rename vendor
...
As we move it from private repo to codappix.
2017-07-06 23:48:47 +02:00
05f846a1cf
Update existing unit tests
...
Make existing unit tests work with new code base.
Also add new tests for new code to existing tests.
2017-07-06 13:53:29 +02:00
975381cc4a
TASK: Integrate working code
...
Copied code from customer installation with working implementation.
2017-07-06 12:03:52 +02:00
432335c80d
FEATURE: Allow custom indexer
...
Adjust code to use defined indexer as FQCN, to allow any class to be
used as indexer. Also classes defined by user.
2017-07-04 12:12:36 +02:00
03a953c13f
TASK: Add unit test covering configuration option
...
Add test to cover option to configure user defined
additionalWhereClause.
2017-07-04 10:27:03 +02:00
9d20524706
WIP|TASK: Use new TYPO3
...
Use testing framework configuration.
Use new db.
Begin with replacement of old TYPO3_DB.
2017-07-04 10:12:47 +02:00
4c7bc8b9f5
Merge branch 'feature/filter' into feature/restructure-configuration
2017-06-29 08:45:36 +02:00
3553c443e2
FEATURE: Adjust configuration structure
...
* To support further configuration, specific to identifiers / tables.
* E.g. mapping and boost configuration should be possible.
* Adjust docs and settings.
* Adjust tests and code.
2017-06-27 16:51:33 +02:00
18b7f2d8b1
Merge branch 'develop' into feature/filter
2017-06-27 15:02:25 +02:00
f453592b39
TASK: Add further tests and cast search input
...
* Map user input to string in any case.
* Add tests to check whether filter is added to query.
* Add test to check whether input is casted to string.
2017-06-08 08:38:14 +02:00
f4a9531fe5
TASK: Remove unnecessary code
...
* As filter is already in the format we need, we can just use it instead
of using a foreach.
2017-06-06 16:25:35 +02:00
f5729c2763
BUGFIX: Keep return type
...
* Return boolean type.
2017-06-06 15:33:06 +02:00
1a41c5e237
FEATURE: Add filter to search
...
* Allow to filter results by field values.
2017-06-06 13:53:08 +02:00
3a2523e1d2
WIP|FEATURE: First basic implementation of filter
...
* Working version without further architecture.
* Manually tested.
* Still need to move to new architecture and cover with tests.
2017-06-06 12:32:27 +02:00
ea1e3640dd
TASK: Fix CGL
2017-05-11 14:36:12 +02:00
687ba8075d
TASK: Migrate RelationResolver to FormEngine
...
* Replace old implementation for TYPO3 6.x with new one for rewritten
form engine in 7.x and up.
2017-05-11 12:39:56 +02:00
350f906016
BUGFIX: Don't index null records
...
* Check null beside false for db result.
2017-05-11 09:16:24 +02:00
8bea39217e
BUGFIX: Don't break if no more records exist
2017-01-26 14:57:23 +01:00
8e062d6e42
BUGFIX: Respect additionalWhereClause and rootline
...
* Use constants instead of setup.
* Grap configuration from path.
* Add where clause.
2017-01-26 14:37:17 +01:00
8448618f60
FIX: Catch deletion of non existing documents
...
* Catch exception raised during deletion of documents that are not
already indexed.
* Log failed deletion tries.
* Add new necessary Exceptions.
2017-01-26 11:01:00 +01:00
d358714d0d
BUGFIX: Handle non available records during indexing
...
* E.g. a hidden record is edited.
2017-01-12 14:26:09 +01:00
77555e359f
CLEANUP: Scrutinizer issues
2016-12-20 16:54:46 +01:00
257b23d8e6
Merge pull request #38 from DanielSiepmann/feature/17-resolve-inline-relations
...
FEATURE: Resolve further relations
2016-12-20 12:19:03 +01:00
dc489d6bb8
CLEANUP: Refactor code
2016-12-20 12:10:28 +01:00
9bf2657318
FEATURE: Resolve further relations
...
* Resolve static select items
* Add test for further relation resolvings
Relates: #17
2016-12-20 11:49:02 +01:00
5989b65ae0
FEATURE: Split configuration to support the concepts
...
* Add a further level in configurations to support multiple connections
and indexer.
Relates: #31
2016-12-20 10:04:44 +01:00
03cc77f336
CLEANUP: Fix code style issues
2016-12-15 14:28:10 +01:00
541c6db53a
FEATURE: Allow to configure tables to be processed
...
* Add typoscript option which TYPO3 tables should be processed and which
should not be processed.
* Respect new optiion in hook.
* Also add necessary tests.
* Remove old no longer needed tests for hook.
2016-12-15 14:04:26 +01:00