Commit graph

115 commits

Author SHA1 Message Date
689f293194
TASK: Finish deletion of index and documents feature
We replace the "flush" and "delete" by "delete" and "deletedocuments"
logic. This makes it more obvious what will happen, without reading the
docs.

Also we kept the logic to always provide the index name, as
we will need them in the future. Due to elasticsearch v6 changes no
types are allowed in the same index in the future. Therefore we need to
make it possible to use different indexes in the future, leading to the
need to provide the document type all the time.
2018-12-30 13:43:43 +01:00
9c2db0b5ba
TASK: Remove custom filter for fe group filtering
As this didn't work on first use. Also no tests are available for this
feature yet.

As we remove the whole feature in a single commit, we can revert this
commit later. This way we can upgrade Elasticsearch and provide this
feature later on.
2018-12-29 17:59:23 +01:00
Benjamin Serfhos
2ee4a88a67 [TASK] Add objectmanager via constructor DI injection 2018-10-29 14:30:40 +01:00
Benjamin Serfhos
209f441b5d [TASK] Added link generation based on fluid templates
Removed search_page_typolink parameter from index
2018-10-29 14:30:37 +01:00
Benjamin Serfhos
5250f97809 [BUGFIX] Make sure boolean is returned for strict return type
When configured by comma seperate list, it should return true
2018-10-29 14:01:03 +01:00
Benjamin Serfhos
9b0b0305a7 [BUGFIX] Make sure the while loop is not closed
When filterRecordsByRootLineBlacklist() returns no results, loop should just ask
the next items based on iteration
2018-10-29 14:00:02 +01:00
Benjamin Serfhos
f1eb85de64 [TASK] Remove double variables 2018-10-29 14:00:02 +01:00
Benjamin Serfhos
ab1b6b5da9 [TASK] Finetune so interface is not reliant for Elastica library 2018-10-29 13:59:51 +01:00
2d9062b6e3
TASK: Streamline phpdoc
* Do not add duplicate information from PHP to phpdoc.
* Do not add useless comments like "this is a constructor of class x".
2018-10-27 14:08:11 +02:00
2c6521a565
TASK: Fix phpdocs and type hints 2018-10-27 13:10:59 +02:00
30a34c4f15
FEATURE: Always accept comma separated list of identifiers on CLI
* Streamline all commands to always accept a comma separated list of
  identifiers.
* Adjust phpdoc to reflect this feature and provide help on CLI.
* Refactor code to move recurring logic to own method.
* Provide tests for new feature.
* Add documentation for feature.
2018-10-27 13:07:20 +02:00
Benjamin Serfhos
a3ccc123c4 [TASK] Make sure CGL is correct 2018-10-26 11:29:37 +02:00
Benjamin Serfhos
b70dd604fe [TASK] Process own feedback based on tests 2018-10-26 09:26:33 +02:00
Benjamin Serfhos
028914e789 [TASK] Finetune query for document_type instead of regex 2018-10-24 14:08:59 +02:00
Benjamin Serfhos
519bc7e5b4 [BUGFIX] Inherit access groups from parent pages when extended to subpages 2018-10-24 10:09:22 +02:00
Benjamin Serfhos
3f5273f0fe [BUGFIX] Make sure the while loop is not closed when filterRecordsByRootLineBlacklist() returns no results 2018-10-22 17:28:49 +02:00
Benjamin Serfhos
7566bf93d5 [FEATURE] Add Frontend User access query for secure search on elastic index 2018-10-22 17:28:17 +02:00
Benjamin Serfhos
404f49aad2 [TASK] Add opening for possible user access lookup 2018-10-12 18:43:28 +02:00
Benjamin Serfhos
e297d556e6 [!!!][FEATURE] Remap specific document type's to ES6 identifiers
Multiple types are not allowed any more in ES6. Refactored to use document type and custom
identifier to still create different 'types'.

See: https://www.elastic.co/guide/en/elasticsearch/reference/6.x/removal-of-types.html
2018-10-12 09:30:25 +02:00
Benjamin Serfhos
1f0eae88f7 [TASK] Corectly index access group for query content 2018-10-08 11:57:26 +02:00
Benjamin Serfhos
d0bbfb8682 [TASK] Add typolink to index 2018-10-03 11:59:56 +02:00
Benjamin Serfhos
a93a7af27f [TASK] Add docprops to classes
+ Updated version pointer
+ Replaces deprecated ArrayUtility for Core utility
2018-10-03 10:59:45 +02:00
244b0d9b12
TASK: Refactor column value in own method
This allows to replace this single part of code in own implementations.
2018-09-05 13:42:13 +02:00
dfb3f897e7
!!!|FEATURE: Extract relation resolver to data processor
Instead of hardcoding and tight coupling of relation resolving, we now
provide a dataprocessor instead.

