Commit graph

301 commits

Author SHA1 Message Date
Daniel Siepmann 96f07fd501 Ensure title of sys_file_metadata is not exceeded
The columns is limited by length.
We ensure we do crop incoming file names before adding them to the
database.
We would run into exception otherwise.
2022-06-28 11:39:12 +02:00
Daniel Siepmann fc8c2b3046 Do not enter endless loop while date creation
Entering the continue part would end in an endless loop.
We never add anything to $i and therefore would end up here.

Existing tests ensure we don't break something.
The new test ensures we do not hit endless loop anymore.
2022-06-27 16:07:36 +02:00
Daniel Siepmann 58d602c153 Allow to define midnight or now for todays dates 2022-05-16 13:30:18 +02:00
Daniel Siepmann 4d79220444 Add missing changelog for 2.3.3 2022-05-16 13:30:18 +02:00
Dirk Koritnik 7523872329 Allow no region in flexform. Increase version 2022-04-28 09:20:35 +02:00
Daniel Siepmann 8446855d96 Pin phpstan and extensions
New versions often introduce new issues breaking existing pipeline and
taking off time from the actual task.
We therefore pin versions do not get unexpected updates.
2022-04-25 07:53:27 +02:00
Daniel Siepmann c506720689 Respect that interval is now always set within timeIntervals
The property will always be set in the future.
We no longer can use it as an indicator.

We switch to freq as new indicator.
We also ensure that start has to be given for a single date.

Relates: #9892
2022-04-25 07:47:47 +02:00
Daniel Siepmann 425da4bb33 Update phpstan issues 2022-04-21 09:36:51 +02:00
Daniel Siepmann 4ef67b9bae Refactor date creation during import
Split into own class to encapsulate the logic.
2022-04-21 09:30:23 +02:00
Daniel Siepmann 948f571f9d Extend functional test with daily and weekly frequency
Both are supported during import from destination data.
But both were not part of functional tests yet.
They are added in order to ensure that future changes wont break import
of that data
2022-04-21 08:29:45 +02:00
Dirk Koritnik fe93eeeb48 Add new icon for configuration data 2022-02-03 15:54:27 +01:00
Daniel Siepmann 3d6bf0ac8a Add import configuration record
It is now possible to create "Import" records in TYPO3 system.
Those records can then be imported via two new commands.
There is no need to configure everything within the command itself.

That allows:
    * To allow editors to maintain import configuration.
    * Have proper labels, description, csh and UI to create import.
      It no longer is necessary to copy UIDs,
      instead proper wizards from TCA are available to select pages.

Relates: #9649
2022-01-27 15:50:36 +01:00
Daniel Siepmann 4bc4f34525 Add support for search query in DO import command
Relates: #9648
2022-01-27 07:57:05 +01:00
Daniel Siepmann 8044ddf30f Make use of prophesize cross version support 2022-01-26 15:56:28 +01:00
Daniel Siepmann b5d095659a Use new import class and move url building and fetching 2022-01-26 15:15:15 +01:00
Daniel Siepmann 295ad8645a Don't break PHPStan due to updated dependencies type hints 2022-01-26 15:04:28 +01:00
Daniel Siepmann c3333f0147 Fix example data to work for some years
There was still one entry which reached end of life and was increased.
2022-01-26 15:02:21 +01:00
Daniel Siepmann dcb071fe3d Actually execute phpstan in phpstan 7.2 job, not phpunit 2022-01-26 15:02:20 +01:00
Daniel Siepmann a55f685abc Support composer v2.2.x
The new LTS has a new allow-plugins feature which we configure.
2022-01-26 13:59:52 +01:00
Daniel Siepmann 3c4fff0879 Add changelog for upcoming 2.2.0 2021-12-20 10:34:22 +01:00
Daniel Siepmann c6ca707b1c Fix warnings in higher PHP versions ending up in TYPO3 log 2021-12-20 10:20:47 +01:00
Daniel Siepmann 06d111e132 Do not trigger warning if no category was configured
The import already worked without category, but triggered a warning.
Tests were extended to always work with category, except in new test
case.
All tests were extended to check for empty logs in the end.

The import now checks whether category should be imported and ignores
further processing if not configured.

Relates: #9542
2021-12-20 10:15:26 +01:00
Daniel Siepmann eecbb1feb4 Remove useless file
This got introduced somewhere during refactoring but was left empty
anyway.
2021-12-20 10:15:09 +01:00
Daniel Siepmann ab9c3e0c4e Fix broken remove past data
Past data is now removed again.
A test ensures the functionality.
Data is no longer marked as deleted but is actually deleted.

