Commit graph

264 commits

Author SHA1 Message Date
1929a4a566 Use sorting of categories
Extbase will properly use mm sorting.
But categories can't be sorted within the TCA tree component.
Therefore it makes more sense to use actual sys_category sorting.
In order to do so, we add our own model and pass the sorting.
That way PHP can do the sorting.

That's the easiest approach.
Also events shouldn't contain to many categories.  A performance impact
should not be high.

Relates: #8459
2021-09-07 07:52:28 +02:00
Dirk Koritnik
9a8ee30580 Increase image limit 2021-09-07 07:52:27 +02:00
Dirk Koritnik
2450f5c6b7 Switch to Storage Object for images 2021-09-07 07:52:27 +02:00
cbbe56775e Allow to add link for canceled dates
E.g. allow users to get info about refunds.

Relates: #8574
2021-09-07 07:52:26 +02:00
bfaa25c707 Do not allow self reference for postponed date 2021-09-07 07:52:26 +02:00
3012816123 Allow to delete events
Relates: #8570
2021-09-07 07:52:26 +02:00
10b4c34fe6 Allow to define a new date if current is postponed
Relates: #8092
2021-09-07 07:52:25 +02:00
c65ae5023f Allow integrator to set start or end for date via settings
Respect start and end when creating demand from settings.
That way integrator can configure it via TypoScript, or provide an
FlexForm.

Also the query was adjusted. It now respects a single value and doesn't
need start and end.
That way upcoming events can be created.

Relates: #8581
2021-09-07 07:52:25 +02:00
cf2b571fda Support manual sorting in foreign language
Given: Website uses copy / free mode of localization.
       and Editor selects specific events to display.
Then:  Those events should be displayed as selected.

Before this change the sorting was applied on uid of objects,
which is the uid of default lanugage record. But editors might select
localized uids. Therefore a fallback is added in case no object was
found.

Relates: #8557
2021-09-07 07:52:25 +02:00
Dirk Koritnik
4a8abbe344 Add getter and setter for caceled 2021-09-07 07:52:24 +02:00
Dirk Koritnik
ce723b01bc Extend date canceld form 2021-09-07 07:52:24 +02:00
Dirk Koritnik
55530ee062 Allow multiline in title and subtitle 2021-09-07 07:52:23 +02:00
Dirk Koritnik
9d2825ed18 Allow multiline in event name 2021-09-07 07:52:23 +02:00
afa6384636 Allow localization of event 2021-09-07 07:52:23 +02:00
4e2f191030 Fix broken demand support for categories
This was broken since changes during update.
2021-09-07 07:52:22 +02:00
cbd59a366d Support new DI
Provide Services.yaml to provide new DI.
Also remove deprecated command registration and move them into
Services.yaml.
2021-09-07 07:52:22 +02:00
59db0d6432 Do not limit 3 categories
There is no reason to limit.
By default there should be no limit.
If a specific installation needs a limit, it can set it itself.
2021-09-07 07:52:22 +02:00
Dirk Koritnik
431aa9bafa Inrease image limit in event 2021-09-07 07:52:21 +02:00
Dirk Koritnik
ce9a1e17e5 Add subtitle filed to event 2021-09-07 07:52:21 +02:00
Dirk Koritnik
8e755d775a Remove old plugin 2021-09-07 07:52:21 +02:00
Dirk Koritnik
1d6d91e9e2 Add location name to detail view 2021-09-07 07:52:20 +02:00
Dirk Koritnik
ea103cb002 Little cleanups and remove old plugin code 2021-09-07 07:52:20 +02:00
Dirk Koritnik
4c0a0a959b Restructure event TCA 2021-09-07 07:52:19 +02:00
Dirk Koritnik
201259d674 Add new icons 2021-09-07 07:52:19 +02:00
ca7340782b Allow an date to be marked as canceled
That has no effect, the info is just available from model.
This can be used to display a canceled date in a different way, or
render a notice.

Relates: #8092
2021-09-07 07:52:19 +02:00
f111884299 Refactor and streamline event code
Make controller smaller, remove unused code.
Move creation of demand object into its own factory.
Reduce npath complexity in repository and move parts into named methods.
2021-09-07 07:52:18 +02:00
17bd83eedf Provide new "Event selected" plugin
Allow editors to select specific events to display.
Therefore add new necessary demand and setting for events and respect
them within repository.

Relates: #8092
2021-09-07 07:52:18 +02:00
8da7284e1f Allow f:debug for event models
Private properties lead to an exception when using f:debug in Fluid.

Relates: #8092
2021-09-07 07:52:18 +02:00
43d8a1c0d6 Add partner
Add new record type partner.
This can be something like a media partner or something else.

