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.
Allow editors to select specific events to display.
Therefore add new necessary demand and setting for events and respect
them within repository.
Relates: #8092
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
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
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
* 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
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
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
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