Therefore you need to configure resolving for each indexed type.

This resolves #149 and #147.
2018-04-24 11:00:29 +02:00
0d57374f25
Merge remote-tracking branch 'origin/develop' into feature/147-handle-rendertype-inputDateTime
Conflicts:
    Tests/Unit/Domain/Index/TcaIndexer/RelationResolverTest.php
2018-04-19 17:08:13 +02:00
82d397c428
FEATURE: Keep sys_language_uid while indexing
Before this change, sys_language_uid was indexed as an empty string, due
to internal used TYPO3 API.
We now skip the configure field which defines language uid. This way you
can build filter based on current language.

Resolves #148
2018-04-12 12:03:02 +02:00
c1d1e6ed68
BUGFIX: Do not resolve inputDateTime as relation
Add test which checks this behaviour.
Exclude inputDateTime from relation resolving.

Resolves #147
2018-04-12 12:01:07 +02:00
bb10f4f5d6 Merge remote-tracking branch 'origin/develop' into feature/134-allow-header-element-to-be-indexed 2018-03-16 17:28:56 +01:00
81b210b3b7 Merge remote-tracking branch 'origin/develop' into hotfix/135-limit-page-indexing 2018-03-15 16:03:30 +01:00
9c25f1560b Merge remote-tracking branch 'origin/develop' into feature/134-allow-header-element-to-be-indexed 2018-03-15 16:03:20 +01:00
2b78ffbe96
BUGFIX: Workaround doctrine limitation
Doctrine will not implode our array, so we have to do
2018-03-15 14:42:41 +01:00
f3e8dacd4e
TASK: Keep language information for all TYPO3 Versions
Keep code consistent. Fetch language field for both TYPO3 versions.
To make sure we do not mess up, add test case.
2018-03-15 13:59:47 +01:00
218d8d7289
FEATURE: Make content fields configurable
Allows integrators to configure which fields should be used to produce
field "content" for indexed pages.

Before only "bodytext" was used. This is now configurable and "header"
was added to defaults.

Resolves: #134
2018-03-15 09:15:26 +01:00
a232ae0b36
BUGFIX: Respect page uid of content records
Do not index content records of all pages while indexing pages in CMS
8.x.

We add same logic as for CMS 7.x, we extend the query to only fetch
records from current page.

Resolves: #135
2018-03-15 08:08:47 +01:00
835924a8d8
Merge remote-tracking branch 'origin/develop' into feature/support-typo3-7-to-8
Conflicts:
    Tests/Functional/Hooks/DataHandler/ProcessesAllowedTablesTest.php
    Tests/Unit/Domain/Index/TcaIndexer/TcaTableServiceTest.php
2018-03-14 20:13:03 +01:00
4d2c8f79ca
TASK: Use imported interface 2018-03-14 20:08:53 +01:00
b5b0acdc62
TASK: Provide sys_language_uid
Fetch sys_language_uid from database.
Until now we did not fetch system related fields from database. As there
is now a RemoveProcessor, integrators are able to remove fields.
Also providing this field enables basic multi language support.

Relates: #25
2018-03-14 19:56:03 +01:00
b2a63e9cb0
TASK: Make extension compatible with CMS 7.6 2018-03-13 20:34:56 +01:00
75335e2bc1
TASK: Do not import unnecessary namespace
As imported class is on same level as we are, we do not need to import
the class.
2018-03-13 11:03:57 +01:00
ba19537f4e
TASK: Migrate existing 7.6 features
We had some features in 7.6 support which we didn't merge up yet.
Mostly very small bug fixes or more helpful logging and processing of
elasticsearch options.

But also adding images of content elements while indexing pages.
2018-03-13 11:02:29 +01:00
a469f63aa6
TASK: Cleanup differences
We have some small differences between develop and support/76 branch.
This differences are just CGL and should not exist.
2018-03-13 10:51:59 +01:00
fc8017fdf4
TASK: Fix further issues reported by phan 2018-03-08 11:09:28 +01:00
4da9e86540
TASK: Remove unused use statements 2018-03-08 11:09:07 +01:00
8d930448e0
TASK: Fix scurtinizer issues 2018-03-06 17:58:19 +01:00
560597dcff
TASK: Cleanup type annotations and phpstan issues 2018-03-06 17:40:49 +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
ae51de9041
Merge remote-tracking branch 'origin/develop' into feature/phpcs-travis
Conflicts:
    Classes/Hook/DataHandler.php
2018-03-06 13:17:29 +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
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