Allow an event to have zero or more partner.
Add necessary files and models with relations.

Relates: #8092
2021-09-07 07:52:17 +02:00
38b4844a9d Add pages to events
Allow editor to reference TYPO3 page records from events.
E.g. used to provide further internal information links.

Also those pages are resolved via DataProcessing.
That allows integrators to be 100% flexible to resolve those page info.
By default a menu is generated and media is resolved.

Also validation is ignored, as this improves performance and allows to
use the new class as injected property without validation fails.
Models are not managed via frontend and therefore don't need validation.

Relates: #8092
2021-09-07 07:52:17 +02:00
acc0c2bdc5 Manually migrate cascade annotation
Relates: #8092
2021-09-07 07:52:17 +02:00
5a483b6b2a Allow to use plugin icon via identifier
The icon is still a placeholder.
Still we provide the identifier to already use it in sitepackages.
That way the extension can exchange the file, but foreign configuration
can stay.

Relates: #8092
2021-09-07 07:52:16 +02:00
cb50981a2b Setup unit testing
* Add dependency.
* Remove empty tearDown() methods.
* Fix signature of setUp() to be compatible with recent phpunit.
* Temporary fix syntax issues in test files

Relates: #8092
2021-09-07 07:52:16 +02:00
0c58be43ff Manual CGL adjustments
Not covered by PSR / phpcs

Relates: #8092
2021-09-07 07:52:15 +02:00
b7adb97cbc Adjust code and config to pass php code sniffer
Relates: #8092
2021-09-07 07:51:36 +02:00
59272afffd Add php code sniffer to follow PSR-12
Also apply ./vendor/bin/phpcbf to auto migrate what is possible.

Relates: #8092
2021-09-07 07:51:36 +02:00
9bb2b3963c Remove rector after auto code migration
Relates: #8092
2021-09-07 07:50:10 +02:00
b829a25738 Auto migrate code base to TYPO3 v10
Using:

    ./vendor/bin/typo3-rector process Classes Configuration ext_*

Relates: #8092
2021-09-07 07:50:09 +02:00
00a37644b2 Add rector to auto migrate to TYPO3 v10 2021-09-07 07:49:40 +02:00
5a17f0c838 Add missing dependencies
The extension uses TYPO3 core extbase and fluid extensions.
Therefore they should be part of the require.
Otherwise a composer install will lead to an incomplete system setup for
development.

Also add generated files / folders to .gitignore.
Otherwise they might end up in git.

Relates: #8092
2021-09-07 07:49:39 +02:00
328a98218b State compatibility with v10
Even if the extension is not yet ready.
This is a work in progress, to ease transition we mark it compatible,
so we can easily install, test and adapt before we release.

Relates: #8092
2021-09-07 07:49:35 +02:00
Dirk Koritnik
3e428e5949 Update ext_emconf.php 2021-08-12 10:29:30 +00:00
Dirk Koritnik
a5cef0ac8f Merge branch 'feature/category-filter' into 'master'
Add categories filter

See merge request typo3/events!7
2021-08-12 09:56:43 +00:00
Dirk Koritnik
d102160717 Merge branch 'feature/search-category-titles' into 'master'
Apply search word search to categories titles

See merge request typo3/events!6
2021-07-16 06:40:12 +00:00
52f1fe8dc1 Add categories filter
Relates: #9171
2021-07-14 11:07:44 +02:00
e82df315a7 Apply search word search to categories titles 2021-07-13 14:04:56 +02:00
049e121183 Merge branch 'feature/9158-synonyms' into 'master'
Add synonym feature for date search

See merge request typo3/events!5
2021-07-13 11:16:00 +00:00
a332bffc25 Add synonym feature for date search
Allow configuration of synonyms via TypoScript.
This is taken into account when searching dates via submitted demand.

The configuration looks like the following:

    plugin.tx_events {
        settings {
            synonyms {
                10 {
                    word = Stadtführung
                    synonyms = Tour, Stadtführungen, Führung
                }
            }
        }
    }

The 10, 11, … is necessary as umlauts won't work as keys.
So `synonyms.Stadtführung = Tour, Stadtführungen` will not work.

Relates: #9158
2021-07-13 13:13:15 +02:00
Dirk Koritnik
77a10e7083 Merge branch 'dev' into 'master'
Merge dev to master before upgrade

See merge request typo3/events!2
2021-01-05 15:53:23 +01:00
Dirk Koritnik
991fcaa757 Merge branch 'master' into 'dev'
# Conflicts:
#   README.md
2021-01-05 15:53:15 +01:00