Relates: #9543
2021-12-20 09:45:25 +01:00
Daniel Siepmann a8c475fbd7 Reflect TYPO3 behaviour in tests
TYPO3 scheduler tasks always have a value for console commands.
Region uid will be an empty string if omitted within scheduler task.
We reflect that in our tests and adapt code to not break.
Furthermore tests call only with strings, as that's what TYPO3 does.
2021-12-16 14:34:17 +01:00
Daniel Siepmann 6aa4681cb9 Delete files which were referenced by events objects
Adjust existing code base to not use hardcoded file path.
Instead use info from database and check all files which have references
to event objects.

Also add test to cover feature.
2021-12-16 14:07:32 +01:00
Daniel Siepmann f06f9c3303 Use empty image for tests
We do not need content, so no need for an actual image which uses space
and might have some license.
2021-12-16 13:20:43 +01:00
Daniel Siepmann 410f5ab534 Fix naming of test 2021-12-16 13:20:16 +01:00
Daniel Siepmann fb2eceb5e6 Refactor tests to move common code into parent class
This keeps tests smaller and everyone can see the setup of the test and
assertions, without boilerplate code in between.
2021-12-16 10:12:26 +01:00
Daniel Siepmann 15dec49445 Remove usage of uploads folder, use transient API instead
Relates: #9533
2021-12-16 10:00:51 +01:00
Daniel Siepmann de82e395e6 Fix Coding Guideline check on CI
The current setup actually fixed and didn't check or fail.
That's changed and code is fixed.
2021-12-16 09:13:15 +01:00
Daniel Siepmann 0e5cd38176 Add first basic functional test for import
The test ensures import runs with a small example set of events.

We needed to alter fetching of images, in order to properly mock
responses.
2021-12-16 09:08:16 +01:00
Daniel Siepmann 73161fa24e Make region optional during import 2021-12-14 17:31:56 +01:00
Daniel Siepmann 29c31375a5 Remove PHPStan issues
Most were fixed, some were ignored on top level.
2021-12-14 17:31:46 +01:00
Daniel Siepmann a576709947 Use dependency injection within command
Do not fetch service with legacy API, instead use proper Dependency
Injection.

Relates: #9532
2021-12-14 16:09:42 +01:00
Daniel Siepmann c2e648b2c5 Remove no longer existing ctrl entry 2021-12-13 09:42:24 +01:00
Daniel Siepmann 0d0c64f419 Fix PHPStan issues 2021-12-13 09:27:28 +01:00
Daniel Siepmann b430993655 Remove execution rights from php file 2021-12-13 08:51:32 +01:00
Daniel Siepmann c09c3ffb57 Add proper description to command output in v11 2021-12-13 08:48:44 +01:00
Daniel Siepmann ff3a577935 Add TYPO3 v11 configurations 2021-12-13 08:48:34 +01:00
Daniel Siepmann f44bcd5d04 Remove ExtensionBuilder related stuff 2021-12-13 08:48:22 +01:00
Daniel Siepmann d99e690a98 Migrate readme to Documentation 2021-12-13 08:48:10 +01:00
Daniel Siepmann a06ac46ae3 Add PHP 8.0 to CI 2021-12-13 08:29:20 +01:00
Daniel Siepmann 0764aa9f0f Add PHP 8.0 to CI 2021-12-13 08:29:16 +01:00
Daniel Siepmann fb0cb60b97 Update changelog 2021-12-08 09:12:26 +01:00
Daniel Siepmann 2f2957ef6c Cleanup Documentation
Remove all boilerplate which was not touched anyway.
Migrate from Settings.yml to Settings.cfg.
2021-12-08 09:11:22 +01:00
Daniel Siepmann 34dff294ea Add proper Changelog to documentation from now on 2021-12-08 09:06:57 +01:00
Daniel Siepmann ce3863619e Add query callback to date demand
This allows 3rd party to alter the query of dates when demand is used.
E.g. allow more complex filters specific for some situations like CEs.

Relates: #9505
2021-12-07 15:26:25 +01:00
Daniel Siepmann 30f030aab6 !!!|Show all coming + running dates by default
Only coming dates were shown by default.

Relates: #9505
2021-12-06 12:34:32 +01:00
Daniel Siepmann bc6aa4d359 Apply stdWrap to date demand settings
Move to a dedicated factory for easier re use.
Add dependencies and apply stdWrap to properties.
That allows to dynamically set values like dates by using stdWrap
features.

E.g.:

    settings {
        end {
            strtotime = midnight +1 day
        }
    }

Relates: #9505
2021-12-06 12:34:32 +01:00