diff --git a/composer.json b/composer.json index 9473cdd9..19306da9 100644 --- a/composer.json +++ b/composer.json @@ -13,6 +13,7 @@ "ext-libxml": "*", "ext-pdo": "*", "ext-simplexml": "*", + "b13/container": "^1.3", "christophlehmann/imageoptimizer": "^2.0", "fluidtypo3/vhs": "^5.2", "georgringer/news": "^7.2", diff --git a/composer.lock b/composer.lock index 520ca868..de8853f9 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,71 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "bdb0e8fc25a5e98d75bea5bce07ec0bd", + "content-hash": "ea05a1b18e4476ff6c1421964d42a67b", "packages": [ + { + "name": "b13/container", + "version": "1.3.1", + "source": { + "type": "git", + "url": "https://github.com/b13/container.git", + "reference": "757ac6344789c7f70fc3335b928a0e84139145a0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/b13/container/zipball/757ac6344789c7f70fc3335b928a0e84139145a0", + "reference": "757ac6344789c7f70fc3335b928a0e84139145a0", + "shasum": "" + }, + "require": { + "typo3/cms-backend": "^9.5 || ^10.4 || ^11.0", + "typo3/cms-fluid-styled-content": "^9.5 || ^10.4 || ^11.0" + }, + "replace": { + "typo3-ter/container": "self.version" + }, + "require-dev": { + "b13/container-example": "dev-master", + "codeception/codeception": "^4.1", + "codeception/module-asserts": "^1.0", + "codeception/module-db": "^1.0", + "codeception/module-webdriver": "^1.0", + "helhum/dotenv-connector": "^2.3", + "helhum/typo3-console": "^6.3", + "ichhabrecht/content-defender": "dev-master", + "phpstan/phpstan": "^0.12.11", + "phpunit/phpunit": "^8.4", + "typo3/cms-about": "^10.4", + "typo3/cms-install": "^10.4", + "typo3/cms-workspaces": "^10.4", + "typo3/coding-standards": "^0.2.0", + "typo3/testing-framework": "^6" + }, + "type": "typo3-cms-extension", + "extra": { + "typo3/cms": { + "cms-package-dir": "{$vendor-dir}/typo3/cms", + "web-dir": ".Build/Web", + "extension-key": "container" + } + }, + "autoload": { + "psr-4": { + "B13\\Container\\": "Classes/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0-or-later" + ], + "description": "Create Custom Container Content Elements for TYPO3", + "homepage": "https://b13.com", + "support": { + "issues": "https://github.com/b13/container/issues", + "source": "https://github.com/b13/container/tree/1.3.1" + }, + "time": "2021-07-21T10:12:58+00:00" + }, { "name": "christophlehmann/imageoptimizer", "version": "2.1.0", @@ -677,68 +740,6 @@ }, "time": "2021-08-09T23:46:54+00:00" }, - { - "name": "facebook/graph-sdk", - "version": "5.7.0", - "source": { - "type": "git", - "url": "https://github.com/facebook/php-graph-sdk.git", - "reference": "2d8250638b33d73e7a87add65f47fabf91f8ad9b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/facebook/php-graph-sdk/zipball/2d8250638b33d73e7a87add65f47fabf91f8ad9b", - "reference": "2d8250638b33d73e7a87add65f47fabf91f8ad9b", - "shasum": "" - }, - "require": { - "php": "^5.4|^7.0" - }, - "require-dev": { - "guzzlehttp/guzzle": "~5.0", - "mockery/mockery": "~0.8", - "phpunit/phpunit": "~4.0" - }, - "suggest": { - "guzzlehttp/guzzle": "Allows for implementation of the Guzzle HTTP client", - "paragonie/random_compat": "Provides a better CSPRNG option in PHP 5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.x-dev" - } - }, - "autoload": { - "psr-4": { - "Facebook\\": "src/Facebook/" - }, - "files": [ - "src/Facebook/polyfills.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Facebook Platform" - ], - "authors": [ - { - "name": "Facebook", - "homepage": "https://github.com/facebook/php-graph-sdk/contributors" - } - ], - "description": "Facebook SDK for PHP", - "homepage": "https://github.com/facebook/php-graph-sdk", - "keywords": [ - "facebook", - "sdk" - ], - "support": { - "issues": "https://github.com/facebook/php-graph-sdk/issues", - "source": "https://github.com/facebook/php-graph-sdk/tree/5.7.0" - }, - "time": "2018-12-11T22:56:31+00:00" - }, { "name": "fluidtypo3/vhs", "version": "5.2.0", @@ -1808,64 +1809,6 @@ }, "time": "2021-07-21T10:44:31+00:00" }, - { - "name": "pixelant/pxa-social-feed", - "version": "v2.3.1", - "source": { - "type": "git", - "url": "https://github.com/pixelant/pxa_social_feed.git", - "reference": "dfabd173eee203b575f28aab98181be3556e05b0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/pixelant/pxa_social_feed/zipball/dfabd173eee203b575f28aab98181be3556e05b0", - "reference": "dfabd173eee203b575f28aab98181be3556e05b0", - "shasum": "" - }, - "require": { - "facebook/graph-sdk": "~5.7.0", - "php": ">=7.1", - "typo3/cms-core": "^8.7 || ^9.5" - }, - "require-dev": { - "nimut/testing-framework": "^4.1", - "squizlabs/php_codesniffer": "^3.4" - }, - "type": "typo3-cms-extension", - "extra": { - "branch-alias": { - "dev-master": "0.0.x-dev" - }, - "typo3/cms": { - "extension-key": "pxa_social_feed", - "cms-package-dir": "{$vendor-dir}/typo3/cms", - "web-dir": ".Build/Web" - } - }, - "autoload": { - "psr-4": { - "Pixelant\\PxaSocialFeed\\": "Classes/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Pixelant", - "email": "info@pixelant.net", - "homepage": "https://www.pixelant.net", - "role": "Developer" - } - ], - "description": "Add Facebook, Instagram, and Twitter feeds to your site.", - "support": { - "issues": "https://github.com/pixelant/pxa_social_feed/issues", - "source": "https://github.com/pixelant/pxa_social_feed/tree/v2.3.1" - }, - "time": "2020-04-06T06:54:44+00:00" - }, { "name": "psr/cache", "version": "1.0.1", @@ -4764,6 +4707,51 @@ ], "time": "2021-07-27T16:19:30+00:00" }, + { + "name": "tritum/form-element-linked-checkbox", + "version": "2.1.2", + "source": { + "type": "git", + "url": "https://github.com/tritum/form_element_linked_checkbox.git", + "reference": "acf3a430b37c6329833af305c011163ece04b45d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tritum/form_element_linked_checkbox/zipball/acf3a430b37c6329833af305c011163ece04b45d", + "reference": "acf3a430b37c6329833af305c011163ece04b45d", + "shasum": "" + }, + "require": { + "typo3/cms-core": "^9.5.25 || ^10.4.14", + "typo3/cms-form": "^9.5.25 || ^10.4.14" + }, + "type": "typo3-cms-extension", + "extra": { + "typo3/cms": { + "extension-key": "form_element_linked_checkbox" + } + }, + "autoload": { + "psr-4": { + "TRITUM\\FormElementLinkedCheckbox\\": "Classes/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Björn Jacob TRITUM GmbH", + "email": "bjoern.jacob@tritum.de" + } + ], + "support": { + "issues": "https://github.com/tritum/form_element_linked_checkbox/issues", + "source": "https://github.com/tritum/form_element_linked_checkbox/tree/2.1.2" + }, + "time": "2021-06-01T08:59:34+00:00" + }, { "name": "typo3/class-alias-loader", "version": "v1.1.3", @@ -7266,7 +7254,7 @@ }, "platform-dev": [], "platform-overrides": { - "php": "7.3.10" + "php": "7.4.13" }, "plugin-api-version": "2.1.0" } diff --git a/public/typo3conf/ext/ep_theme/Configuration/TCA/Overrides/tt_content_element_container.php b/public/typo3conf/ext/ep_theme/Configuration/TCA/Overrides/tt_content_element_container.php new file mode 100644 index 00000000..25979a58 --- /dev/null +++ b/public/typo3conf/ext/ep_theme/Configuration/TCA/Overrides/tt_content_element_container.php @@ -0,0 +1,39 @@ +configureContainer( + new \B13\Container\Tca\ContainerConfiguration( + 'ep_container_thirds', + 'Dreispalter', + '33/33/33 Aufteilung', + [ + [ + ['name' => 'Elemente', 'colPos' => 300, 'colspan' => 3], + ] + ] + ) + ); + + $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_thirds'] as $field) { + $GLOBALS['TCA']['tt_content']['types'][$field] = array_replace_recursive( + $GLOBALS['TCA']['tt_content']['types'][$field], + $headerConfig + ); + } +}); diff --git a/public/typo3conf/ext/ep_theme/Configuration/TypoScript/ContentElements/container.typoscript b/public/typo3conf/ext/ep_theme/Configuration/TypoScript/ContentElements/container.typoscript new file mode 100644 index 00000000..0d626c6e --- /dev/null +++ b/public/typo3conf/ext/ep_theme/Configuration/TypoScript/ContentElements/container.typoscript @@ -0,0 +1,10 @@ +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 + } +} diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Templates/Container/Thirds.html b/public/typo3conf/ext/ep_theme/Resources/Private/Templates/Container/Thirds.html new file mode 100644 index 00000000..b8b67019 --- /dev/null +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Templates/Container/Thirds.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + {record.renderedContent -> f:format.raw()} + + + + + +