Commit graph

15 commits

Author SHA1 Message Date
65898e97e0
Rector up to PHP 8.1 2023-12-04 15:40:10 +01:00
d39053b498
Support TYPO3 v12 and PHP 8.3
Use rector, PHPUnit, Codeception and PHPStan to find and fix issues.
2023-12-04 12:18:51 +01:00
773098623e Add command to allow import of a single configuration.
The command is also available as scheduler task.
This finally allows to regularly execute imports.
This also allows to import from CLI context
with differently configured timeouts.
2023-08-29 11:04:22 +02:00
723ea3b512
Skip import of none mappable objects (#100)
The schema is very flexible and some values are not validated upfront.
This will result in many objects which we currently can not map.
This resulted in an exception breaking the rest of the import.
We now handle the broken mapping and skip those objects with proper
logging.
This allows to continue with import and report and debug those objects
in order to improve the mapping step by step.

Relates: #10198
2022-12-15 12:41:35 +01:00
dd0f08e157 Fix none working Extbase queries
The queries missed an call to matching() to actually apply the
constraint.
2021-09-08 11:03:21 +02:00
cc216429a5 Add parking_facility_near_by
- Removed individual converters for TYPO3.
  Conversion is now handled in a single converter.
- The new converter will import necessary dependencies upfront, e.g.
  town or organisation.
- Move import state into extra class.

Relates: #34
2021-09-06 13:47:12 +02:00
7c8dd0df3b Cleanup refactoring after big refactoring 2021-08-12 09:46:37 +02:00
bfd4c77a17 Refactor parsing of JSON-LD
Use Symfony components to map incoming JSON onto objects.
Those provide a mapping. They can then be used to fetch the data in a
common way and insert it into the system.

- Handle languages within JsonDecode
  (normalize incoming data based on language)
- Handle Single Value and List of Values within Entities. They will map
  incoming Data to proper Objects. (We now generally transform during
  serialization process if target is array but we got single entity)
- Add missing tests for existing data.
- Finish migration of all existing data, this includes next step
- Provide discriminator to ObjectNormalizer to auto detect target class
  based on "type" property. (Done for now by own registry)
- Combine generated object with current structure for import -> generate
  data array out of it.
- Resolve foreign references to existing entities,
  (images, contentresponsible, etc.)
2021-08-12 09:46:37 +02:00
dc09713884 Move namespace below initial file comment 2021-08-10 09:41:54 +02:00
6b19485a36 Handle resources with missing containedInPlace
Check for situation and return empty array.
Do not create unnecessary requests to database but directly return.
2021-06-08 14:05:24 +02:00
e13bb35252 Handle removed configuration in log overview
Resolves: #13
2021-06-01 11:23:25 +02:00
c91f665d98 Make compatible with PHP 7.3
As some projects still might run on PHP 7.3 and supported TYPO3 version
still supports 7.3.
2021-04-13 15:32:10 +02:00
dc5a4546f3 Ensure proper types when saving import log
Insertion is stored as integer in database.
Therefore cast boolean to integer.
Otherwise DataHandler might throw error as saved data type differs from
provided data type.
2021-02-16 11:09:18 +01:00
ded93e0d8e Integrate phpstan 2021-02-16 11:09:18 +01:00
dc1c45f1c1 Initial import mechanism
Provide first basic import mechanism.
It already allows to import entities into TYPO3 database.
Three entities are supported.

Entities are configured through import configuration.
This can be created, viewed, and edited through backend module.

Imports are tracked and accessible from backend module.

Still this is basic.
Importing lists of entities is not supported.
Multiple languages is not supported, etc.

Relates: #8214
2021-02-16 11:09:18 +01:00