chore: copy ep_products and ep_theme from EP/website@9593cc8
Copied unchanged from public/typo3conf/ext/ of EP/website at 9593cc8631354f8a363d6609de8b7433f669a9a0 (Git-tracked files only). History stays in the old repository. Only composer.json files are added so the extensions install as path packages. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
59afaecea1
commit
a46918de9d
778 files changed
+67000
-2
No files matched your search
Executable
+1
@@ -0,0 +1 @@
|
||||
deny from all
|
||||
@@ -0,0 +1,9 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
return [
|
||||
\EP\EpTheme\Domain\Model\Page::class => [
|
||||
'tableName' => 'pages',
|
||||
],
|
||||
];
|
||||
@@ -0,0 +1,64 @@
|
||||
<T3DataStructure>
|
||||
<meta>
|
||||
<langDisable>1</langDisable>
|
||||
</meta>
|
||||
<sheets>
|
||||
<sDEF>
|
||||
<ROOT>
|
||||
<TCEforms>
|
||||
<sheetTitle>Konfiguration</sheetTitle>
|
||||
</TCEforms>
|
||||
<type>array</type>
|
||||
<el>
|
||||
<buttons>
|
||||
<section>1</section>
|
||||
<type>array</type>
|
||||
<el>
|
||||
<container>
|
||||
<title>Button</title>
|
||||
<type>array</type>
|
||||
<el>
|
||||
<label>
|
||||
<TCEforms>
|
||||
<label>Label</label>
|
||||
<config>
|
||||
<type>input</type>
|
||||
<size>32</size>
|
||||
</config>
|
||||
</TCEforms>
|
||||
</label>
|
||||
<link>
|
||||
<TCEforms>
|
||||
<exclude>1</exclude>
|
||||
<label>Button</label>
|
||||
<config>
|
||||
<type>input</type>
|
||||
<eval>trim</eval>
|
||||
<size>30</size>
|
||||
<wizards type="array">
|
||||
<_PADDING type="integer">2</_PADDING>
|
||||
<link type="array">
|
||||
<type>popup</type>
|
||||
<title>Link</title>
|
||||
<icon>EXT:backend/Resources/Public/Images/FormFieldWizard/wizard_link.gif</icon>
|
||||
<module>
|
||||
<name>wizard_link</name>
|
||||
<urlParameters>
|
||||
<mode>wizard</mode>
|
||||
</urlParameters>
|
||||
</module>
|
||||
<JSopenParams>height=300,width=500,status=0,menubar=0,scrollbars=1</JSopenParams>
|
||||
</link>
|
||||
</wizards>
|
||||
</config>
|
||||
</TCEforms>
|
||||
</link>
|
||||
</el>
|
||||
</container>
|
||||
</el>
|
||||
</buttons>
|
||||
</el>
|
||||
</ROOT>
|
||||
</sDEF>
|
||||
</sheets>
|
||||
</T3DataStructure>
|
||||
@@ -0,0 +1,41 @@
|
||||
imports:
|
||||
- { resource: "EXT:rte_ckeditor/Configuration/RTE/Processing.yaml" }
|
||||
- { resource: "EXT:rte_ckeditor/Configuration/RTE/Editor/Base.yaml" }
|
||||
- { resource: "EXT:rte_ckeditor/Configuration/RTE/Editor/Plugins.yaml" }
|
||||
|
||||
editor:
|
||||
config:
|
||||
disableNativeSpellChecker: false
|
||||
contentsCss:
|
||||
- "EXT:ep_theme/Resources/Public/css/rte.css?v=2022.07-01"
|
||||
|
||||
stylesSet:
|
||||
- { name: "Button", element: "a", attributes: { 'class': 'rte-button' } }
|
||||
- { name: "Button volle Breite", element: "a", attributes: { 'class': 'rte-button--full' } }
|
||||
|
||||
toolbarGroups:
|
||||
- { name: styles, groups: [ format, styles ] }
|
||||
- { name: basicstyles, groups: [ basicstyles ] }
|
||||
- { name: paragraph, groups: [ list] }
|
||||
- "/"
|
||||
- { name: links, groups: [ links ] }
|
||||
- { name: clipboard, groups: [ clipboard, cleanup, undo ] }
|
||||
- { name: editing, groups: [ spellchecker ] }
|
||||
- { name: insert, groups: [ insert ] }
|
||||
- { name: tools, groups: [ table, specialchar ] }
|
||||
- { name: document, groups: [ mode ] }
|
||||
|
||||
format_tags: "p;h1;h2;h3;h4"
|
||||
|
||||
removePlugins:
|
||||
- image
|
||||
|
||||
removeButtons:
|
||||
- Anchor
|
||||
- Underline
|
||||
- Strike
|
||||
|
||||
buttons:
|
||||
link:
|
||||
queryParametersSelector:
|
||||
enabled: 1
|
||||
@@ -0,0 +1,37 @@
|
||||
imports:
|
||||
- { resource: "EXT:rte_ckeditor/Configuration/RTE/Processing.yaml" }
|
||||
- { resource: "EXT:rte_ckeditor/Configuration/RTE/Editor/Base.yaml" }
|
||||
- { resource: "EXT:rte_ckeditor/Configuration/RTE/Editor/Plugins.yaml" }
|
||||
|
||||
editor:
|
||||
config:
|
||||
height: 100
|
||||
disableNativeSpellChecker: false
|
||||
contentsCss:
|
||||
- "EXT:ep_theme/Resources/Public/css/rte.css?v=2020.02-01"
|
||||
|
||||
stylesSet:
|
||||
- { name: "Button", element: "a", attributes: { 'class': 'rte-button' } }
|
||||
- { name: "Button volle Breite", element: "a", attributes: { 'class': 'rte-button--full' } }
|
||||
|
||||
toolbarGroups:
|
||||
- { name: paragraph, groups: [ list] }
|
||||
- "/"
|
||||
- { name: links, groups: [ links ] }
|
||||
- { name: tools, groups: [ specialchar ] }
|
||||
- { name: document, groups: [ mode ] }
|
||||
|
||||
format_tags: "p;h1;h2;h3;h4"
|
||||
|
||||
removePlugins:
|
||||
- image
|
||||
|
||||
removeButtons:
|
||||
- Anchor
|
||||
- Underline
|
||||
- Strike
|
||||
|
||||
buttons:
|
||||
link:
|
||||
queryParametersSelector:
|
||||
enabled: 1
|
||||
@@ -0,0 +1,12 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'frontend' => [
|
||||
'ep/referrer' => [
|
||||
'target' => \EP\EpTheme\Middleware\ReferrerMiddleware::class,
|
||||
'after' => [
|
||||
'typo3/cms-frontend/site',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
@@ -0,0 +1,9 @@
|
||||
services:
|
||||
_defaults:
|
||||
autowire: true
|
||||
autoconfigure: true
|
||||
public: false
|
||||
|
||||
EP\EpTheme\:
|
||||
resource: '../Classes/*'
|
||||
exclude: '../Classes/Domain/Model/*'
|
||||
@@ -0,0 +1,155 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
|
||||
$temporaryColumns = [
|
||||
'tx_eptheme_context_pacode' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'PA Code für diese Seite',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 8,
|
||||
'eval' => 'trim',
|
||||
],
|
||||
],
|
||||
'tx_eptheme_context_country_code' => [
|
||||
'config' => [
|
||||
'type' => 'passthrough'
|
||||
],
|
||||
],
|
||||
'tx_eptheme_context_country' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Land',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_country',
|
||||
'foreign_table_where' => 'ORDER BY name',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_region' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Gebiet',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_region',
|
||||
'foreign_table_where' => 'ORDER BY name',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_hide_searchbar' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Suchschlitz NICHT anzeigen',
|
||||
'config' => [
|
||||
'type' => 'check'
|
||||
]
|
||||
],
|
||||
'tx_eptheme_new_tab' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Seite in neuem Tab/Fenster öffnen',
|
||||
'config' => [
|
||||
'type' => 'check'
|
||||
]
|
||||
],
|
||||
'tx_eptheme_bodyclass' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'CSS Klasse(n) für Body Tag',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
]
|
||||
],
|
||||
'tx_eptheme_navitemclass' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'CSS Klasse(n) für Topnavigation',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
]
|
||||
],
|
||||
'tx_eptheme_slides' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Slides',
|
||||
'displayCond' => 'FIELD:backend_layout:!IN:pagets__detail,pagets__booking',
|
||||
'config' => [
|
||||
'type' => 'inline',
|
||||
'foreign_table' => 'tx_eptheme_domain_model_slide',
|
||||
'foreign_field' => 'page',
|
||||
'foreign_sortby' => 'sorting',
|
||||
'maxitems' => 5,
|
||||
'appearance' => [
|
||||
'useSortable' => 1,
|
||||
'collapseAll' => 1,
|
||||
'levelLinksPosition' => 'top',
|
||||
'showSynchronizationLink' => 0,
|
||||
'showPossibleLocalizationRecords' => 0,
|
||||
'showAllLocalizationLink' => 0
|
||||
],
|
||||
],
|
||||
],
|
||||
'tx_eptheme_badge' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Badge',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_badge',
|
||||
'foreign_table_where' => 'ORDER BY title',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns(
|
||||
'pages',
|
||||
$temporaryColumns
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
|
||||
'pages',
|
||||
'--div--;Kontext,
|
||||
tx_eptheme_context_pacode,tx_eptheme_context_country,tx_eptheme_context_region,
|
||||
tx_eptheme_hide_searchbar,tx_eptheme_new_tab,tx_eptheme_bodyclass,tx_eptheme_navitemclass,
|
||||
--div--;Slider,
|
||||
tx_eptheme_slides,
|
||||
--div--;Badge,
|
||||
tx_eptheme_badge',
|
||||
'1,4'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::registerPageTSConfigFile(
|
||||
'ep_theme',
|
||||
'Configuration/TSconfig/Page/Main.tsconfig',
|
||||
'EP Theme'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['pages']['columns']['slug']['config']['generatorOptions']['fields'] = [
|
||||
[
|
||||
'nav_title',
|
||||
'title'
|
||||
]
|
||||
];
|
||||
|
||||
});
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
if (!defined('TYPO3_MODE')) die ('Access denied.');
|
||||
|
||||
$tca = [
|
||||
'ctrl' => [
|
||||
'default_sortby' => 'name DESC'
|
||||
],
|
||||
];
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ArrayUtility::mergeRecursiveWithOverrule($GLOBALS['TCA']['sys_file'], $tca);
|
||||
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function () {
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile(
|
||||
'ep_theme',
|
||||
'Configuration/TypoScript',
|
||||
'EP Theme'
|
||||
);
|
||||
|
||||
});
|
||||
@@ -0,0 +1,193 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function () {
|
||||
|
||||
$ttContentColumns = [
|
||||
'button' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Button Label',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'default' => 'Details',
|
||||
'size' => 30,
|
||||
'eval' => 'trim,required'
|
||||
],
|
||||
],
|
||||
'tx_eptheme_context_country' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_products/Resources/Private/Language/locallang.xlf:tx_epproducts_domain_model_country',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_country',
|
||||
'foreign_table_where' => 'ORDER BY name ASC',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'default' => 0,
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_region' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_products/Resources/Private/Language/locallang.xlf:tx_epproducts_domain_model_region',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_region',
|
||||
'foreign_table_where' => 'ORDER BY name ASC',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'default' => 0,
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_city' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_products/Resources/Private/Language/locallang.xlf:tx_epproducts_domain_model_city',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_city',
|
||||
'foreign_table_where' => 'ORDER BY name ASC',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'default' => 0,
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_hotel' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_products/Resources/Private/Language/locallang.xlf:tx_epproducts_domain_model_hotel',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_hotel',
|
||||
'foreign_table_where' => 'ORDER BY name ASC',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'default' => 0,
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_concept' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_products/Resources/Private/Language/locallang.xlf:tx_epproducts_domain_model_concept',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_concept',
|
||||
'foreign_table_where' => 'ORDER BY name ASC',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'default' => 0,
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_product' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_products/Resources/Private/Language/locallang.xlf:tx_epproducts_domain_model_product',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_product',
|
||||
'foreign_table_where' => 'ORDER BY name_internal, name ASC',
|
||||
'items' => [
|
||||
['Keine Zuordnung', 0],
|
||||
],
|
||||
'default' => 0,
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_date_from' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang.xlf:tx_eptheme_context.date_from',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 12,
|
||||
'eval' => 'date,int',
|
||||
'renderType' => 'inputDateTime',
|
||||
]
|
||||
],
|
||||
'tx_eptheme_context_date_to' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang.xlf:tx_eptheme_context.date_to',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 12,
|
||||
'eval' => 'date,int',
|
||||
'renderType' => 'inputDateTime',
|
||||
]
|
||||
],
|
||||
'tx_eptheme_background' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Hintergrundfarbe',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'default' => 0,
|
||||
'items' => [
|
||||
[ 'ohne', 0 ],
|
||||
[ 'oben', 1 ],
|
||||
[ 'unten', 2 ],
|
||||
[ 'oben und unten', 3 ],
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', $ttContentColumns);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette(
|
||||
'tt_content',
|
||||
'header',
|
||||
'--linebreak--,
|
||||
subheader;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:subheader_formlabel,--linebreak--',
|
||||
'after:header_layout'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['textmedia']['columnsOverrides']['assets']['config']['overrideChildTca'] = [
|
||||
'columns' => [
|
||||
'crop' => [
|
||||
'config' => [
|
||||
'cropVariants' => [
|
||||
'default' => [
|
||||
'title' => 'Preview',
|
||||
'allowedAspectRatios' => [
|
||||
'preview' => [
|
||||
'title' => 'Standard',
|
||||
'value' => 1.8,
|
||||
],
|
||||
'free' => [
|
||||
'title' => 'frei',
|
||||
'value' => 'NaN',
|
||||
],
|
||||
],
|
||||
],
|
||||
'zoom' => [
|
||||
'title' => 'Zoom',
|
||||
'allowedAspectRatios' => [
|
||||
'free' => [
|
||||
'title' => 'frei',
|
||||
'value' => 'NaN',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
});
|
||||
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Button',
|
||||
'button',
|
||||
'content-image'
|
||||
],
|
||||
'ytvideo',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette(
|
||||
'tt_content',
|
||||
'tx_eptheme_button',
|
||||
'header,header_link'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['button'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;;tx_eptheme_button,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
'columnsOverrides' => [
|
||||
'header' => [
|
||||
'label' => 'Buttonlabel',
|
||||
],
|
||||
'header_link' => [
|
||||
'label' => 'URL/Seite',
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Belegungskalender',
|
||||
'calendar',
|
||||
'content-image'
|
||||
],
|
||||
'contact',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['calendar'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
tx_eptheme_context_hotel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Ansprechpartner',
|
||||
'contact',
|
||||
'content-image'
|
||||
],
|
||||
'gmap',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['columns']['tx_eptheme_contact'] = [
|
||||
'exclude' => 0,
|
||||
'label' => 'Mitarbeiter',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_epproducts_domain_model_teammember',
|
||||
'foreign_table_where' => 'ORDER BY name',
|
||||
'minitems' => 1,
|
||||
'maxitems' => 1,
|
||||
]
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['contact'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
tx_eptheme_contact,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
call_user_func(function () {
|
||||
\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\B13\Container\Tca\Registry::class)->configureContainer(
|
||||
new \B13\Container\Tca\ContainerConfiguration(
|
||||
'ep_container_quarters',
|
||||
'Vierspalter',
|
||||
'25/25/25/25 Aufteilung mit groß/klein Umschaltung',
|
||||
[
|
||||
[
|
||||
['name' => 'Elemente', 'colPos' => 300],
|
||||
]
|
||||
]
|
||||
)
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\B13\Container\Tca\Registry::class)->configureContainer(
|
||||
new \B13\Container\Tca\ContainerConfiguration(
|
||||
'ep_container_teasergroup',
|
||||
'Dreispalter',
|
||||
'33/33/33 Aufteilung mit groß/klein Umschaltung',
|
||||
[
|
||||
[
|
||||
['name' => 'Teaser', 'colPos' => 300],
|
||||
]
|
||||
]
|
||||
)
|
||||
);
|
||||
|
||||
$headerConfig = [
|
||||
'showitem' => '
|
||||
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.general,
|
||||
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.general;general,
|
||||
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.header;header,
|
||||
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.appearance,
|
||||
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.frames;frames,
|
||||
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.appearanceLinks;appearanceLinks,
|
||||
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
|
||||
--palette--;;language,
|
||||
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access,
|
||||
--palette--;;hidden,
|
||||
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.access;access
|
||||
'
|
||||
];
|
||||
|
||||
foreach (['ep_container_quarters', 'ep_container_teasergroup'] as $field) {
|
||||
$GLOBALS['TCA']['tt_content']['types'][$field] = array_replace_recursive(
|
||||
$GLOBALS['TCA']['tt_content']['types'][$field],
|
||||
$headerConfig
|
||||
);
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Deal der Woche',
|
||||
'deal_of_the_week',
|
||||
'content-image'
|
||||
],
|
||||
'disturber',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['deal_of_the_week'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general, header, header_link, bodytext,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel, tx_eptheme_background,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
'columnsOverrides' => [
|
||||
'bodytext' => [
|
||||
'label' => 'Text',
|
||||
'config' => [
|
||||
'rows' => 2,
|
||||
]
|
||||
],
|
||||
]
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Störer (neu)',
|
||||
'disrupter',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_product',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['columns']['tx_eptheme_disrupter'] = [
|
||||
'exclude' => 0,
|
||||
'label' => 'Störer',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tx_eptheme_domain_model_disrupter',
|
||||
'foreign_field' => 'tt_content',
|
||||
'maxitems' => 1,
|
||||
'minitems' => 1,
|
||||
'foreign_table_where' => 'ORDER BY headline ASC',
|
||||
'MM' => 'tx_eptheme_ttcontent_tx_eptheme_disrupter_mm',
|
||||
],
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['disrupter'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general, tx_eptheme_disrupter,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel, tx_eptheme_background,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
'columnsOverrides' => [
|
||||
]
|
||||
];
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue(
|
||||
'*',
|
||||
'FILE:EXT:ep_theme/Configuration/FlexForms/flexform_disturber.xml',
|
||||
'disrupter'
|
||||
);
|
||||
|
||||
});
|
||||
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Störer',
|
||||
'disturber',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_product',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['disturber'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.header;header, bodytext, pi_flexform,
|
||||
--div--;Bild,
|
||||
assets,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel, tx_eptheme_background,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
'columnsOverrides' => [
|
||||
'bodytext' => [
|
||||
'label' => 'Text',
|
||||
'config' => [
|
||||
'enableRichtext' => true,
|
||||
]
|
||||
],
|
||||
'assets' => [
|
||||
'label' => 'Bild',
|
||||
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('assets', [
|
||||
'appearance' => [
|
||||
'createNewRelationLinkTitle' => 'Hinzufügen'
|
||||
],
|
||||
'foreign_types' => $GLOBALS['TCA']['tt_content']['columns']['image']['config']['foreign_types'],
|
||||
'maxitems' => 1,
|
||||
'minitems' => 0,
|
||||
], $GLOBALS['TYPO3_CONF_VARS']['SYS']['mediafile_ext'])
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue(
|
||||
'*',
|
||||
'FILE:EXT:ep_theme/Configuration/FlexForms/flexform_disturber.xml',
|
||||
'disturber'
|
||||
);
|
||||
|
||||
});
|
||||
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Event Preistabelle',
|
||||
'event_pricetable',
|
||||
'content-image'
|
||||
],
|
||||
'contact',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['event_pricetable'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
tx_eptheme_context_product,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'FAQ Alle Kategorien',
|
||||
'faq_overview',
|
||||
'content-ep_theme-ce',
|
||||
],
|
||||
'nlform',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['faq_overview'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
});
|
||||
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Google Map',
|
||||
'gmap',
|
||||
'content-image'
|
||||
],
|
||||
'lineup',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['gmap'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
tx_eptheme_context_region, tx_eptheme_context_hotel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Lineup',
|
||||
'lineup',
|
||||
'content-image'
|
||||
],
|
||||
'deal_of_the_week',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['columns']['tx_eptheme_lineup'] = [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_lineup.items',
|
||||
'config' => [
|
||||
'type' => 'inline',
|
||||
'foreign_table' => 'tx_eptheme_domain_model_lineup',
|
||||
'foreign_field' => 'tt_content',
|
||||
'foreign_sortby' => 'sorting',
|
||||
'maxitems' => 99,
|
||||
'appearance' => [
|
||||
'useSortable' => 1,
|
||||
'collapseAll' => 1,
|
||||
'levelLinksPosition' => 'top',
|
||||
'showSynchronizationLink' => 0,
|
||||
'showPossibleLocalizationRecords' => 0,
|
||||
'showAllLocalizationLink' => 0
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['lineup'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
tx_eptheme_lineup,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Newsletter Anmeldung',
|
||||
'nlform',
|
||||
'content-image'
|
||||
],
|
||||
'ytvideo',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['nlform'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general',
|
||||
'columnsOverrides' => [
|
||||
'header_link' => [
|
||||
'label' => 'YouTube URL/Vimeo ID',
|
||||
],
|
||||
'layout' => [
|
||||
'label' => 'Typ',
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,256 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser allgemein',
|
||||
'teaser',
|
||||
'content-image'
|
||||
],
|
||||
'textmedia',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser Land',
|
||||
'teaser_country',
|
||||
'content-image'
|
||||
],
|
||||
'teaser',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser Gebiet',
|
||||
'teaser_region',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_country',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser Ort',
|
||||
'teaser_city',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_region',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser Hotel',
|
||||
'teaser_hotel',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_city',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser Konzept',
|
||||
'teaser_concept',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_hotel',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser Produkt',
|
||||
'teaser_product',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_concept',
|
||||
'after'
|
||||
);
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'Teaser Buchungslink',
|
||||
'teaser_booking_link',
|
||||
'content-image'
|
||||
],
|
||||
'teaser_concept',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.header;header,bodytext,button,
|
||||
--div--;Bild,
|
||||
assets,
|
||||
--div--;Kontext,
|
||||
tx_eptheme_context_country,tx_eptheme_context_region, tx_eptheme_context_hotel, tx_eptheme_context_concept,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
'columnsOverrides' => [
|
||||
'bodytext' => [
|
||||
'label' => 'Teasertext',
|
||||
'config' => [
|
||||
'enableRichtext' => true,
|
||||
],
|
||||
],
|
||||
'header' => [
|
||||
'config' => [
|
||||
'type' => 'text',
|
||||
'rows' => 2,
|
||||
]
|
||||
],
|
||||
'assets' => [
|
||||
'label' => 'Teaserbild',
|
||||
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('assets', [
|
||||
'appearance' => [
|
||||
'createNewRelationLinkTitle' => 'Hinzufügen'
|
||||
],
|
||||
'overrideChildTca' => [
|
||||
'columns' => [
|
||||
'crop' => [
|
||||
'config' => [
|
||||
'cropVariants' => [
|
||||
'default' => [
|
||||
'title' => 'Alle Geräte',
|
||||
'allowedAspectRatios' => [
|
||||
'teaserEven' => [
|
||||
'title' => 'Teaser gerade',
|
||||
'value' => 1.3333333333333334,
|
||||
],
|
||||
'teaserOdd' => [
|
||||
'title' => 'Teaser ungerade',
|
||||
'value' => 2.0555555555555556,
|
||||
],
|
||||
'free' => [
|
||||
'title' => 'Frei',
|
||||
'value' => 'NaN',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
'maxitems' => 1,
|
||||
'minitems' => 0,
|
||||
], $GLOBALS['TYPO3_CONF_VARS']['SYS']['mediafile_ext'])
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser_country'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;Kontext, tx_eptheme_context_country,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser_region'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;Kontext, tx_eptheme_context_region,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser_city'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;Kontext, tx_eptheme_context_city,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser_hotel'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;Kontext, tx_eptheme_context_hotel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser_concept'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;Kontext, tx_eptheme_context_concept,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser_product'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;Kontext, tx_eptheme_context_product, tx_eptheme_context_hotel,
|
||||
tx_eptheme_context_date_from, tx_eptheme_context_date_to,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['teaser_booking_link'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
--palette--;Kontext, tx_eptheme_context_product,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.appearance,
|
||||
layout;' . $frontendLanguageFilePrefix . 'layout_formlabel,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
defined('TYPO3_MODE') or die();
|
||||
|
||||
call_user_func(function() {
|
||||
$frontendLanguageFilePrefix = 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:';
|
||||
|
||||
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
|
||||
'tt_content',
|
||||
'CType',
|
||||
[
|
||||
'YouTube/Vimeo Video',
|
||||
'ytvideo',
|
||||
'content-image'
|
||||
],
|
||||
'calendar',
|
||||
'after'
|
||||
);
|
||||
|
||||
$GLOBALS['TCA']['tt_content']['types']['ytvideo'] = [
|
||||
'showitem' => '
|
||||
--palette--;' . $frontendLanguageFilePrefix . 'palette.general;general,
|
||||
layout, header_link,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.access,
|
||||
hidden;' . $frontendLanguageFilePrefix . 'field.default.hidden,
|
||||
--div--;' . $frontendLanguageFilePrefix . 'tabs.extended
|
||||
',
|
||||
'columnsOverrides' => [
|
||||
'header_link' => [
|
||||
'label' => 'YouTube URL/Vimeo ID',
|
||||
],
|
||||
'layout' => [
|
||||
'label' => 'Typ',
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
});
|
||||
@@ -0,0 +1,169 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'ctrl' => [
|
||||
'label' => 'name',
|
||||
'label_alt' => 'email',
|
||||
'default_sortby' => 'ORDER BY last_name, first_name',
|
||||
'tstamp' => 'tstamp',
|
||||
'crdate' => 'crdate',
|
||||
'cruser_id' => 'cruser_id',
|
||||
'prependAtCopy' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.prependAtCopy',
|
||||
'delete' => 'deleted',
|
||||
'title' => 'Adresscheck',
|
||||
'versioningWS' => true,
|
||||
'origUid' => 't3_origuid',
|
||||
'enablecolumns' => [
|
||||
'disabled' => 'hidden'
|
||||
],
|
||||
'iconfile' => 'EXT:ep_theme/Resources/Public/images/icon_ce.svg',
|
||||
'searchFields' => 'name, first_name, last_name, email',
|
||||
'dividers2tabs' => 1,
|
||||
],
|
||||
'columns' => [
|
||||
'pid' => [
|
||||
'label' => 'pid',
|
||||
'config' => [
|
||||
'type' => 'passthrough'
|
||||
]
|
||||
],
|
||||
'crdate' => [
|
||||
'label' => 'crdate',
|
||||
'config' => [
|
||||
'type' => 'passthrough',
|
||||
]
|
||||
],
|
||||
'cruser_id' => [
|
||||
'label' => 'cruser_id',
|
||||
'config' => [
|
||||
'type' => 'passthrough'
|
||||
]
|
||||
],
|
||||
'tstamp' => [
|
||||
'label' => 'tstamp',
|
||||
'config' => [
|
||||
'type' => 'passthrough',
|
||||
]
|
||||
],
|
||||
'hidden' => [
|
||||
'exclude' => 1,
|
||||
'label' => 'Versteckt',
|
||||
'config' => [
|
||||
'type' => 'check'
|
||||
]
|
||||
],
|
||||
'customer_id' => [
|
||||
'exclude' => 1,
|
||||
'label' => 'Kundennummer',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => '8',
|
||||
'eval' => 'trim',
|
||||
'max' => '255'
|
||||
]
|
||||
],
|
||||
'title' => [
|
||||
'exclude' => 1,
|
||||
'label' => 'Anrede',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => '8',
|
||||
'eval' => 'trim',
|
||||
'max' => '255'
|
||||
]
|
||||
],
|
||||
'first_name' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Vorname',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => '20',
|
||||
'eval' => 'trim',
|
||||
'max' => '255'
|
||||
]
|
||||
],
|
||||
'last_name' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Name',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => '20',
|
||||
'eval' => 'trim',
|
||||
'max' => '255'
|
||||
]
|
||||
],
|
||||
'address' => [
|
||||
'label' => 'Strasse / Nr.',
|
||||
'config' => [
|
||||
'type' => 'text',
|
||||
'cols' => '20',
|
||||
'rows' => '3'
|
||||
]
|
||||
],
|
||||
'email' => [
|
||||
'label' => 'E-Mail',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => '20',
|
||||
'eval' => 'trim',
|
||||
'max' => '255',
|
||||
'softref' => 'email'
|
||||
]
|
||||
],
|
||||
'city' => [
|
||||
'label' => 'Stadt',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => '20',
|
||||
'eval' => 'trim',
|
||||
'max' => '255'
|
||||
]
|
||||
],
|
||||
'zip' => [
|
||||
'label' => 'PLZ',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'eval' => 'trim',
|
||||
'size' => '10',
|
||||
'max' => '20'
|
||||
]
|
||||
],
|
||||
'country' => [
|
||||
'exclude' => 1,
|
||||
'label' => 'Land',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => '20',
|
||||
'eval' => 'trim',
|
||||
'max' => '128'
|
||||
]
|
||||
],
|
||||
'no_postal' => [
|
||||
'exclude' => 1,
|
||||
'label' => 'Keine Postalische Werbung',
|
||||
'config' => [
|
||||
'type' => 'check'
|
||||
]
|
||||
],
|
||||
'no_email' => [
|
||||
'exclude' => 1,
|
||||
'label' => 'Keine E-Mails mehr',
|
||||
'config' => [
|
||||
'type' => 'check'
|
||||
]
|
||||
],
|
||||
'address_current' => [
|
||||
'exclude' => 1,
|
||||
'label' => 'Adresse ist aktuell',
|
||||
'config' => [
|
||||
'type' => 'check'
|
||||
]
|
||||
],
|
||||
],
|
||||
'types' => [
|
||||
'0' => ['showitem' =>
|
||||
'hidden,
|
||||
title,first_name,last_name,address,zip,city,country,email,no_postal,no_email,address_current,
|
||||
']
|
||||
],
|
||||
];
|
||||
@@ -0,0 +1,211 @@
|
||||
<?php
|
||||
return [
|
||||
'ctrl' => [
|
||||
'title' => 'Störer',
|
||||
'default_sortby' => 'ORDER BY headline',
|
||||
'label' => 'headline',
|
||||
'tstamp' => 'tstamp',
|
||||
'crdate' => 'crdate',
|
||||
'cruser_id' => 'cruser_id',
|
||||
'dividers2tabs' => true,
|
||||
'versioningWS' => true,
|
||||
'languageField' => 'sys_language_uid',
|
||||
'transOrigPointerField' => 'l10n_parent',
|
||||
'transOrigDiffSourceField' => 'l10n_diffsource',
|
||||
'delete' => 'deleted',
|
||||
'enablecolumns' => [
|
||||
'disabled' => 'hidden',
|
||||
'starttime' => 'starttime',
|
||||
'endtime' => 'endtime',
|
||||
],
|
||||
'searchFields' => 'headline,text',
|
||||
'iconfile' => 'EXT:ep_theme/Resources/Public/images/icon_ce.svg',
|
||||
],
|
||||
'types' => [
|
||||
'1' => [
|
||||
'showitem' => 'sys_language_uid, hidden, layout, headline, text, image, pi_flexform',
|
||||
],
|
||||
],
|
||||
'palettes' => [
|
||||
],
|
||||
'columns' => [
|
||||
|
||||
'sys_language_uid' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'sys_language',
|
||||
'foreign_table_where' => 'ORDER BY sys_language.title',
|
||||
'items' => [
|
||||
['LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages', -1],
|
||||
['LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.default_value', 0]
|
||||
],
|
||||
],
|
||||
],
|
||||
'l10n_parent' => [
|
||||
'displayCond' => 'FIELD:sys_language_uid:>:0',
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.l18n_parent',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'items' => [
|
||||
['', 0],
|
||||
],
|
||||
'foreign_table' => 'tx_eptheme_domain_model_disrupter',
|
||||
'foreign_table_where' => 'AND tx_eptheme_domain_model_disrupter.pid=###CURRENT_PID### AND tx_eptheme_domain_model_disrupter.sys_language_uid IN (-1,0)',
|
||||
],
|
||||
],
|
||||
'l10n_diffsource' => [
|
||||
'config' => [
|
||||
'type' => 'passthrough',
|
||||
],
|
||||
],
|
||||
|
||||
't3ver_label' => [
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.versionLabel',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'max' => 255,
|
||||
]
|
||||
],
|
||||
|
||||
'hidden' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.hidden',
|
||||
'config' => [
|
||||
'type' => 'check',
|
||||
],
|
||||
],
|
||||
'starttime' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.starttime',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 13,
|
||||
'eval' => 'datetime',
|
||||
'checkbox' => 0,
|
||||
'default' => 0,
|
||||
'behaviour' => [
|
||||
'allowLanguageSynchronization' => true,
|
||||
],
|
||||
'renderType' => 'inputDateTime',
|
||||
],
|
||||
],
|
||||
'endtime' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.endtime',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 13,
|
||||
'eval' => 'datetime',
|
||||
'checkbox' => 0,
|
||||
'default' => 0,
|
||||
'behaviour' => [
|
||||
'allowLanguageSynchronization' => true,
|
||||
],
|
||||
'renderType' => 'inputDateTime',
|
||||
],
|
||||
],
|
||||
|
||||
'headline' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Headline',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'layout' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Layout',
|
||||
'config' => [
|
||||
'type' => 'selectSingle',
|
||||
'items' => [
|
||||
['klein', 0],
|
||||
['groß', 1],
|
||||
['Event klein', 2],
|
||||
['Event groß', 3],
|
||||
],
|
||||
],
|
||||
],
|
||||
'text' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Text',
|
||||
'config' => [
|
||||
'type' => 'text',
|
||||
'cols' => 40,
|
||||
'rows' => 5,
|
||||
'eval' => 'trim',
|
||||
'enableRichtext' => true,
|
||||
],
|
||||
],
|
||||
'image' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Bild',
|
||||
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
|
||||
'image',
|
||||
[
|
||||
'appearance' => [
|
||||
'createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:images.addFileReference',
|
||||
'fileUploadAllowed' => false,
|
||||
],
|
||||
'overrideChildTca' => [
|
||||
'types' => [
|
||||
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
|
||||
'showitem' => '
|
||||
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
|
||||
--palette--;;filePalette'
|
||||
],
|
||||
],
|
||||
'columns' => [
|
||||
'crop' => [
|
||||
'config' => [
|
||||
'cropVariants' => [
|
||||
'default' => [
|
||||
'title' => 'Alle Geräte',
|
||||
'allowedAspectRatios' => [
|
||||
'square' => [
|
||||
'title' => 'quadratisch',
|
||||
'value' => 1,
|
||||
],
|
||||
'free' => [
|
||||
'title' => 'Frei',
|
||||
'value' => 'NaN',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
'maxitems' => 1,
|
||||
'minitems' => 1,
|
||||
],
|
||||
'jpg,jpeg'
|
||||
),
|
||||
],
|
||||
'pi_flexform' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Buttons',
|
||||
'config' => [
|
||||
'type' => 'flex',
|
||||
'ds' => [
|
||||
'default' => 'FILE:EXT:ep_theme/Configuration/FlexForms/flexform_disturber.xml',
|
||||
],
|
||||
]
|
||||
],
|
||||
'tt_content' => [
|
||||
'exclude' => 0,
|
||||
'config' => [
|
||||
'type' => 'passthrough',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
@@ -0,0 +1,224 @@
|
||||
<?php
|
||||
return [
|
||||
'ctrl' => [
|
||||
'title' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_lineup',
|
||||
'default_sortby' => 'ORDER BY name',
|
||||
'label' => 'name',
|
||||
'tstamp' => 'tstamp',
|
||||
'crdate' => 'crdate',
|
||||
'cruser_id' => 'cruser_id',
|
||||
'dividers2tabs' => true,
|
||||
'versioningWS' => true,
|
||||
'hideTable' => true,
|
||||
'languageField' => 'sys_language_uid',
|
||||
'transOrigPointerField' => 'l10n_parent',
|
||||
'transOrigDiffSourceField' => 'l10n_diffsource',
|
||||
'delete' => 'deleted',
|
||||
'enablecolumns' => [
|
||||
'disabled' => 'hidden',
|
||||
'starttime' => 'starttime',
|
||||
'endtime' => 'endtime',
|
||||
],
|
||||
'searchFields' => 'headline,subline',
|
||||
'iconfile' => 'EXT:ep_theme/Resources/Public/images/icon_ce.svg',
|
||||
],
|
||||
'types' => [
|
||||
'1' => [
|
||||
'showitem' => 'hidden, name, description, image, --palette--;;social',
|
||||
],
|
||||
],
|
||||
'palettes' => [
|
||||
'social' => ['showitem' => 'facebook_url, twitter_url, youtube_url, instagram_url, soundcloud_url'],
|
||||
],
|
||||
'columns' => [
|
||||
|
||||
'sys_language_uid' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'sys_language',
|
||||
'foreign_table_where' => 'ORDER BY sys_language.title',
|
||||
'items' => [
|
||||
['LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages', -1],
|
||||
['LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.default_value', 0]
|
||||
],
|
||||
],
|
||||
],
|
||||
'l10n_parent' => [
|
||||
'displayCond' => 'FIELD:sys_language_uid:>:0',
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.l18n_parent',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'items' => [
|
||||
['', 0],
|
||||
],
|
||||
'foreign_table' => 'tx_eptheme_domain_model_lineup',
|
||||
'foreign_table_where' => 'AND tx_eptheme_domain_model_lineup.pid=###CURRENT_PID### AND tx_eptheme_domain_model_lineup.sys_language_uid IN (-1,0)',
|
||||
],
|
||||
],
|
||||
'l10n_diffsource' => [
|
||||
'config' => [
|
||||
'type' => 'passthrough',
|
||||
],
|
||||
],
|
||||
|
||||
't3ver_label' => [
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.versionLabel',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'max' => 255,
|
||||
]
|
||||
],
|
||||
|
||||
'hidden' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.hidden',
|
||||
'config' => [
|
||||
'type' => 'check',
|
||||
],
|
||||
],
|
||||
'starttime' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.starttime',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 13,
|
||||
'eval' => 'datetime',
|
||||
'checkbox' => 0,
|
||||
'default' => 0,
|
||||
'behaviour' => [
|
||||
'allowLanguageSynchronization' => true,
|
||||
],
|
||||
'renderType' => 'inputDateTime',
|
||||
],
|
||||
],
|
||||
'endtime' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.endtime',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 13,
|
||||
'eval' => 'datetime',
|
||||
'checkbox' => 0,
|
||||
'default' => 0,
|
||||
'behaviour' => [
|
||||
'allowLanguageSynchronization' => true,
|
||||
],
|
||||
'renderType' => 'inputDateTime',
|
||||
],
|
||||
],
|
||||
'sorting' => [
|
||||
'config' => [
|
||||
'type' => 'passthrough'
|
||||
],
|
||||
],
|
||||
|
||||
'name' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_lineup.name',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim,required'
|
||||
],
|
||||
],
|
||||
'description' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang.xlf:tx_eptheme_domain_model_lineup.description',
|
||||
'config' => [
|
||||
'type' => 'text',
|
||||
'cols' => 40,
|
||||
'rows' => 10,
|
||||
'eval' => 'trim',
|
||||
'enableRichtext' => true,
|
||||
],
|
||||
],
|
||||
'image' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_lineup.image',
|
||||
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
|
||||
'image',
|
||||
[
|
||||
'appearance' => [
|
||||
'createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:images.addFileReference',
|
||||
'useSortable' => false,
|
||||
],
|
||||
'overrideChildTca' => [
|
||||
'types' => [
|
||||
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
|
||||
'showitem' => '
|
||||
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
|
||||
--palette--;;filePalette',
|
||||
],
|
||||
],
|
||||
],
|
||||
'maxitems' => 1
|
||||
],
|
||||
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
|
||||
),
|
||||
],
|
||||
'facebook_url' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Facebook URL',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'twitter_url' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Twitter URL',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'instagram_url' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Instagram URL',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'youtube_url' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'YouTube URL',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'soundcloud_url' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Soundcloud URL',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'tt_content' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_lineup.tt_content',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'tt_content',
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
@@ -0,0 +1,255 @@
|
||||
<?php
|
||||
return [
|
||||
'ctrl' => [
|
||||
'title' => 'Slide',
|
||||
'default_sortby' => 'ORDER BY headline',
|
||||
'label' => 'headline',
|
||||
'tstamp' => 'tstamp',
|
||||
'crdate' => 'crdate',
|
||||
'cruser_id' => 'cruser_id',
|
||||
'dividers2tabs' => true,
|
||||
'versioningWS' => true,
|
||||
'hideTable' => true,
|
||||
'languageField' => 'sys_language_uid',
|
||||
'transOrigPointerField' => 'l10n_parent',
|
||||
'transOrigDiffSourceField' => 'l10n_diffsource',
|
||||
'delete' => 'deleted',
|
||||
'enablecolumns' => [
|
||||
'disabled' => 'hidden',
|
||||
'starttime' => 'starttime',
|
||||
'endtime' => 'endtime',
|
||||
],
|
||||
'searchFields' => 'headline,subline',
|
||||
'iconfile' => 'EXT:ep_theme/Resources/Public/images/icon_ce.svg',
|
||||
],
|
||||
'types' => [
|
||||
'1' => [
|
||||
'showitem' => '--palette--;;top, --palette--;;headlines, --palette--;;linkbutton, image',
|
||||
],
|
||||
],
|
||||
'palettes' => [
|
||||
'top' => ['showitem' => 'hidden, skipass'],
|
||||
'headlines' => ['showitem' => 'headline, subline'],
|
||||
'linkbutton' => ['showitem' => 'button, page_uid'],
|
||||
],
|
||||
'columns' => [
|
||||
|
||||
'sys_language_uid' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'sys_language',
|
||||
'foreign_table_where' => 'ORDER BY sys_language.title',
|
||||
'items' => [
|
||||
['LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages', -1],
|
||||
['LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.default_value', 0]
|
||||
],
|
||||
],
|
||||
],
|
||||
'l10n_parent' => [
|
||||
'displayCond' => 'FIELD:sys_language_uid:>:0',
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.l18n_parent',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'items' => [
|
||||
['', 0],
|
||||
],
|
||||
'foreign_table' => 'tx_eptheme_domain_model_slide',
|
||||
'foreign_table_where' => 'AND tx_eptheme_domain_model_slide.pid=###CURRENT_PID### AND tx_eptheme_domain_model_slide.sys_language_uid IN (-1,0)',
|
||||
],
|
||||
],
|
||||
'l10n_diffsource' => [
|
||||
'config' => [
|
||||
'type' => 'passthrough',
|
||||
],
|
||||
],
|
||||
|
||||
't3ver_label' => [
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.versionLabel',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'max' => 255,
|
||||
]
|
||||
],
|
||||
|
||||
'hidden' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.hidden',
|
||||
'config' => [
|
||||
'type' => 'check',
|
||||
],
|
||||
],
|
||||
'starttime' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.starttime',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 13,
|
||||
'eval' => 'datetime',
|
||||
'checkbox' => 0,
|
||||
'default' => 0,
|
||||
'behaviour' => [
|
||||
'allowLanguageSynchronization' => true,
|
||||
],
|
||||
'renderType' => 'inputDateTime',
|
||||
],
|
||||
],
|
||||
'endtime' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.endtime',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 13,
|
||||
'eval' => 'datetime',
|
||||
'checkbox' => 0,
|
||||
'default' => 0,
|
||||
'behaviour' => [
|
||||
'allowLanguageSynchronization' => true,
|
||||
],
|
||||
'renderType' => 'inputDateTime',
|
||||
],
|
||||
],
|
||||
'sorting' => [
|
||||
'config' => [
|
||||
'type' => 'passthrough'
|
||||
],
|
||||
],
|
||||
|
||||
'headline' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_slide.headline',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'subline' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_slide.subline',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 30,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'button' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_slide.button',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 20,
|
||||
'eval' => 'trim'
|
||||
],
|
||||
],
|
||||
'skipass' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Skipass Badge',
|
||||
'config' => [
|
||||
'type' => 'check',
|
||||
],
|
||||
],
|
||||
'page_uid' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_slide.page_uid',
|
||||
'config' => [
|
||||
'type' => 'input',
|
||||
'size' => 20,
|
||||
'renderType' => 'inputLink',
|
||||
]
|
||||
],
|
||||
'image' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'Bild',
|
||||
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
|
||||
'images',
|
||||
[
|
||||
'appearance' => [
|
||||
'createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:images.addFileReference',
|
||||
'fileUploadAllowed' => false,
|
||||
],
|
||||
'overrideChildTca' => [
|
||||
'types' => [
|
||||
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
|
||||
'showitem' => '
|
||||
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
|
||||
--palette--;;filePalette'
|
||||
],
|
||||
],
|
||||
'columns' => [
|
||||
'crop' => [
|
||||
'config' => [
|
||||
'cropVariants' => [
|
||||
'default' => [
|
||||
'title' => 'Alle Geräte',
|
||||
'allowedAspectRatios' => [
|
||||
'contentSlider' => [
|
||||
'title' => 'Content Slider/Galerie',
|
||||
'value' => 1.59,
|
||||
],
|
||||
'contentSliderProduct' => [
|
||||
'title' => 'Content Slider/Galerie Produkttexte',
|
||||
'value' => 1.79069767,
|
||||
],
|
||||
'sliderProductHeader' => [
|
||||
'title' => 'Slider Produkt-Header',
|
||||
'value' => 1.625,
|
||||
],
|
||||
'sliderPageHeader' => [
|
||||
'title' => 'Slider Seiten-Header',
|
||||
'value' => 3.805,
|
||||
],
|
||||
'sliderPageHeaderHome' => [
|
||||
'title' => 'Slider Seiten-Header Startseite',
|
||||
'value' => 1370 / 585,
|
||||
],
|
||||
'free' => [
|
||||
'title' => 'Frei',
|
||||
'value' => 'NaN',
|
||||
],
|
||||
],
|
||||
],
|
||||
'mobile' => [
|
||||
'title' => 'Mobile',
|
||||
'allowedAspectRatios' => [
|
||||
'sliderPageHeader' => [
|
||||
'title' => 'Slider Seiten-Header',
|
||||
'value' => 1,
|
||||
],
|
||||
'free' => [
|
||||
'title' => 'Frei',
|
||||
'value' => 'NaN',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
'maxitems' => 1,
|
||||
'minitems' => 1,
|
||||
],
|
||||
'jpg,jpeg'
|
||||
),
|
||||
],
|
||||
'page' => [
|
||||
'exclude' => 0,
|
||||
'label' => 'LLL:EXT:ep_theme/Resources/Private/Language/locallang_db.xlf:tx_eptheme_domain_model_slide.page',
|
||||
'config' => [
|
||||
'type' => 'select',
|
||||
'default' => 0,
|
||||
'renderType' => 'selectSingle',
|
||||
'foreign_table' => 'pages',
|
||||
'minitems' => 0,
|
||||
'maxitems' => 1,
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
@@ -0,0 +1,180 @@
|
||||
tx_gridelements.setup {
|
||||
quarters {
|
||||
title = Teaserreihe vierspaltig (25%/25%/25%/25%)
|
||||
topLevelLayout = 1
|
||||
icon = EXT:ep_theme/Resources/Public/images/tx_eptheme_gridelements_quarters.png
|
||||
config {
|
||||
colCount = 4
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Spalte 1
|
||||
colPos = 41
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
2 {
|
||||
name = Spalte 2
|
||||
colPos = 42
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
3 {
|
||||
name = Spalte 3
|
||||
colPos = 43
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
4 {
|
||||
name = Spalte 4
|
||||
colPos = 44
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
thirds {
|
||||
title = Teaserreihe dreispaltig (33%/33%/33%)
|
||||
topLevelLayout = 1
|
||||
icon = EXT:ep_theme/Resources/Public/images/tx_eptheme_gridelements_thirds.png
|
||||
config {
|
||||
colCount = 3
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Spalte 1
|
||||
colPos = 31
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
2 {
|
||||
name = Spalte 2
|
||||
colPos = 32
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
3 {
|
||||
name = Spalte 3
|
||||
colPos = 33
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
halves {
|
||||
title = Teaserreihe zweispaltig (50%/50%)
|
||||
topLevelLayout = 1
|
||||
icon = EXT:ep_theme/Resources/Public/images/tx_eptheme_gridelements_halves.png
|
||||
config {
|
||||
colCount = 2
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Spalte 1
|
||||
colPos = 21
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
2 {
|
||||
name = Spalte 2
|
||||
colPos = 22
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
halfAndTwoQuarters {
|
||||
title = Teaserreihe dreispaltig (50%/25%/25%)
|
||||
topLevelLayout = 1
|
||||
icon = EXT:ep_theme/Resources/Public/images/tx_eptheme_gridelements_half_and_two_quarters.png
|
||||
config {
|
||||
colCount = 4
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Spalte 1
|
||||
colPos = 51
|
||||
colspan = 2
|
||||
allowed = textmedia,teaser,list,form_formframework
|
||||
}
|
||||
2 {
|
||||
name = Spalte 2
|
||||
colPos = 52
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
3 {
|
||||
name = Spalte 3
|
||||
colPos = 53
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
twoQuartersAndHalf {
|
||||
title = Teaserreihe dreispaltig (25%/25%/50%)
|
||||
topLevelLayout = 1
|
||||
icon = EXT:ep_theme/Resources/Public/images/tx_eptheme_gridelements_two_quarters_and_half.png
|
||||
config {
|
||||
colCount = 4
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Spalte 1
|
||||
colPos = 61
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
2 {
|
||||
name = Spalte 2
|
||||
colPos = 62
|
||||
disallowed {
|
||||
CType = menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages
|
||||
}
|
||||
}
|
||||
3 {
|
||||
name = Spalte 3
|
||||
colPos = 63
|
||||
colspan = 2
|
||||
allowed = textmedia,teaser,list,gmap,nlform,form_formframework,menu_pages,menu_subpages,menu_section
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/Extensions/GridElements.tsconfig'
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/Mod/SHARED.tsconfig'
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/Mod/WebLayout/BackendLayouts.tsconfig'
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/Mod/Wizards/NewContentElement.tsconfig'
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/RTE.tsconfig'
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/TCEFORM.tsconfig'
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/TCEMAIN.tsconfig'
|
||||
@@ -0,0 +1,6 @@
|
||||
mod {
|
||||
SHARED {
|
||||
defaultLanguageFlag = de
|
||||
defaultLanguageLabel = Deutsch
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
@import 'EXT:ep_theme/Configuration/TSconfig/Page/Mod/WebLayout/BackendLayouts/*'
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
detail {
|
||||
title = Detailseite
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 1
|
||||
rowCount = 2
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
2 {
|
||||
columns {
|
||||
1 {
|
||||
name = Teaserbereich
|
||||
colPos = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
frontpage {
|
||||
title = Startseite
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 1
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
frontpageEvent {
|
||||
title = Startseite Events
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 1
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
popup {
|
||||
title = Popup
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 1
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
search {
|
||||
title = Suchergebnis
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 1
|
||||
rowCount = 2
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
2 {
|
||||
columns {
|
||||
1 {
|
||||
name = Teaserbereich
|
||||
colPos = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
subpage {
|
||||
title = Unterseite
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 1
|
||||
rowCount = 2
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
2 {
|
||||
columns {
|
||||
1 {
|
||||
name = Teaserbereich
|
||||
colPos = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
subpageSidebarLeft {
|
||||
title = Unterseite mit Sidebar (links)
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 4
|
||||
rowCount = 3
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Headline
|
||||
colPos = 3
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
2 {
|
||||
columns {
|
||||
1 {
|
||||
name = Sidebar
|
||||
colPos = 2
|
||||
colspan = 1
|
||||
}
|
||||
}
|
||||
columns {
|
||||
2 {
|
||||
name = Content
|
||||
colPos = 4
|
||||
colspan = 3
|
||||
}
|
||||
}
|
||||
}
|
||||
3 {
|
||||
columns {
|
||||
1 {
|
||||
name = Teaserbereich
|
||||
colPos = 1
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
subpageSidebarLeftEvent {
|
||||
title = Unterseite Events mit Sidebar (links)
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 4
|
||||
rowCount = 3
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Headline
|
||||
colPos = 3
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
2 {
|
||||
columns {
|
||||
1 {
|
||||
name = Sidebar
|
||||
colPos = 2
|
||||
colspan = 1
|
||||
}
|
||||
}
|
||||
columns {
|
||||
2 {
|
||||
name = Content
|
||||
colPos = 4
|
||||
colspan = 3
|
||||
}
|
||||
}
|
||||
}
|
||||
3 {
|
||||
columns {
|
||||
1 {
|
||||
name = Teaserbereich
|
||||
colPos = 1
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
subpageSidebarRight {
|
||||
title = Unterseite mit Sidebar (rechts)
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 4
|
||||
rowCount = 3
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Headline
|
||||
colPos = 3
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
2 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 4
|
||||
colspan = 3
|
||||
}
|
||||
}
|
||||
columns {
|
||||
2 {
|
||||
name = Sidebar
|
||||
colPos = 2
|
||||
colspan = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
3 {
|
||||
columns {
|
||||
1 {
|
||||
name = Teaserbereich
|
||||
colPos = 1
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
subpageSidebarRightEvent {
|
||||
title = Unterseite Events mit Sidebar (rechts)
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 4
|
||||
rowCount = 3
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Headline
|
||||
colPos = 3
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
2 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 4
|
||||
colspan = 3
|
||||
}
|
||||
}
|
||||
columns {
|
||||
2 {
|
||||
name = Sidebar
|
||||
colPos = 2
|
||||
colspan = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
3 {
|
||||
columns {
|
||||
1 {
|
||||
name = Teaserbereich
|
||||
colPos = 1
|
||||
colspan = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
mod.web_layout.BackendLayouts {
|
||||
travelinfo {
|
||||
title = Reiseinformationen
|
||||
config {
|
||||
backend_layout {
|
||||
colCount = 1
|
||||
rowCount = 1
|
||||
rows {
|
||||
1 {
|
||||
columns {
|
||||
1 {
|
||||
name = Content
|
||||
colPos = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
mod {
|
||||
wizards.newContentElement.wizardItems {
|
||||
common.show := removeFromList(table,bullets,uploads)
|
||||
menu.show := removeFromList(menu_abstract,menu_categorized_content,menu_categorized_pages,menu_recently_updated,menu_related_pages,menu_section_pages,menu_sitemap,menu_sitemap_pages)
|
||||
special.show = div,shortcut,html
|
||||
forms.show = formframework
|
||||
teaser {
|
||||
header = Teaser
|
||||
elements {
|
||||
teaser {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser allgemein
|
||||
description = Teaser mit konfigurierbarem Kontext
|
||||
tt_content_defValues.CType = teaser
|
||||
}
|
||||
teaser_country {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser Land
|
||||
description = Teaser für ein auswählbares Land
|
||||
tt_content_defValues.CType = teaser_country
|
||||
}
|
||||
teaser_region {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser Gebiet
|
||||
description = Teaser für ein auswählbares Gebiet
|
||||
tt_content_defValues.CType = teaser_region
|
||||
}
|
||||
teaser_city {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser Ort
|
||||
description = Teaser für einen auswählbaren Ort
|
||||
tt_content_defValues.CType = teaser_city
|
||||
}
|
||||
teaser_hotel {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser Hotel
|
||||
description = Teaser für ein auswählbares Hotel
|
||||
tt_content_defValues.CType = teaser_hotel
|
||||
}
|
||||
teaser_concept {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser Konzept
|
||||
description = Teaser für ein auswählbares Konzept
|
||||
tt_content_defValues.CType = teaser_concept
|
||||
}
|
||||
teaser_product {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser Produkt
|
||||
description = Teaser für ein auswählbares Produkt
|
||||
tt_content_defValues.CType = teaser_product
|
||||
}
|
||||
teaser_booking_link {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Teaser Buchungslink
|
||||
description = Teaser für ein auswählbares Produkt (Buchungslink)
|
||||
tt_content_defValues.CType = teaser_booking_link
|
||||
}
|
||||
}
|
||||
show := addToList(teaser, teaser_country, teaser_region, teaser_city, teaser_hotel, teaser_concept)
|
||||
show := addToList(teaser_product, teaser_booking_link)
|
||||
}
|
||||
disturber {
|
||||
header = Störer
|
||||
elements {
|
||||
disturber {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Störer
|
||||
description = Störer mit Bild, mehreren Buttons und Kontaktinfo
|
||||
tt_content_defValues.CType = disturber
|
||||
}
|
||||
disrupter {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Störer (neu)
|
||||
description = Störer mit Bild, mehreren Buttons und Kontaktinfo
|
||||
tt_content_defValues.CType = disrupter
|
||||
}
|
||||
deal_of_the_week {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Deal der Woche
|
||||
description = Störer 'Deal der Woche' mit link auf Produkt
|
||||
tt_content_defValues.CType = deal_of_the_week
|
||||
}
|
||||
}
|
||||
show := addToList(disturber, disrupter, deal_of_the_week)
|
||||
}
|
||||
special {
|
||||
elements {
|
||||
faq_overview {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = FAQ Alle Kategorien
|
||||
description = Alle FAQ-Einträge nach Kategorie gruppiert
|
||||
tt_content_defValues.CType = faq_overview
|
||||
}
|
||||
lineup {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Lineup
|
||||
description = Links/rechts alternierende Boxen
|
||||
tt_content_defValues.CType = lineup
|
||||
}
|
||||
event_pricetable {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Event Preistabelle
|
||||
description = Preistabelle nach Verfügbarkeit
|
||||
tt_content_defValues.CType = event_pricetable
|
||||
}
|
||||
nlform {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Newsletter Anmeldung
|
||||
description = Anmeldeformular
|
||||
tt_content_defValues.CType = nlform
|
||||
}
|
||||
}
|
||||
show := addToList(faq_overview, lineup, event_pricetable, nlform)
|
||||
}
|
||||
common {
|
||||
elements {
|
||||
gmap {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = OSM Map
|
||||
description = OSM Map für Hotel oder Gebiet
|
||||
tt_content_defValues.CType = gmap
|
||||
}
|
||||
contact {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Ansprechpartner
|
||||
description = Kontaktbox mit Ansprechpartner für Sidebar
|
||||
tt_content_defValues.CType = contact
|
||||
}
|
||||
calendar {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Belegungskalender
|
||||
description = Belegungskalender zu einem ausgewählten Vertragspartner
|
||||
tt_content_defValues.CType = calendar
|
||||
}
|
||||
ytvideo {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = YouTube Video
|
||||
description = Responsiv eingebettetes Video
|
||||
tt_content_defValues.CType = ytvideo
|
||||
}
|
||||
button {
|
||||
iconIdentifier = content-ep_theme-ce
|
||||
title = Button
|
||||
description = Button mit Referrer Übertragung
|
||||
tt_content_defValues.CType = button
|
||||
}
|
||||
}
|
||||
show := addToList(gmap, contact, calendar, ytvideo, button)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
RTE {
|
||||
config {
|
||||
tt_content {
|
||||
bodytext {
|
||||
types {
|
||||
text {
|
||||
preset = ep-reisen
|
||||
}
|
||||
textmedia {
|
||||
preset = ep-reisen
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
tx_epproducts_domain_model_travelinfo {
|
||||
intro_text {
|
||||
preset = ep-minimal
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,179 @@
|
||||
TCEFORM {
|
||||
tt_content {
|
||||
CType {
|
||||
# Remove content elements added by EXT:ep_events
|
||||
removeItems := addToList(tile, statement, herounit, banner)
|
||||
}
|
||||
|
||||
imageorient.removeItems := addToList(0,1,2,8,9,25,26)
|
||||
imageorient.disabled = 1
|
||||
imagecols.disabled = 1
|
||||
image_noRows.disabled = 1
|
||||
imageborder.disabled = 1
|
||||
imagewidth.disabled = 1
|
||||
imageheight.disabled = 1
|
||||
image_link.disabled = 1
|
||||
image_zoom = 1
|
||||
image_compression.disabled = 1
|
||||
image_effects.disabled = 1
|
||||
image_frames.disabled = 1
|
||||
imagecaption_position.disabled = 1
|
||||
|
||||
header_layout {
|
||||
altLabels {
|
||||
1 = H1
|
||||
2 = H2
|
||||
3 = H3
|
||||
4 = H4
|
||||
5 = H5
|
||||
}
|
||||
addItems {
|
||||
6 = H1 (mit Unterstreichung)
|
||||
7 = H2 (mit Unterstreichung)
|
||||
8 = H1 (mit Topline)
|
||||
9 = H2 (mit Topline)
|
||||
}
|
||||
}
|
||||
|
||||
layout {
|
||||
disabled = 1
|
||||
types {
|
||||
textmedia {
|
||||
disabled = 0
|
||||
removeItems = 1
|
||||
altLabels {
|
||||
2 = Slider
|
||||
3 = Link Panel
|
||||
}
|
||||
addItems {
|
||||
4 = Slider (ohne Thumbnails)
|
||||
5 = Partnerlogos
|
||||
}
|
||||
}
|
||||
gridelements_pi1 {
|
||||
disabled = 0
|
||||
removeItems := addToList(1,2,3)
|
||||
}
|
||||
teaser {
|
||||
disabled = 0
|
||||
removeItems := addToList(2,3)
|
||||
altLabels {
|
||||
0 = einspaltig
|
||||
1 = zweispaltig
|
||||
}
|
||||
}
|
||||
disturber {
|
||||
disabled = 0
|
||||
altLabels {
|
||||
0 = klein
|
||||
1 = groß
|
||||
2 = Event klein
|
||||
3 = Event groß
|
||||
}
|
||||
}
|
||||
teaser_product {
|
||||
disabled = 0
|
||||
removeItems := addToList(0,2)
|
||||
altLabels {
|
||||
1 = einspaltig
|
||||
3 = mehrspaltig/quer
|
||||
}
|
||||
}
|
||||
teaser_booking_link {
|
||||
disabled = 0
|
||||
removeItems := addToList(0,2)
|
||||
altLabels {
|
||||
1 = einspaltig
|
||||
3 = mehrspaltig/quer
|
||||
}
|
||||
}
|
||||
ytvideo {
|
||||
disabled = 0
|
||||
removeItems := addToList(2,3)
|
||||
altLabels {
|
||||
0 = YouTube
|
||||
1 = Vimeo
|
||||
}
|
||||
}
|
||||
ep_container_teasergroup {
|
||||
disabled = 0
|
||||
removeItems := addToList(2,3)
|
||||
altLabels {
|
||||
0 = ohne Hintergrund
|
||||
1 = mit Hintergrund
|
||||
}
|
||||
}
|
||||
ep_container_quarters < .ep_container_teasergroup
|
||||
}
|
||||
}
|
||||
|
||||
colPos {
|
||||
label = Slot
|
||||
altLabels.1848 = Blogeintrag
|
||||
}
|
||||
|
||||
space_before_class {
|
||||
types {
|
||||
gridelements_pi1.disabled = 1
|
||||
form_formframework.disabled = 1
|
||||
}
|
||||
removeItems := addToList(extra-small, medium, extra-large)
|
||||
altLabels.. = Standard (ohne)
|
||||
}
|
||||
|
||||
space_after_class < .space_before_class
|
||||
|
||||
frame_class.disabled = 1
|
||||
table_bgColor.disabled = 1
|
||||
table_border.disabled = 1
|
||||
table_cellspacing.disabled = 1
|
||||
table_cellpadding.disabled = 1
|
||||
filelink_size.disabled = 1
|
||||
uploads_description.disabled = 1
|
||||
uploads_type.disabled = 1
|
||||
rowDescription.disabled = 1
|
||||
categories.disabled = 1
|
||||
date.disabled = 1
|
||||
select_key.disabled = 1
|
||||
linkToTop.disabled = 1
|
||||
header_position.disabled = 1
|
||||
header.label = Headline
|
||||
subheader.label = Topline
|
||||
fe_group.disabled = 1
|
||||
editlock.disabled = 1
|
||||
sys_language_uid.disabled = 1
|
||||
tx_epevents_configurator_travel_type.disabled = 1
|
||||
tx_yoastseo_linking_suggestions.disabled = 1
|
||||
}
|
||||
|
||||
pages {
|
||||
cache_tags.disabled = 1
|
||||
fe_login_mode.disabled = 1
|
||||
layout.disabled = 1
|
||||
abstract.disabled = 1
|
||||
author.disabled = 1
|
||||
author_email.disabled = 1
|
||||
lastUpdated.disabled = 1
|
||||
newUntil.disabled = 1
|
||||
alias.disabled = 1
|
||||
notes.disabled = 1
|
||||
categories.disabled = 1
|
||||
sys_language_uid.disabled = 1
|
||||
l18n_cfg.disabled = 1
|
||||
module.disabled = 0
|
||||
media.disabled = 1
|
||||
}
|
||||
|
||||
tx_news_domain_model_news {
|
||||
notes.disabled = 1
|
||||
keywords.disabled = 1
|
||||
editlock.disabled = 1
|
||||
fe_group.disabled = 1
|
||||
type.disabled = 1
|
||||
sys_language_uid.disabled = 1
|
||||
author_email.disabled = 1
|
||||
starttime.disabled = 1
|
||||
endtime.disabled = 1
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
TCEMAIN.permissions {
|
||||
groupid = 1
|
||||
user = show, editcontent, edit, new, delete
|
||||
group = show, edit, delete, new, editcontent
|
||||
everybody = show
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
tt_content.button =< lib.contentElement
|
||||
tt_content.button {
|
||||
templateName = Button
|
||||
variables {
|
||||
referrerPid = TEXT
|
||||
referrerPid.data = TSFE:id
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
tt_content.calendar =< lib.contentElement
|
||||
tt_content.calendar {
|
||||
templateName = Calendar
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
10 {
|
||||
table = tx_epproducts_domain_model_hotel
|
||||
where.data = field:tx_eptheme_context_hotel
|
||||
where.wrap = uid=|
|
||||
pidInList = 5
|
||||
as = hotel
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
tt_content.contact =< lib.contentElement
|
||||
tt_content.contact {
|
||||
templateName = Contact
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
10 {
|
||||
table = tx_epproducts_domain_model_teammember
|
||||
where.data = field:tx_eptheme_contact
|
||||
where.wrap = uid=|
|
||||
pidInList = {$plugin.tx_eptheme.settings.teamMemberStoragePid}
|
||||
as = contact
|
||||
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
|
||||
10 {
|
||||
references.fieldName = image
|
||||
references.table = tx_epproducts_domain_model_teammember
|
||||
as = image
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
tt_content.ep_container_halves =< lib.contentElement
|
||||
tt_content.ep_container_halves {
|
||||
templateName = Halves
|
||||
templateRootPaths {
|
||||
10 = EXT:ep_theme/Resources/Private/Templates/Container
|
||||
}
|
||||
dataProcessing {
|
||||
100 = B13\Container\DataProcessing\ContainerProcessor
|
||||
}
|
||||
}
|
||||
|
||||
tt_content.ep_container_thirds =< lib.contentElement
|
||||
tt_content.ep_container_thirds {
|
||||
templateName = Thirds
|
||||
templateRootPaths {
|
||||
10 = EXT:ep_theme/Resources/Private/Templates/Container
|
||||
}
|
||||
dataProcessing {
|
||||
100 = B13\Container\DataProcessing\ContainerProcessor
|
||||
}
|
||||
}
|
||||
|
||||
tt_content.ep_container_quarters =< lib.contentElement
|
||||
tt_content.ep_container_quarters {
|
||||
templateName = Quarters
|
||||
templateRootPaths {
|
||||
10 = EXT:ep_theme/Resources/Private/Templates/Container
|
||||
}
|
||||
dataProcessing {
|
||||
100 = B13\Container\DataProcessing\ContainerProcessor
|
||||
}
|
||||
}
|
||||
|
||||
tt_content.ep_container_teasergroup =< lib.contentElement
|
||||
tt_content.ep_container_teasergroup {
|
||||
templateName = Teasergroup
|
||||
templateRootPaths {
|
||||
10 = EXT:ep_theme/Resources/Private/Templates/Container
|
||||
}
|
||||
dataProcessing {
|
||||
100 = B13\Container\DataProcessing\ContainerProcessor
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
tt_content.disrupter =< lib.contentElement
|
||||
tt_content.disrupter {
|
||||
templateName = Disrupter
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
10 {
|
||||
table = tx_eptheme_domain_model_disrupter
|
||||
pidInList = {$plugin.tx_eptheme.settings.disrupterStoragePid}
|
||||
join = tx_eptheme_ttcontent_tx_eptheme_disrupter_mm ON tx_eptheme_ttcontent_tx_eptheme_disrupter_mm.uid_foreign = tx_eptheme_domain_model_disrupter.uid
|
||||
where {
|
||||
data = field:uid
|
||||
intval = 1
|
||||
wrap = tx_eptheme_ttcontent_tx_eptheme_disrupter_mm.uid_local=|
|
||||
}
|
||||
as = disrupter
|
||||
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
|
||||
10 {
|
||||
references.fieldName = image
|
||||
references.table = tx_eptheme_domain_model_disrupter
|
||||
as = image
|
||||
}
|
||||
20 = EP\EpTheme\DataProcessing\FlexFormProcessor
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
tt_content.deal_of_the_week =< lib.contentElement
|
||||
tt_content.deal_of_the_week {
|
||||
templateName = DealOfTheWeek
|
||||
}
|
||||
|
||||
tt_content.disturber =< lib.contentElement
|
||||
tt_content.disturber {
|
||||
templateName = Disturber
|
||||
dataProcessing {
|
||||
10 = EP\EpTheme\DataProcessing\TeaserImageProcessor
|
||||
20 = EP\EpTheme\DataProcessing\FlexFormProcessor
|
||||
}
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
tt_content.event_pricetable =< lib.contentElement
|
||||
tt_content.event_pricetable {
|
||||
templateName = EventPricetable
|
||||
variables {
|
||||
forcePartnerIdSelect = TEXT
|
||||
forcePartnerIdSelect.value = {$plugin.tx_eptheme.settings.forcePartnerIdSelect}
|
||||
partnerIdSelectLabel = TEXT
|
||||
partnerIdSelectLabel.value = {$plugin.tx_eptheme.settings.partnerIdSelectLabel}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
tt_content.faq_overview =< lib.contentElement
|
||||
tt_content.faq_overview {
|
||||
templateName = FaqOverview
|
||||
settings {
|
||||
infoPageUid = {$plugin.tx_eptheme.settings.infoPageUid}
|
||||
}
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
10 {
|
||||
table = tx_epproducts_domain_model_faq
|
||||
where = category != ''
|
||||
orderBy = category ASC, uid ASC
|
||||
pidInList = {$plugin.tx_epproducts.settings.faqsStoragePid}
|
||||
as = faqs
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
tt_content.gmap =< tt_content.teaser_product
|
||||
tt_content.gmap {
|
||||
templateName = Gmap
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
10 {
|
||||
table = tx_epproducts_domain_model_hotel
|
||||
where.data = field:tx_eptheme_context_hotel
|
||||
where.wrap = uid=|
|
||||
pidInList = {$plugin.tx_epproducts.settings.hotelsStoragePid}
|
||||
as = hotel
|
||||
}
|
||||
20 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
20 {
|
||||
table = tx_epproducts_domain_model_region
|
||||
where.data = field:tx_eptheme_context_region
|
||||
where.wrap = uid=|
|
||||
pidInList = {$plugin.tx_epproducts.settings.destinationsStoragePid}
|
||||
recursive = 2
|
||||
as = region
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
tt_content.lineup =< lib.contentElement
|
||||
tt_content.lineup {
|
||||
templateName = Lineup
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
10 {
|
||||
table = tx_eptheme_domain_model_lineup
|
||||
where.data = field:uid
|
||||
where.wrap = tt_content=|
|
||||
orderBy = sorting
|
||||
as = items
|
||||
|
||||
dataProcessing {
|
||||
10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
|
||||
10 {
|
||||
references.fieldName = image
|
||||
references.table = tx_eptheme_domain_model_lineup
|
||||
as = image
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
tt_content.list.dataProcessing {
|
||||
10 = EP\EpTheme\DataProcessing\FlexFormProcessor
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
tt_content.nlform =< lib.contentElement
|
||||
tt_content.nlform {
|
||||
templateName = NewsletterForm
|
||||
variables {
|
||||
formUrl = TEXT
|
||||
formUrl.wrap = |/buchung/anmeldung_news.php
|
||||
formUrl.data = site:base
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
tt_content.teaser =< lib.contentElement
|
||||
tt_content.teaser {
|
||||
templateName = Teaser
|
||||
dataProcessing {
|
||||
10 = EP\EpTheme\DataProcessing\ContextProcessor
|
||||
20 = EP\EpTheme\DataProcessing\TeaserImageProcessor
|
||||
}
|
||||
settings.teaserTextMaxChars = {$plugin.tx_eptheme.settings.teaserTextMaxChars}
|
||||
}
|
||||
|
||||
tt_content.teaser_country < lib.contentElement
|
||||
tt_content.teaser_country {
|
||||
templateName = TeaserCountry
|
||||
dataProcessing {
|
||||
10 = EP\EpTheme\DataProcessing\TeaserProcessor
|
||||
}
|
||||
settings.teaserTextMaxChars = {$plugin.tx_eptheme.settings.teaserTextMaxChars}
|
||||
}
|
||||
|
||||
tt_content.teaser_region =< tt_content.teaser_country
|
||||
tt_content.teaser_region.templateName = TeaserRegion
|
||||
tt_content.teaser_city =< tt_content.teaser_country
|
||||
tt_content.teaser_city.templateName = TeaserCity
|
||||
tt_content.teaser_hotel =< tt_content.teaser_country
|
||||
tt_content.teaser_hotel.templateName = TeaserHotel
|
||||
tt_content.teaser_concept =< tt_content.teaser_country
|
||||
tt_content.teaser_concept.templateName = TeaserConcept
|
||||
tt_content.teaser_product =< tt_content.teaser_country
|
||||
tt_content.teaser_product.templateName = TeaserProduct
|
||||
tt_content.teaser_booking_link =< tt_content.teaser_product
|
||||
tt_content.teaser_booking_link.templateName = TeaserBookingLink
|
||||
@@ -0,0 +1,4 @@
|
||||
tt_content.ytvideo =< lib.contentElement
|
||||
tt_content.ytvideo {
|
||||
templateName = YoutubeVideo
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
@import 'EXT:ep_products/Configuration/TypoScript/setup.typoscript'
|
||||
|
||||
plugin.tx_epproducts {
|
||||
view {
|
||||
layoutRootPaths.10 = EXT:ep_theme/Resources/Private/Layouts/Product/
|
||||
templateRootPaths.10 = EXT:ep_theme/Resources/Private/Templates/
|
||||
partialRootPaths.10 = EXT:ep_theme/Resources/Private/Partials/
|
||||
}
|
||||
settings {
|
||||
teaserTextMaxChars = {$plugin.tx_eptheme.settings.teaserTextMaxChars}
|
||||
infoPageUid = {$plugin.tx_eptheme.settings.infoPageUid}
|
||||
defaultAjaxUid = {$plugin.tx_eptheme.settings.defaultAjaxUid}
|
||||
defaultContactFormPageUid = {$plugin.tx_eptheme.settings.defaultContactFormPageUid}
|
||||
phoneNumber = {$plugin.tx_eptheme.settings.phoneNumber}
|
||||
bpnBookingUrlTemplateCode = {$plugin.tx_eptheme.settings.bpnBookingUrlTemplateCode}
|
||||
showSkipassBadge = {$plugin.tx_eptheme.settings.showSkipassBadge}
|
||||
ratingWidgetLabel = {$plugin.tx_eptheme.settings.ratingWidgetLabel}
|
||||
skipassPageUid = {$plugin.tx_eptheme.settings.skipassPageUid}
|
||||
conceptsPageUid = {$plugin.tx_eptheme.settings.conceptsPageUid}
|
||||
mapTileUrl = {$plugin.tx_eptheme.settings.mapTileUrl}
|
||||
mapApiKey = {$plugin.tx_eptheme.settings.mapApiKey}
|
||||
mapAttribution = {$plugin.tx_eptheme.settings.mapAttribution}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
@import 'EXT:fluid_styled_content/Configuration/TypoScript/setup.typoscript'
|
||||
|
||||
lib.contentElement {
|
||||
layoutRootPaths.20 = EXT:ep_theme/Resources/Private/Layouts/FluidStyledContent
|
||||
templateRootPaths.20 = EXT:ep_theme/Resources/Private/Templates/FluidStyledContent
|
||||
partialRootPaths.20 = EXT:ep_theme/Resources/Private/Partials
|
||||
settings < plugin.tx_eptheme.settings
|
||||
settings.themekey = {$plugin.tx_eptheme.settings.themekey}
|
||||
settings.defaultAjaxUid = {$plugin.tx_eptheme.settings.defaultAjaxUid}
|
||||
settings.mapTileUrl = {$plugin.tx_eptheme.settings.mapTileUrl}
|
||||
settings.mapApiKey = {$plugin.tx_eptheme.settings.mapApiKey}
|
||||
settings.mapAttribution = {$plugin.tx_eptheme.settings.mapAttribution}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
@import 'EXT:form/Configuration/TypoScript/setup.typoscript'
|
||||
@import 'EXT:form_element_linked_checkbox/Configuration/TypoScript/setup.typoscript'
|
||||
@import 'EXT:bw_captcha/Configuration/TypoScript/setup.typoscript'
|
||||
|
||||
plugin.tx_form.view {
|
||||
templateRootPaths.10 = EXT:ep_theme/Resources/Private/Templates/Form/
|
||||
}
|
||||
|
||||
plugin.tx_form.settings.yamlConfigurations {
|
||||
1630994710 = EXT:ep_theme/Configuration/Yaml/FormsBase.yaml
|
||||
1630994711 = EXT:ep_theme/Configuration/Yaml/FormFinishersFrontend.yaml
|
||||
}
|
||||
|
||||
module.tx_form.settings.yamlConfigurations {
|
||||
1630994710 = EXT:ep_theme/Configuration/Yaml/FormsBase.yaml
|
||||
1630994711 = EXT:ep_theme/Configuration/Yaml/FormFinishersBackend.yaml
|
||||
}
|
||||
|
||||
plugin.tx_bwcaptcha.settings {
|
||||
charset = abcdefghjkmnpqrtuvwxy34679
|
||||
length = 4
|
||||
width = 220
|
||||
height = 60
|
||||
}
|
||||
|
||||
# Requests with a malformed type (e.g. ?type=03413) bypass the bw_captcha middleware's
|
||||
# strict string check and get rendered as this empty PAGE. If it were cacheable, genuine
|
||||
# ?type=3413 requests would hit that cache entry, TypoScript would never be parsed and
|
||||
# the middleware would crash on empty settings.
|
||||
captcha.config.no_cache = 1
|
||||
@@ -0,0 +1,20 @@
|
||||
@import 'EXT:gridelements/Configuration/TypoScript/setup.typoscript'
|
||||
|
||||
tt_content.gridelements_pi1.20.10.setup {
|
||||
quarters < lib.gridelements.defaultGridSetup
|
||||
quarters {
|
||||
cObject = FLUIDTEMPLATE
|
||||
cObject {
|
||||
templateName = Quarters
|
||||
templateRootPaths.0 = EXT:ep_theme/Resources/Private/Templates/Gridelements/
|
||||
layoutRootPaths.0 = EXT:ep_theme/Resources/Private/Layouts/Gridelements/
|
||||
partialRootPaths.0 = EXT:ep_theme/Resources/Private/Partials/
|
||||
}
|
||||
}
|
||||
thirds < .quarters
|
||||
thirds.cObject.templateName = Thirds
|
||||
halves < .quarters
|
||||
halves.cObject.templateName = Halves
|
||||
halfAndTwoQuarters < .quarters
|
||||
halfAndTwoQuarters.cObject.templateName = HalfAndTwoQuarters
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
@import 'EXT:news/Configuration/TypoScript/setup.txt'
|
||||
|
||||
plugin.tx_news {
|
||||
view {
|
||||
layoutRootPaths.100 = EXT:ep_theme/Resources/Private/Layouts/News/
|
||||
templateRootPaths.100 = EXT:ep_theme/Resources/Private/Templates/News/
|
||||
partialRootPaths.100 = EXT:ep_theme/Resources/Private/Partials/News/
|
||||
widget.GeorgRinger\News\ViewHelpers\Widget\PaginateViewHelper.templateRootPath = EXT:ep_theme/Resources/Private/Templates/News/
|
||||
}
|
||||
settings {
|
||||
tagListPageUid = {$plugin.tx_eptheme.settings.blogTagListPageUid}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
config.tx_replacer {
|
||||
enable_regex = 1
|
||||
|
||||
# Only images go to the CDN. The theme's own css/js/fonts are served by the production
|
||||
# host: they are already minified by Webpack, gzipped by mod_deflate and content-hashed
|
||||
# for a year of immutable browser caching, and keeping them on the page's own origin
|
||||
# means they arrive over the connection the browser has already opened rather than
|
||||
# costing a second DNS lookup and TLS handshake on the critical path.
|
||||
#
|
||||
# It also keeps them clear of the pull zone's habit of occasionally wedging a single
|
||||
# cache key (10.0s -> 504 errorcode 106 until that key is purged, while the origin
|
||||
# serves the same bytes in under 100ms). For an image that degrades one element; for
|
||||
# js/main.<hash>.js it would take every visitor's JavaScript down.
|
||||
#
|
||||
# typo3temp is scoped to generated images on purpose - assets/compressed holds other
|
||||
# extensions' concatenated css/js, which belongs on the origin for the same reason.
|
||||
# The quote character is captured rather than matched literally, so url() values
|
||||
# written with single quotes are rewritten too.
|
||||
search {
|
||||
10 = /(["'])\/?(fileadmin|uploads|typo3temp\/assets\/(?:_processed_|images))/
|
||||
}
|
||||
|
||||
replace {
|
||||
10 = $1https://cdn.ep-reisen.de/$2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
@import 'EXT:seo/Configuration/TypoScript/XmlSitemap/setup.typoscript'
|
||||
|
||||
["{$plugin.tx_eptheme.settings.bookingLinksPid}" > "0"]
|
||||
plugin.tx_seo {
|
||||
config {
|
||||
xmlSitemap {
|
||||
sitemaps {
|
||||
pages {
|
||||
config {
|
||||
excludedDoktypes = 4,1701,1702,1803
|
||||
additionalWhere = AND pid NOT IN ({$plugin.tx_eptheme.settings.bookingLinksPid}) AND no_index = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
[END]
|
||||
@@ -0,0 +1,10 @@
|
||||
@import 'EXT:typo3_encore/Configuration/TypoScript/setup.typoscript'
|
||||
|
||||
plugin.tx_typo3encore {
|
||||
settings {
|
||||
builds {
|
||||
EpThemeConfig = EXT:ep_theme/Resources/Public
|
||||
}
|
||||
preload.enable = 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
lib.breadcrumb = HMENU
|
||||
lib.breadcrumb {
|
||||
special = rootline
|
||||
special.range = 0|-1
|
||||
1 = TMENU
|
||||
1.wrap = <div class="hidden md:flex container mb-8 text-sm">|</div>
|
||||
1.NO {
|
||||
stdWrap.htmlSpecialChars = 1
|
||||
ATagTitle.field = nav_title // title
|
||||
linkWrap = |<span class="px-1">/</span>|*||*| |
|
||||
doNotLinkIt = |*| 0 |*| 1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
lib.dynamicContent = COA
|
||||
lib.dynamicContent {
|
||||
5 = LOAD_REGISTER
|
||||
5 {
|
||||
colPos.cObject = TEXT
|
||||
colPos.cObject {
|
||||
field = colPos
|
||||
ifEmpty.cObject = TEXT
|
||||
ifEmpty.cObject {
|
||||
value.current = 1
|
||||
ifEmpty = 0
|
||||
}
|
||||
}
|
||||
pageUid.cObject = TEXT
|
||||
pageUid.cObject {
|
||||
field = pageUid
|
||||
ifEmpty.data = TSFE:id
|
||||
}
|
||||
contentFromPid.cObject = TEXT
|
||||
contentFromPid.cObject {
|
||||
data = DB:pages:{register:pageUid}:content_from_pid
|
||||
data.insertData = 1
|
||||
}
|
||||
wrap.cObject = TEXT
|
||||
wrap.cObject {
|
||||
field = wrap
|
||||
}
|
||||
}
|
||||
20 = CONTENT
|
||||
20 {
|
||||
table = tt_content
|
||||
select {
|
||||
includeRecordsWithoutDefaultTranslation = 1
|
||||
orderBy = sorting
|
||||
where = colPos={register:colPos}
|
||||
where.insertData = 1
|
||||
pidInList.data = register:pageUid
|
||||
pidInList.override.data = register:contentFromPid
|
||||
}
|
||||
stdWrap {
|
||||
dataWrap = {register:wrap}
|
||||
required = 1
|
||||
}
|
||||
}
|
||||
90 = RESTORE_REGISTER
|
||||
}
|
||||
|
||||
lib.dynamicContentSlide =< lib.dynamicContent
|
||||
lib.dynamicContentSlide.20.slide = -1
|
||||
@@ -0,0 +1,124 @@
|
||||
lib.parseFunc {
|
||||
makelinks = 1
|
||||
makelinks {
|
||||
http {
|
||||
keep = path
|
||||
extTarget = _blank
|
||||
}
|
||||
mailto {
|
||||
keep = path
|
||||
}
|
||||
}
|
||||
tags {
|
||||
link = TEXT
|
||||
link {
|
||||
current = 1
|
||||
typolink {
|
||||
parameter {
|
||||
data = parameters : allParams
|
||||
}
|
||||
extTarget = _blank
|
||||
}
|
||||
parseFunc.constants = 1
|
||||
}
|
||||
a = TEXT
|
||||
a {
|
||||
current = 1
|
||||
typolink {
|
||||
parameter.data = parameters:href
|
||||
title.data = parameters:title
|
||||
ATagParams.data = parameters:allParams
|
||||
target.data = parameters:target
|
||||
extTarget = _blank
|
||||
extTarget.override.data = parameters:target
|
||||
}
|
||||
}
|
||||
}
|
||||
allowTags := addToList(a, abbr, acronym, address, article, aside, b, bdo)
|
||||
allowTags := addToList(big, blockquote, br, caption, center, cite, code, col)
|
||||
allowTags := addToList(colgroup, dd, del, dfn, dl, div, dt, em, font)
|
||||
allowTags := addToList(footer, header, h1, h2, h3, h4, h5, h6, hr, i, img)
|
||||
allowTags := addToList(ins, kbd, label, li, link, meta, nav, ol, p, pre, q)
|
||||
allowTags := addToList(samp, sdfield, section, small, span, strike, strong)
|
||||
allowTags := addToList(style, sub, sup, table, thead, tbody, tfoot, td, th)
|
||||
allowTags := addToList(tr, title, tt, u, ul, var)
|
||||
denyTags = *
|
||||
sword = <span class="text-highlight">|</span>
|
||||
constants = 1
|
||||
nonTypoTagStdWrap {
|
||||
HTMLparser = 1
|
||||
HTMLparser {
|
||||
keepNonMatchedTags = 1
|
||||
htmlSpecialChars = 2
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
lib.parseFunc_RTE < lib.parseFunc
|
||||
lib.parseFunc_RTE {
|
||||
externalBlocks := addToList(article, aside, blockquote, div, dd, dl, footer)
|
||||
externalBlocks := addToList(header, nav, ol, section, table, ul, pre, svg, use)
|
||||
externalBlocks {
|
||||
ol {
|
||||
stripNL = 1
|
||||
stdWrap {
|
||||
parseFunc = < lib.parseFunc
|
||||
}
|
||||
}
|
||||
ul {
|
||||
stripNL = 1
|
||||
stdWrap {
|
||||
parseFunc = < lib.parseFunc
|
||||
}
|
||||
}
|
||||
table {
|
||||
stripNL = 1
|
||||
stdWrap {
|
||||
wrap = <div class="w-full overflow-x-scroll mb-4">|</div>
|
||||
}
|
||||
callRecursive = 1
|
||||
callRecursive.tagStdWrap.HTMLparser = 1
|
||||
callRecursive.tagStdWrap.HTMLparser.tags.table {
|
||||
fixAttrib.class.default = w-full
|
||||
}
|
||||
HTMLtableCells = 1
|
||||
HTMLtableCells {
|
||||
default.stdWrap {
|
||||
parseFunc = < lib.parseFunc_RTE
|
||||
parseFunc {
|
||||
nonTypoTagStdWrap {
|
||||
encapsLines {
|
||||
nonWrappedTag =
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
pre {
|
||||
stripNL = 1
|
||||
}
|
||||
div {
|
||||
stripNL = 1
|
||||
callRecursive = 1
|
||||
}
|
||||
blockquote < .div
|
||||
article < .div
|
||||
aside < .div
|
||||
footer < .div
|
||||
header < .div
|
||||
nav < .div
|
||||
section < .div
|
||||
dl < .div
|
||||
dd < .div
|
||||
}
|
||||
nonTypoTagStdWrap.encapsLines >
|
||||
nonTypoTagStdWrap {
|
||||
HTMLparser = 1
|
||||
HTMLparser {
|
||||
keepNonMatchedTags = 1
|
||||
htmlSpecialChars = 2
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
lib.searchBar = USER
|
||||
lib.searchBar {
|
||||
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
|
||||
extensionName = EpProducts
|
||||
pluginName = searchbar
|
||||
vendorName = EP
|
||||
controller = Searchbar
|
||||
action = index
|
||||
switchableControllerActions {
|
||||
Searchbar {
|
||||
1 = index
|
||||
}
|
||||
}
|
||||
settings =< plugin.tx_epproducts.settings
|
||||
settings.searchPageUid < plugin.tx_epproducts.settings.defaultSearchPageUid
|
||||
persistence =< plugin.tx_epproducts.persistence
|
||||
view =< plugin.tx_epproducts.view
|
||||
}
|
||||
|
||||
lib.searchBarCollapsed < lib.searchBar
|
||||
lib.searchBarCollapsed.settings.collapsed = 1
|
||||
@@ -0,0 +1,135 @@
|
||||
lib.tue_sitemapcsv = COA_INT
|
||||
lib.tue_sitemapcsv {
|
||||
5 = TEXT
|
||||
5 {
|
||||
value (
|
||||
"URL";"Latest change";"Doktype";"Title";"Nav Title";"Description"
|
||||
)
|
||||
}
|
||||
10 = COA
|
||||
10 {
|
||||
10 = TEXT
|
||||
10 {
|
||||
typolink {
|
||||
forceAbsoluteUrl = 1
|
||||
parameter.field = uid
|
||||
returnLast = url
|
||||
}
|
||||
wrap = "|";
|
||||
replacement.10 {
|
||||
search = "
|
||||
replace = ""
|
||||
}
|
||||
}
|
||||
20 = CONTENT
|
||||
20 {
|
||||
table = tt_content
|
||||
select {
|
||||
pidInList.field = uid
|
||||
orderBy = tstamp DESC
|
||||
languageField = sys_language_uid
|
||||
max = 1
|
||||
}
|
||||
renderObj = COA
|
||||
renderObj {
|
||||
10 = TEXT
|
||||
10 {
|
||||
field = tstamp
|
||||
date = c
|
||||
postCObject = TEXT
|
||||
postCObject {
|
||||
field = tstamp
|
||||
age = " Minutes| Hours| Days| Years| Minute| Hour| Day| Year"
|
||||
noTrimWrap = | (vor |)|
|
||||
}
|
||||
if {
|
||||
value.field = tstamp
|
||||
isLessThan.data = DB:pages:{field:uid}:tstamp
|
||||
isLessThan.data.insertData = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
stdWrap {
|
||||
ifEmpty.cObject < lib.tue_sitemapcsv.10.20.renderObj.10
|
||||
ifEmpty.cObject.if >
|
||||
replacement < lib.tue_sitemapcsv.10.10.replacement
|
||||
wrap < lib.tue_sitemapcsv.10.10.wrap
|
||||
}
|
||||
}
|
||||
30 = CASE
|
||||
30 {
|
||||
key.field = doktype
|
||||
1 = TEXT
|
||||
1.value = Standard
|
||||
3 = TEXT
|
||||
3.value = External URL
|
||||
4 = TEXT
|
||||
4.value = Shortcut
|
||||
6 = TEXT
|
||||
6.value = Backend User Section
|
||||
stdWrap {
|
||||
replacement < lib.tue_sitemapcsv.10.10.replacement
|
||||
wrap < lib.tue_sitemapcsv.10.10.wrap
|
||||
}
|
||||
}
|
||||
40 = TEXT
|
||||
40 {
|
||||
field = title
|
||||
replacement < lib.tue_sitemapcsv.10.10.replacement
|
||||
wrap < lib.tue_sitemapcsv.10.10.wrap
|
||||
}
|
||||
50 = TEXT
|
||||
50 {
|
||||
field = nav_title
|
||||
replacement < lib.tue_sitemapcsv.10.10.replacement
|
||||
wrap < lib.tue_sitemapcsv.10.10.wrap
|
||||
}
|
||||
60 = TEXT
|
||||
60 {
|
||||
field = description
|
||||
replacement < lib.tue_sitemapcsv.10.10.replacement
|
||||
wrap < lib.tue_sitemapcsv.10.10.wrap
|
||||
}
|
||||
100 = TEXT
|
||||
100 {
|
||||
value (
|
||||
|
||||
|
||||
)
|
||||
}
|
||||
}
|
||||
20 = HMENU
|
||||
20 {
|
||||
includeNotInMenu = 1
|
||||
1 = TMENU
|
||||
1 {
|
||||
noBlur = 1
|
||||
expAll = 1
|
||||
NO {
|
||||
doNotShowLink = 1
|
||||
allStdWrap.cObject < lib.tue_sitemapcsv.10
|
||||
}
|
||||
}
|
||||
2 < .1
|
||||
3 < .1
|
||||
4 < .1
|
||||
5 < .1
|
||||
6 < .1
|
||||
}
|
||||
}
|
||||
|
||||
[backend.user.isLoggedIn]
|
||||
sitemapcsv = PAGE
|
||||
sitemapcsv {
|
||||
typeNum = 888
|
||||
config {
|
||||
disableAllHeaderCode = 1
|
||||
xhtml_cleaning = 0
|
||||
admPanel = 0
|
||||
debug = 0
|
||||
additionalHeaders = Content-type:text/csv;charset=utf-8|Content-Disposition:attachment; filename="sitemap.csv"
|
||||
}
|
||||
10 < lib.tue_sitemapcsv
|
||||
}
|
||||
[END]
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
ajax_page_json = PAGE
|
||||
ajax_page_json {
|
||||
typeNum = 1803
|
||||
config {
|
||||
disableAllHeaderCode = 1
|
||||
additionalHeaders.10.header = Content-type:application/json
|
||||
xhtml_cleaning = 0
|
||||
admPanel = 0
|
||||
debug = 0
|
||||
}
|
||||
|
||||
10 = USER_INT
|
||||
10 {
|
||||
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
|
||||
extensionName = EpTheme
|
||||
pluginName = Ajax
|
||||
vendorName = EP
|
||||
controller = AjaxForm
|
||||
action = processForm
|
||||
switchableControllerActions {
|
||||
AjaxForm {
|
||||
1 = processForm
|
||||
}
|
||||
}
|
||||
features.requireCHashArgumentForActionArguments = 0
|
||||
settings =< plugin.tx_eptheme.settings
|
||||
persistence =< plugin.tx_eptheme.persistence
|
||||
view =< plugin.tx_eptheme.view
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
# Chatbot content feed: the main content of a page, without header, navigation, footer or
|
||||
# assets. Fetched by MyE&P for pages the content manifest reports as changed; protected by
|
||||
# EP\EpProducts\Middleware\ContentPageTypeGuardMiddleware. See
|
||||
# .ddev/plans/CHATBOT-MCP-01-TYPO3-CONTENT-FEED.md §6.
|
||||
|
||||
# Plugins (the booking widget on product detail pages), forms, sub-page menus and teaser cards
|
||||
# are left out: MyE&P has trip data first-hand, and the pages and records the cards link to are
|
||||
# in the feed in their own right. The filter applies to top-level elements only; a plugin nested
|
||||
# in a grid or container element is still rendered by its parent.
|
||||
lib.contentOnly < lib.dynamicContent
|
||||
lib.contentOnly.20.select.where = colPos={register:colPos} AND CType NOT IN ({$plugin.tx_eptheme.settings.contentOnlyExcludedCTypes})
|
||||
|
||||
tx_eptheme_content_only = PAGE
|
||||
tx_eptheme_content_only {
|
||||
typeNum = 1730
|
||||
config {
|
||||
disableAllHeaderCode = 1
|
||||
disablePrefixComment = 1
|
||||
additionalHeaders.10.header = Content-Type: text/html; charset=utf-8
|
||||
additionalHeaders.20.header = X-Robots-Tag: noindex, nofollow, noarchive
|
||||
admPanel = 0
|
||||
debug = 0
|
||||
# Never written to disk: the type is key-protected, and a static file would be served
|
||||
# by .htaccess without that check ever running.
|
||||
tx_staticfilecache.disableCache = 1
|
||||
# Same reason for shared caches between us and the consumer: the TYPO3 page cache is
|
||||
# fine (the guard runs before it), a proxy storing a keyed response is not.
|
||||
sendCacheHeaders = 0
|
||||
additionalHeaders.30.header = Cache-Control: private, no-store
|
||||
}
|
||||
|
||||
10 = COA
|
||||
10 {
|
||||
wrap = <article>|</article>
|
||||
|
||||
10 = TEXT
|
||||
10.field = title
|
||||
10.htmlSpecialChars = 1
|
||||
10.wrap = <h1>|</h1>
|
||||
|
||||
# Page templates without a sidebar render colPos 0; the sidebar layouts render 3 (header),
|
||||
# 4 (content) and 2 (sidebar). colPos 1 holds teaser groups and is left out. The page
|
||||
# templates pass colPos in as data; here there is no template, so each copy sets it.
|
||||
# These must be copies (<), not references (=<): removing colPos.cObject on a reference
|
||||
# leaves the referenced cObject in place, and every column silently renders colPos 0.
|
||||
20 < lib.contentOnly
|
||||
20.5.colPos.cObject >
|
||||
20.5.colPos = 3
|
||||
|
||||
30 < lib.contentOnly
|
||||
30.5.colPos.cObject >
|
||||
30.5.colPos = 0
|
||||
|
||||
40 < lib.contentOnly
|
||||
40.5.colPos.cObject >
|
||||
40.5.colPos = 4
|
||||
|
||||
50 < lib.contentOnly
|
||||
50.5.colPos.cObject >
|
||||
50.5.colPos = 2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
xmlExport = PAGE
|
||||
xmlExport {
|
||||
typeNum = 1972
|
||||
config {
|
||||
xhtml_cleaning = none
|
||||
disableAllHeaderCode = 1
|
||||
additionalHeaders = Content-Type: text/xml; charset=utf-8
|
||||
simulateStaticDocuments = 0
|
||||
admPanel = 0
|
||||
debug = 0
|
||||
tx_realurl_enable = 1
|
||||
}
|
||||
10 = USER_INT
|
||||
10 {
|
||||
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
|
||||
extensionName = EpProducts
|
||||
pluginName = reseller
|
||||
vendorName = EP
|
||||
switchableControllerActions {
|
||||
Reseller {
|
||||
1 = xml
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,214 @@
|
||||
page = PAGE
|
||||
page {
|
||||
meta {
|
||||
viewport = width=device-width, initial-scale=1
|
||||
X-UA-Compatible = ie=edge
|
||||
format-detection = telephone=no
|
||||
}
|
||||
|
||||
bodyTagCObject = COA
|
||||
bodyTagCObject {
|
||||
10 = TEXT
|
||||
10.value = <body class="antialiased text-zinc-800 font-sans pt-14 lg:pt-8 bg-white
|
||||
20 = TEXT
|
||||
20 {
|
||||
field = tx_eptheme_bodyclass
|
||||
if.isTrue.field = tx_eptheme_bodyclass
|
||||
noTrimWrap = | ||
|
||||
}
|
||||
30 = TEXT
|
||||
30 {
|
||||
value = {$plugin.tx_eptheme.settings.themekey}
|
||||
if.isTrue = {$plugin.tx_eptheme.settings.themekey}
|
||||
noTrimWrap = | ||
|
||||
}
|
||||
35 = TEXT
|
||||
35 {
|
||||
field = uid
|
||||
noTrimWrap = | page-||
|
||||
}
|
||||
40 = TEXT
|
||||
40.value = ">
|
||||
}
|
||||
|
||||
# Every image on the page comes from the CDN host (see Extensions/Replacer.typoscript),
|
||||
# so a cold visitor pays a full DNS + TCP + TLS handshake - measured at 50-70ms - before
|
||||
# the first one can start downloading. `preconnect` gets that out of the way while the
|
||||
# HTML is still parsing. No `crossorigin`: images are fetched without CORS, and an
|
||||
# anonymous-vs-CORS mismatch would open a second connection instead of reusing this one.
|
||||
# Fonts, which would need it, are served by this host now.
|
||||
headerData.100 = TEXT
|
||||
headerData.100.value = <link rel="preconnect" href="https://cdn.ep-reisen.de">
|
||||
|
||||
headerData.333 = TEXT
|
||||
headerData.333.value (
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon.ico">
|
||||
<link rel="icon" type="image/x-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon.ico">
|
||||
<link rel="icon" type="image/gif" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon.gif">
|
||||
<link rel="icon" type="image/png" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon.png">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon.png">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-57x57.png" sizes="57x57">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-60x60.png" sizes="60x60">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-72x72.png" sizes="72x72">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-76x76.png" sizes="76x76">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-114x114.png" sizes="114x114">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-120x120.png" sizes="120x120">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-128x128.png" sizes="128x128">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-144x144.png" sizes="144x144">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-152x152.png" sizes="152x152">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-180x180.png" sizes="180x180">
|
||||
<link rel="apple-touch-icon" href="/typo3conf/ext/ep_theme/Resources/Public/images/apple-touch-icon-precomposed.png">
|
||||
<link rel="icon" type="image/png" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon-16x16.png" sizes="16x16">
|
||||
<link rel="icon" type="image/png" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon-32x32.png" sizes="32x32">
|
||||
<link rel="icon" type="image/png" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon-96x96.png" sizes="96x96">
|
||||
<link rel="icon" type="image/png" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon-160x160.png" sizes="160x160">
|
||||
<link rel="icon" type="image/png" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon-192x192.png" sizes="192x192">
|
||||
<link rel="icon" type="image/png" href="/typo3conf/ext/ep_theme/Resources/Public/images/favicon-196x196.png" sizes="196x196">
|
||||
)
|
||||
|
||||
# disableCompression keeps ResourceCompressor's hands off the Encore entries: Webpack
|
||||
# already minifies them, and copying them to typo3temp/assets/compressed only replaces the
|
||||
# content hash with a name derived from md5(abspath + mtime + size), which changes on every
|
||||
# deploy even when the bytes do not - defeating the immutable caching the hash exists for.
|
||||
# RequestHandler turns this into `compress => false`, which PageRendererHooks forwards to
|
||||
# typo3_encore's TagRenderer (whose own default it would otherwise override).
|
||||
includeCSS {
|
||||
main = typo3_encore:EpThemeConfig:main
|
||||
main.disableCompression = 1
|
||||
}
|
||||
|
||||
includeJSFooter {
|
||||
main = typo3_encore:EpThemeConfig:main
|
||||
main.defer = 1
|
||||
main.disableCompression = 1
|
||||
}
|
||||
|
||||
10 = FLUIDTEMPLATE
|
||||
10 {
|
||||
file {
|
||||
cObject = TEXT
|
||||
cObject {
|
||||
data = levelfield: -1, backend_layout_next_level, slide
|
||||
override {
|
||||
data = TSFE:page|backend_layout
|
||||
}
|
||||
|
||||
ifEmpty = Default
|
||||
split {
|
||||
token = pagets__
|
||||
1.current = 1
|
||||
1.wrap = |
|
||||
}
|
||||
|
||||
wrap = typo3conf/ext/ep_theme/Resources/Private/Templates/Page/|.html
|
||||
case = ucfirst
|
||||
}
|
||||
}
|
||||
|
||||
layoutRootPaths.0 = EXT:ep_theme/Resources/Private/Layouts/
|
||||
partialRootPaths.0 = EXT:ep_theme/Resources/Private/Partials/
|
||||
templateRootPaths.0 = EXT:ep_theme/Resources/Private/Templates/
|
||||
|
||||
dataProcessing {
|
||||
10 = EP\EpTheme\DataProcessing\ContextProcessor
|
||||
20 = EP\EpTheme\DataProcessing\SliderProcessor
|
||||
25 = EP\EpTheme\DataProcessing\ProductRatingProcessor
|
||||
30 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
|
||||
30 {
|
||||
table = tx_epproducts_domain_model_badge
|
||||
where.data = field:tx_eptheme_badge
|
||||
where.wrap = uid=|
|
||||
pidInList = {$plugin.tx_eptheme.settings.badgeStoragePid}
|
||||
as = badge
|
||||
if {
|
||||
equals.field = backend_layout
|
||||
value = pagets__detail
|
||||
negate = 1
|
||||
}
|
||||
}
|
||||
40 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
|
||||
40 {
|
||||
special = directory
|
||||
special.value = {$plugin.tx_eptheme.settings.topNavPid}
|
||||
levels = 1
|
||||
as = topnav
|
||||
}
|
||||
50 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
|
||||
50 {
|
||||
special = directory
|
||||
special.value = {$plugin.tx_eptheme.settings.mainNavPid}
|
||||
levels = 3
|
||||
titleField = title
|
||||
as = mainnav
|
||||
}
|
||||
60 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
|
||||
60 {
|
||||
special = directory
|
||||
special.value = {$plugin.tx_eptheme.settings.mobileNavPid}
|
||||
levels = 4
|
||||
expandAll = 1
|
||||
titleField = title
|
||||
as = mobilenav
|
||||
}
|
||||
70 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
|
||||
70 {
|
||||
special = directory
|
||||
special.value = {$plugin.tx_eptheme.settings.footerNavPid}
|
||||
levels = 2
|
||||
expandAll = 1
|
||||
titleField = title
|
||||
as = footernav
|
||||
}
|
||||
80 = TYPO3\CMS\Frontend\DataProcessing\SiteProcessor
|
||||
80 {
|
||||
as = site
|
||||
}
|
||||
}
|
||||
settings < plugin.tx_eptheme.settings
|
||||
}
|
||||
|
||||
headerData.990 = TEXT
|
||||
headerData.990 {
|
||||
value = <script src="{$plugin.tx_eptheme.settings.cookieFirstScriptUrl}"></script>
|
||||
if.isTrue = {$plugin.tx_eptheme.settings.cookieFirstScriptUrl}
|
||||
}
|
||||
|
||||
headerData.995 = TEXT
|
||||
headerData.995 {
|
||||
value (
|
||||
<!-- Google Tag Manager -->
|
||||
<script type="text/plain" data-cookiefirst-category="necessary">(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
||||
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
||||
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
||||
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
||||
})(window,document,'script','dataLayer','{$plugin.tx_eptheme.settings.googleTagManagerId}');</script>
|
||||
<!-- End Google Tag Manager -->
|
||||
)
|
||||
if.isTrue = {$plugin.tx_eptheme.settings.googleTagManagerId}
|
||||
}
|
||||
}
|
||||
|
||||
[page["backend_layout"] == 'pagets__popup']
|
||||
page.bodyTagCObject >
|
||||
page.bodyTagCObject = TEXT
|
||||
page.bodyTagCObject.value = <body class="antialiased text-zinc-800 font-sans bg-white p-4">
|
||||
page.headerData.333 >
|
||||
# page.headerData.990 >
|
||||
# page.headerData.995 >
|
||||
[end]
|
||||
|
||||
[page["backend_layout"] == 'pagets__travelinfo']
|
||||
page.bodyTagCObject >
|
||||
page.bodyTagCObject = TEXT
|
||||
page.bodyTagCObject.value = <body class="antialiased text-zinc-800 font-sans bg-white">
|
||||
[end]
|
||||
|
||||
[request.getNormalizedParams() && like(request.getNormalizedParams().getHttpUserAgent(), "*Googlebot*")]
|
||||
page.headerData.990 >
|
||||
page.headerData.995 >
|
||||
[end]
|
||||
|
||||
#[applicationContext == "Development" || applicationContext == "Production/Staging"]
|
||||
# page.headerData.990 >
|
||||
# page.headerData.995 >
|
||||
#[end]
|
||||
@@ -0,0 +1,202 @@
|
||||
# customsubcategory=100=Social links
|
||||
# customsubcategory=200=Navigations and page UIDs
|
||||
# customsubcategory=300=Google related
|
||||
# customsubcategory=400=Contact data
|
||||
# customsubcategory=500=Template
|
||||
# customsubcategory=600=XML Sitemap
|
||||
# customsubcategory=700=Event dates
|
||||
# customsubcategory=800=Badges
|
||||
# customsubcategory=900=MyE&P config
|
||||
|
||||
plugin.tx_eptheme {
|
||||
settings {
|
||||
# cat=eptheme/200/10; type=string; label=Theme key
|
||||
themekey = ep
|
||||
# cat=eptheme/200/100; type=string; label=Top navigation PID
|
||||
topNavPid =
|
||||
# cat=eptheme/200/110; type=string; label=Main navigation PID
|
||||
mainNavPid =
|
||||
# cat=eptheme/200/115; type=string; label=Mobile navigation PID
|
||||
mobileNavPid =
|
||||
# cat=eptheme/200/120; type=string; label=Footer navigation PID
|
||||
footerNavPid =
|
||||
# cat=eptheme/200/130; type=string; label=Default homepage UID
|
||||
defaultHomeUid =
|
||||
# cat=eptheme/200/131; type=string; label=Main site PID
|
||||
mainSitePid =
|
||||
# cat=eptheme/200/135; type=string; label=Link to apply to logo (overrides defaultHomeUid)
|
||||
logoLink =
|
||||
# cat=eptheme/200/140; type=string; label=Default page UID for ajax requests
|
||||
defaultAjaxUid =
|
||||
# cat=eptheme/200/150; type=string; label=Default contact form page UID
|
||||
defaultContactFormPageUid =
|
||||
# cat=eptheme/200/160; type=string; label=Legal notice page UID
|
||||
legalNoticePageUid =
|
||||
# cat=eptheme/200/170; type=string; label=Terms and conditions page UID
|
||||
termsAndConditionsPageUid =
|
||||
# cat=eptheme/200/180; type=string; label=Data protection page UID
|
||||
dataProtectionPageUid =
|
||||
# cat=eptheme/200/185; type=string; label=Image credits page UID
|
||||
imageCreditsPageUid =
|
||||
# cat=eptheme/200/190; type=string; label=Cookie policy page UID
|
||||
cookiePolicyPageUid =
|
||||
# cat=eptheme/200/200; type=string; label=FAQ page UID
|
||||
faqPageUid =
|
||||
# cat=eptheme/200/210; type=string; label=Info page UID
|
||||
infoPageUid =
|
||||
# cat=eptheme/200/220; type=string; label=Groups page UID
|
||||
groupsPageUid =
|
||||
# cat=eptheme/200/225; type=string; label=Blog detail page UID
|
||||
blogDetailPageUid =
|
||||
# cat=eptheme/200/230; type=string; label=Blog tag list page UID
|
||||
blogTagListPageUid =
|
||||
# cat=eptheme/200/240; type=string; label=Groups contact form page UID
|
||||
groupsContactFormPageUid =
|
||||
# cat=eptheme/200/250; type=string; label=Rating page UID
|
||||
ratingPageUid =
|
||||
# cat=eptheme/200/260; type=string; label=Watchlist page UID
|
||||
watchlistPageUid =
|
||||
# cat=eptheme/200/270; type=string; label=Skipass info page UID
|
||||
skipassPageUid =
|
||||
# cat=eptheme/200/280; type=string; label=English page UID
|
||||
englishPageUid =
|
||||
# cat=eptheme/200/285; type=string; label=German page UID
|
||||
germanPageUid =
|
||||
# cat=eptheme/200/290; type=string; label=Concepts page UID
|
||||
conceptsPageUid =
|
||||
# cat=eptheme/200/300; type=string; label=My E&P page UID
|
||||
myEpPageUid =
|
||||
# cat=eptheme/200/310; type=string; label=Booking links PID
|
||||
bookingLinksPid =
|
||||
# cat=eptheme/200/330; type=string; label=Groups price popup page UID
|
||||
groupsPricePopupPageUid =
|
||||
# cat=eptheme/200/340; type=string; label='Reisen Alert' page UID
|
||||
travelAlertPageUid =
|
||||
# cat=eptheme/200/350; type=string; label='Corona Updates' page UID
|
||||
coronaUpdatesPageUid =
|
||||
|
||||
# cat=eptheme/500/100; type=string; label=Map tile URL template (without apiKey)
|
||||
mapTileUrl = https://api-eu.geoapify.com/v1/tile/osm-bright/{z}/{x}/{y}.png
|
||||
# cat=eptheme/500/110; type=string; label=Map tile API key (Geoapify), restricted by referrer
|
||||
mapApiKey =
|
||||
# cat=eptheme/500/120; type=string; label=Map attribution (Geoapify and OpenStreetMap credits are both required)
|
||||
mapAttribution = Powered by <a href="https://www.geoapify.com/">Geoapify</a> | © <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors
|
||||
|
||||
# cat=eptheme/400/100; type=string; label=Phone number general
|
||||
phoneNumber = 0221 - 272 276 0
|
||||
# cat=eptheme/400/110; type=string; label=Phone number WhatsApp
|
||||
whatsApp = 0221 - 272 276 0
|
||||
# cat=eptheme/400/100; type=string; label=Phone number general
|
||||
phoneNumberLink = +492212722760
|
||||
# cat=eptheme/400/110; type=string; label=Phone number WhatsApp
|
||||
whatsAppNumberLink = https://wa.me/492212722760
|
||||
# cat=eptheme/400/120; type=string; label=Business hours days
|
||||
businessHoursDays = Montag - Freitag
|
||||
# cat=eptheme/400/130; type=string; label=Business hours time
|
||||
businessHoursTime = 08:30 bis 18:30
|
||||
# cat=eptheme/400/140; type=string; label=Contact form email to
|
||||
contactFormToEmail =
|
||||
# cat=eptheme/400/150; type=string; label=Contact form name to
|
||||
contactFormToName =
|
||||
# cat=eptheme/400/160; type=boolean; label=Enable contact form autoreply
|
||||
enableContactFormAutoreply = 0
|
||||
# cat=eptheme/400/170 type=string; label=Contact form autoreply subject
|
||||
contactFormAutoreplySubject = Ihre Anfrage bei E&P Reisen
|
||||
|
||||
# cat=eptheme/100/100; type=string; label=Facebook URL
|
||||
facebookUrl =
|
||||
# cat=eptheme/100/120; type=string; label=Instagram URL
|
||||
instagramUrl =
|
||||
# cat=eptheme/100/130; type=string; label=YouTube URL
|
||||
youtubeUrl =
|
||||
# cat=eptheme/100/135; type=string; label=tiktok URL
|
||||
tiktokUrl = https://www.tiktok.com/@ep_reisen
|
||||
# cat=eptheme/100/140; type=string; label=Facebook ViewContent 'product uid'
|
||||
facebookViewContentProductUid =
|
||||
# cat=eptheme/100/150; type=string; label=Facebook ViewContent 'name internal'
|
||||
facebookViewContentNameInternal =
|
||||
|
||||
# cat=eptheme; type=string; label=Slider storage PID
|
||||
sliderStoragePid =
|
||||
# cat=eptheme; type=string; label=Teammember storage PID
|
||||
teamMemberStoragePid =
|
||||
# cat=eptheme; type=string; label=Disrupter storage PID
|
||||
disrupterStoragePid =
|
||||
|
||||
# cat=eptheme/500/100; type=string; label=Teasertext max characters
|
||||
teaserTextMaxChars = 120
|
||||
# cat=eptheme/500/110; type=string; label=Default bodyclass
|
||||
defaultBodyclass = subpage
|
||||
# cat=eptheme/500/120; type=string; label=Logo image
|
||||
logoImage = EXT:ep_theme/Resources/Public/images/logo_wide.svg
|
||||
# cat=eptheme/500/130; type=string; label=Force active topnav uid
|
||||
forceActiveTopnavUid =
|
||||
# cat=eptheme/500/140; type=string; label=Booking URL template code
|
||||
bpnBookingUrlTemplateCode = base
|
||||
# cat=eptheme/500/150; type=string; label=Search page header image
|
||||
searchPageHeaderImage =
|
||||
# cat=eptheme/500/160; type=string; label=Rating widget label
|
||||
ratingWidgetLabel = Reisebewertung
|
||||
# cat=eptheme/500/170; type=boolean; label=Hide area/top navigation
|
||||
hideAreaNavigation = 0
|
||||
# cat=eptheme/500/170; type=boolean; label=Hide searchbar
|
||||
hideSearchbar = 0
|
||||
# cat=eptheme/500/180; type=string; label=Global concept code
|
||||
globalConceptCode =
|
||||
|
||||
# cat=eptheme/800/100; type=boolean; label=Show 'skipass inklusive' badge
|
||||
showSkipassBadge = 1
|
||||
# cat=eptheme/800/100; type=string; label=Custom badge storage PID
|
||||
badgeStoragePid =
|
||||
|
||||
# cat=eptheme/600/100; type=string; label=XML sitemap root page UID
|
||||
xmlSitemapRootPageUid =
|
||||
# cat=eptheme/600/110; type=string; label=XML sitemap page UIDs to exclude
|
||||
xmlSitemapExcludeUids =
|
||||
# cat=eptheme/600/120; type=string; label=CTypes left out of the chatbot content-only page type (quoted, comma-separated)
|
||||
contentOnlyExcludedCTypes = 'list','form_formframework','menu_subpages','teaser_product','teaser_hotel','teaser_concept','teaser_country','teaser_region','ep_container_teasergroup'
|
||||
|
||||
# cat=eptheme/300/100; type=string; label=Cookiefirst Script
|
||||
cookieFirstScriptUrl = https://consent.cookiefirst.com/sites/ep-reisen.de-fabb1554-8932-4075-85dc-97fa68892918/consent.js
|
||||
# cat=eptheme/300/110; type=string; label=Google Static Maps Base Url
|
||||
googleStaticMapsBaseUrl = https://maps.googleapis.com/maps/api/staticmap?key=AIzaSyDDOforD1O_j4xXy2nJybC2yQqbUAw9ClY
|
||||
# cat=eptheme/300/120; type=string; label=Google Maps Js API Url
|
||||
googleMapsJsApiUrl = https://maps.googleapis.com/maps/api/js?key=AIzaSyDDOforD1O_j4xXy2nJybC2yQqbUAw9ClY
|
||||
# cat=eptheme/300/120; type=string; label=Google Maps Js API Url
|
||||
googleMapsApiKey = AIzaSyDDOforD1O_j4xXy2nJybC2yQqbUAw9ClY
|
||||
# cat=eptheme/300/130; type=string; label=Canonical base URL/Domain
|
||||
canonicalBaseUrl = https://www.ep-reisen.de
|
||||
|
||||
# cat=eptheme.events/700/100; type=string; label=Event date day from
|
||||
eventDateDayFrom =
|
||||
# cat=eptheme.events/700/110; type=string; label=Event date day to
|
||||
eventDateDayTo =
|
||||
# cat=eptheme.events/700/120; type=string; label=Event date month
|
||||
eventDateMonth =
|
||||
|
||||
# cat=eptheme.events; type=string; label=Event herounit claim
|
||||
eventHeroClaim =
|
||||
# cat=eptheme.events; type=string; label=Event herounit description
|
||||
eventHeroDescription =
|
||||
# cat=eptheme.events; type=string; label=Event disturber headline
|
||||
eventDisturberHeadline = Absolut<br>Unschlagbarer<br>Preis
|
||||
# cat=eptheme.events; type=string; label=Event disturber list items
|
||||
eventDisturberListitems = 7 Übernachtungen in Top Apartments;6 Tage Skipass Val Thoerens;Ski & Boarderweek Event-Ticket
|
||||
# cat=eptheme.events; type=string; label=Event disturber button label
|
||||
eventDisturberButtonLabel = Jetzt ab 249€ buchen
|
||||
# cat=eptheme.events; type=string; label=Event disturber button link
|
||||
eventDisturberButtonLink =
|
||||
# cat=eptheme.events; type=boolean; label=Force Partner ID selection
|
||||
forcePartnerIdSelect =
|
||||
# cat=eptheme.events; type=string; label=Partner ID selection label
|
||||
partnerIdSelectLabel =
|
||||
}
|
||||
}
|
||||
|
||||
@import 'EXT:fluid_styled_content/Configuration/TypoScript/constants.typoscript'
|
||||
@import 'EXT:ep_products/Configuration/TypoScript/constants.typoscript'
|
||||
@import 'EXT:gridelements/Configuration/TypoScript/constants.typoscript'
|
||||
@import 'EXT:seo/Configuration/TypoScript/XmlSitemap/constants.typoscript'
|
||||
@import 'EXT:typo3_encore/Configuration/TypoScript/constants.typoscript'
|
||||
@import 'EXT:news/Configuration/TypoScript/constants.txt'
|
||||
@import 'EXT:bw_captcha/Configuration/TypoScript/constants.typoscript'
|
||||
@@ -0,0 +1,125 @@
|
||||
@import 'EXT:ep_theme/Configuration/TypoScript/Extensions/*'
|
||||
@import 'EXT:ep_theme/Configuration/TypoScript/Library/*'
|
||||
@import 'EXT:ep_theme/Configuration/TypoScript/ContentElements/*'
|
||||
|
||||
plugin.tx_eptheme {
|
||||
settings < lib.contentElement.settings
|
||||
settings {
|
||||
themekey = {$plugin.tx_eptheme.settings.themekey}
|
||||
footerNavPid = {$plugin.tx_eptheme.settings.footerNavPid}
|
||||
mainNavPid = {$plugin.tx_eptheme.settings.mainNavPid}
|
||||
mobileNavPid = {$plugin.tx_eptheme.settings.mobileNavPid}
|
||||
topNavPid = {$plugin.tx_eptheme.settings.topNavPid}
|
||||
legalNoticePageUid = {$plugin.tx_eptheme.settings.legalNoticePageUid}
|
||||
termsAndConditionsPageUid = {$plugin.tx_eptheme.settings.termsAndConditionsPageUid}
|
||||
dataProtectionPageUid = {$plugin.tx_eptheme.settings.dataProtectionPageUid}
|
||||
imageCreditsPageUid = {$plugin.tx_eptheme.settings.imageCreditsPageUid}
|
||||
cookiePolicyPageUid = {$plugin.tx_eptheme.settings.cookiePolicyPageUid}
|
||||
infoPageUid = {$plugin.tx_eptheme.settings.infoPageUid}
|
||||
groupsPageUid = {$plugin.tx_eptheme.settings.groupsPageUid}
|
||||
facebookUrl = {$plugin.tx_eptheme.settings.facebookUrl}
|
||||
youtubeUrl = {$plugin.tx_eptheme.settings.youtubeUrl}
|
||||
tiktokUrl = {$plugin.tx_eptheme.settings.tiktokUrl}
|
||||
instagramUrl = {$plugin.tx_eptheme.settings.instagramUrl}
|
||||
phoneNumber = {$plugin.tx_eptheme.settings.phoneNumber}
|
||||
whatsApp = {$plugin.tx_eptheme.settings.whatsApp}
|
||||
phoneNumberLink = {$plugin.tx_eptheme.settings.phoneNumberLink}
|
||||
whatsAppNumberLink = {$plugin.tx_eptheme.settings.whatsAppNumberLink}
|
||||
businessHoursDays = {$plugin.tx_eptheme.settings.businessHoursDays}
|
||||
businessHoursTime = {$plugin.tx_eptheme.settings.businessHoursTime}
|
||||
teaserTextMaxChars = {$plugin.tx_eptheme.settings.teaserTextMaxChars}
|
||||
faqPageUid = {$plugin.tx_eptheme.settings.faqPageUid}
|
||||
defaultHomeUid = {$plugin.tx_eptheme.settings.defaultHomeUid}
|
||||
mainSitePid = {$plugin.tx_eptheme.settings.mainSitePid}
|
||||
logoLink = {$plugin.tx_eptheme.settings.logoLink}
|
||||
defaultAjaxUid = {$plugin.tx_eptheme.settings.defaultAjaxUid}
|
||||
defaultContactFormPageUid = {$plugin.tx_eptheme.settings.defaultContactFormPageUid}
|
||||
defaultSearchPageUid = {$plugin.tx_epproducts.settings.defaultSearchPageUid}
|
||||
defaultDetailPageUid = {$plugin.tx_epproducts.settings.defaultDetailPageUid}
|
||||
coronaUpdatesPageUid = {$plugin.tx_eptheme.settings.coronaUpdatesPageUid}
|
||||
logoImage = {$plugin.tx_eptheme.settings.logoImage}
|
||||
forceActiveTopnavUid = {$plugin.tx_eptheme.settings.forceActiveTopnavUid}
|
||||
eventDateDayFrom = {$plugin.tx_eptheme.settings.eventDateDayFrom}
|
||||
eventDateDayTo = {$plugin.tx_eptheme.settings.eventDateDayTo}
|
||||
eventDateMonth = {$plugin.tx_eptheme.settings.eventDateMonth}
|
||||
eventHeroClaim = {$plugin.tx_eptheme.settings.eventHeroClaim}
|
||||
eventHeroDescription = {$plugin.tx_eptheme.settings.eventHeroDescription}
|
||||
eventDisturberHeadline = {$plugin.tx_eptheme.settings.eventDisturberHeadline}
|
||||
eventDisturberListitems = {$plugin.tx_eptheme.settings.eventDisturberListitems}
|
||||
eventDisturberButtonLabel = {$plugin.tx_eptheme.settings.eventDisturberButtonLabel}
|
||||
eventDisturberButtonLink = {$plugin.tx_eptheme.settings.eventDisturberButtonLink}
|
||||
cookieFirstScriptUrl = {$plugin.tx_eptheme.settings.cookieFirstScriptUrl}
|
||||
bpnBookingUrlTemplateCode = {$plugin.tx_eptheme.settings.bpnBookingUrlTemplateCode}
|
||||
groupsPricePopupPageUid = {$plugin.tx_eptheme.settings.groupsPricePopupPageUid}
|
||||
googleStaticMapsBaseUrl = {$plugin.tx_eptheme.settings.googleStaticMapsBaseUrl}
|
||||
googleMapsJsApiUrl = {$plugin.tx_eptheme.settings.googleMapsJsApiUrl}
|
||||
googleMapsApiKey = {$plugin.tx_eptheme.settings.googleMapsApiKey}
|
||||
datePickerPresets < plugin.tx_epproducts.settings.datePickerPresets
|
||||
searchPageHeaderImage = {$plugin.tx_eptheme.settings.searchPageHeaderImage}
|
||||
ratingWidgetLabel = {$plugin.tx_eptheme.settings.ratingWidgetLabel}
|
||||
hideAreaNavigation = {$plugin.tx_eptheme.settings.hideAreaNavigation}
|
||||
hideSearchbar = {$plugin.tx_eptheme.settings.hideSearchbar}
|
||||
showSkipassBadge = {$plugin.tx_eptheme.settings.showSkipassBadge}
|
||||
forcePartnerIdSelect = {$plugin.tx_eptheme.settings.forcePartnerIdSelect}
|
||||
contactFormToEmail = {$plugin.tx_eptheme.settings.contactFormToEmail}
|
||||
contactFormToName = {$plugin.tx_eptheme.settings.contactFormToName}
|
||||
enableContactFormAutoreply = {$plugin.tx_eptheme.settings.enableContactFormAutoreply}
|
||||
contactFormAutoreplySubject = {$plugin.tx_eptheme.settings.contactFormAutoreplySubject}
|
||||
groupsContactFormPageUid = {$plugin.tx_eptheme.settings.groupsContactFormPageUid}
|
||||
blogDetailPageUid = {$plugin.tx_eptheme.settings.blogDetailPageUid}
|
||||
ratingPageUid = {$plugin.tx_eptheme.settings.ratingPageUid}
|
||||
watchlistPageUid = {$plugin.tx_eptheme.settings.watchlistPageUid}
|
||||
skipassPageUid = {$plugin.tx_eptheme.settings.skipassPageUid}
|
||||
englishPageUid = {$plugin.tx_eptheme.settings.englishPageUid}
|
||||
germanPageUid = {$plugin.tx_eptheme.settings.germanPageUid}
|
||||
conceptsPageUid = {$plugin.tx_eptheme.settings.conceptsPageUid}
|
||||
globalConceptCode = {$plugin.tx_eptheme.settings.globalConceptCode}
|
||||
travelAlertPageUid = {$plugin.tx_eptheme.settings.travelAlertPageUid}
|
||||
myEpPageUid = {$plugin.tx_eptheme.settings.myEpPageUid}
|
||||
myEpApiEndpointUrl = {$plugin.tx_eptheme.settings.myEpApiEndpointUrl}
|
||||
myEpApiToken = {$plugin.tx_eptheme.settings.myEpApiToken}
|
||||
myEpApiTimeout = {$plugin.tx_eptheme.settings.myEpApiTimeout}
|
||||
facebookViewContentValues {
|
||||
productUid = {$plugin.tx_eptheme.settings.facebookViewContentProductUid}
|
||||
nameInternal = {$plugin.tx_eptheme.settings.facebookViewContentNameInternal}
|
||||
}
|
||||
domainsToTrack = bpn.ep-reisen.de,www.ski-boarderweek.de,www.ski-wochenenden.de,www.snowzone.net,www.unichamp.de
|
||||
}
|
||||
view {
|
||||
templateRootPaths.0 = EXT:ep_theme/Resources/Private/Templates
|
||||
partialRootPaths.0 = EXT:ep_theme/Resources/Private/Partials
|
||||
layoutRootPaths.0 = EXT:ep_theme/Resources/Private/Layouts
|
||||
}
|
||||
}
|
||||
|
||||
# Enable section index menus on invisible pages
|
||||
tt_content.menu_section.dataProcessing.10.includeNotInMenu = 1
|
||||
|
||||
@import 'EXT:ep_theme/Configuration/TypoScript/Page/*'
|
||||
|
||||
config {
|
||||
compressJs = 1
|
||||
compressCss = 1
|
||||
typolinkCheckRootline = 1
|
||||
typolinkEnableLinksAcrossDomains = 1
|
||||
sendCacheHeaders = 1
|
||||
content_from_pid_allowOutsideDomain = 1
|
||||
inlineStyle2TempFile = 0
|
||||
additionalHeaders {
|
||||
# 10 {
|
||||
# header = Content-Security-Policy: default-src 'self' 'unsafe-inline'; connect-src 'self' https://my.ep-reisen.de/;
|
||||
# }
|
||||
20 {
|
||||
header = Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
|
||||
}
|
||||
30 {
|
||||
header = X-Frame-Options: sameorigin
|
||||
}
|
||||
40 {
|
||||
header = Referrer-Policy: same-origin
|
||||
}
|
||||
50 {
|
||||
header = Permissions-Policy: microphone=(), camera=()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
TYPO3:
|
||||
CMS:
|
||||
Form:
|
||||
persistenceManager:
|
||||
allowedExtensionPaths:
|
||||
10: EXT:ep_theme/Resources/Private/Forms/
|
||||
|
||||
prototypes:
|
||||
standard:
|
||||
|
||||
formElementsDefinition:
|
||||
Form:
|
||||
renderingOptions:
|
||||
templateRootPaths:
|
||||
1505042810: 'EXT:ep_theme/Resources/Private/Templates/Form/'
|
||||
partialRootPaths:
|
||||
1623227657: 'EXT:ep_theme/Resources/Private/Partials/Form/'
|
||||
layoutRootPaths:
|
||||
1505042810: 'EXT:ep_theme/Resources/Private/Layouts/Form/'
|
||||
honeypot:
|
||||
enable: false
|
||||
|
||||
finishersDefinition:
|
||||
BpnApiFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\BpnApiFinisher'
|
||||
ApplicationApiFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\ApplicationApiFinisher'
|
||||
WebhookFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\WebhookFinisher'
|
||||
AddReferrerFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\AddReferrerFinisher'
|
||||
|
||||
contactform:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.prototypes.standard'
|
||||
|
||||
applicationform:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.prototypes.standard'
|
||||
Whitespace-only changes.
Whitespace-only changes.
@@ -0,0 +1,111 @@
|
||||
TYPO3:
|
||||
CMS:
|
||||
Form:
|
||||
prototypes:
|
||||
standard:
|
||||
formElementsDefinition:
|
||||
Form:
|
||||
formEditor:
|
||||
editors:
|
||||
900:
|
||||
selectOptions:
|
||||
1000:
|
||||
value: 'BpnApiFinisher'
|
||||
label: 'BusPro Finisher'
|
||||
1010:
|
||||
value: 'ApplicationApiFinisher'
|
||||
label: 'Application Finisher'
|
||||
1050:
|
||||
value: 'WebhookFinisher'
|
||||
label: 'Webhook Finisher'
|
||||
1100:
|
||||
value: 'AddReferrerFinisher'
|
||||
label: 'Referrer Finisher'
|
||||
propertyCollections:
|
||||
finishers:
|
||||
1000:
|
||||
identifier: 'BpnApiFinisher'
|
||||
editors:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.mixins.formElementMixins.BaseCollectionEditorsMixin'
|
||||
100:
|
||||
label: 'BusPro Finisher'
|
||||
110:
|
||||
identifier: 'mapping'
|
||||
templateName: 'Inspector-TextEditor'
|
||||
label: 'Mapping'
|
||||
propertyPath: 'options.mapping'
|
||||
propertyValidators:
|
||||
10: 'NotEmpty'
|
||||
1010:
|
||||
identifier: 'ApplicationApiFinisher'
|
||||
editors:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.mixins.formElementMixins.BaseCollectionEditorsMixin'
|
||||
100:
|
||||
label: 'Application Finisher'
|
||||
110:
|
||||
identifier: 'mapping'
|
||||
templateName: 'Inspector-TextEditor'
|
||||
label: 'Mapping'
|
||||
propertyPath: 'options.mapping'
|
||||
propertyValidators:
|
||||
10: 'NotEmpty'
|
||||
120:
|
||||
identifier: 'exclude'
|
||||
templateName: 'Inspector-TextEditor'
|
||||
label: 'Exclude'
|
||||
propertyPath: 'options.exclude'
|
||||
1050:
|
||||
identifier: 'WebhookFinisher'
|
||||
editors:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.mixins.formElementMixins.BaseCollectionEditorsMixin'
|
||||
100:
|
||||
label: 'Webhook Finisher'
|
||||
110:
|
||||
identifier: 'mapping'
|
||||
templateName: 'Inspector-TextEditor'
|
||||
label: 'Mapping'
|
||||
propertyPath: 'options.mapping'
|
||||
propertyValidators:
|
||||
10: 'NotEmpty'
|
||||
120:
|
||||
identifier: 'url'
|
||||
templateName: 'Inspector-TextEditor'
|
||||
label: 'URL'
|
||||
propertyPath: 'options.url'
|
||||
propertyValidators:
|
||||
10: 'NotEmpty'
|
||||
1100:
|
||||
identifier: 'AddReferrerFinisher'
|
||||
editors:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.mixins.formElementMixins.BaseCollectionEditorsMixin'
|
||||
100:
|
||||
label: 'Referrer Finisher'
|
||||
|
||||
finishersDefinition:
|
||||
BpnApiFinisher:
|
||||
formEditor:
|
||||
iconIdentifier: 'form-finisher'
|
||||
predefinedDefaults:
|
||||
options:
|
||||
mapping: 'lastName:text-1,firstName:text-2,gender:singleselect-1,email:email-1,phone:telephone-1'
|
||||
ApplicationApiFinisher:
|
||||
formEditor:
|
||||
iconIdentifier: 'form-finisher'
|
||||
predefinedDefaults:
|
||||
options:
|
||||
mapping: 'firstName:text-1,lastName:text-2,email:email-1,phone:telephone-1'
|
||||
exclude: 'captcha,privacypolicyaccepted'
|
||||
WebhookFinisher:
|
||||
formEditor:
|
||||
iconIdentifier: 'form-finisher'
|
||||
predefinedDefaults:
|
||||
options:
|
||||
mapping: 'lastName:text-1,firstName:text-2,gender:singleselect-1,email:email-1,phone:telephone-1'
|
||||
url: ''
|
||||
AddReferrerFinisher:
|
||||
formEditor:
|
||||
iconIdentifier: 'form-finisher'
|
||||
@@ -0,0 +1,35 @@
|
||||
TYPO3:
|
||||
CMS:
|
||||
Form:
|
||||
prototypes:
|
||||
standard:
|
||||
finishersDefinition:
|
||||
BpnApiFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\BpnApiFinisher'
|
||||
formEditor:
|
||||
label: 'BusPro Finisher'
|
||||
options:
|
||||
identifier: 'BpnApiFinisher'
|
||||
mapping: 'lastName:text-1,firstName:text-2,gender:singleselect-1,email:email-1,phone:telephone-1'
|
||||
ApplicationApiFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\ApplicationApiFinisher'
|
||||
formEditor:
|
||||
label: 'Application Finisher'
|
||||
options:
|
||||
identifier: 'ApplicationApiFinisher'
|
||||
mapping: 'firstName:text-1,lastName:text-2,email:email-1,phone:telephone-1'
|
||||
exclude: 'captcha,privacypolicyaccepted'
|
||||
WebhookFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\WebhookFinisher'
|
||||
formEditor:
|
||||
label: 'Webhook Finisher'
|
||||
options:
|
||||
identifier: 'WebhookFinisher'
|
||||
mapping: 'lastName:text-1,firstName:text-2,gender:singleselect-1,email:email-1,phone:telephone-1'
|
||||
url: ''
|
||||
AddReferrerFinisher:
|
||||
implementationClassName: 'EP\EpTheme\Form\AddReferrerFinisher'
|
||||
formEditor:
|
||||
label: 'Referrer Finisher'
|
||||
options:
|
||||
identifier: 'AddReferrerFinisher'
|
||||
@@ -0,0 +1,42 @@
|
||||
TYPO3:
|
||||
CMS:
|
||||
Form:
|
||||
persistenceManager:
|
||||
allowedExtensionPaths:
|
||||
10: EXT:ep_theme/Resources/Private/Forms/
|
||||
prototypes:
|
||||
standard:
|
||||
formEditor:
|
||||
formElementGroups:
|
||||
input:
|
||||
label: Basiselemente
|
||||
html5:
|
||||
label: HTML5-Elemente
|
||||
select:
|
||||
label: Auswahlelemente
|
||||
custom:
|
||||
label: Sonstiges
|
||||
formElementsDefinition:
|
||||
AdvancedPassword: null
|
||||
DatePicker: null
|
||||
Fieldset: null
|
||||
GridRow: null
|
||||
Hidden: null
|
||||
ImageUpload: null
|
||||
Password: null
|
||||
Form:
|
||||
renderingOptions:
|
||||
templateRootPaths:
|
||||
1505042810: 'EXT:ep_theme/Resources/Private/Templates/Form/'
|
||||
partialRootPaths:
|
||||
1623227657: 'EXT:ep_theme/Resources/Private/Partials/Form/'
|
||||
layoutRootPaths:
|
||||
1505042810: 'EXT:ep_theme/Resources/Private/Layouts/Form/'
|
||||
honeypot:
|
||||
enable: false
|
||||
contactform:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.prototypes.standard'
|
||||
applicationform:
|
||||
__inheritances:
|
||||
10: 'TYPO3.CMS.Form.prototypes.standard'
|
||||
Reference in new issue
Block a user