Add ext:container to replace gridelements in the long run

This commit is contained in:
Björn Fromme
2021-08-24 17:51:13 +02:00
parent 75e34f5d85
commit 2cb828e7e1
5 changed files with 182 additions and 122 deletions
+1
View File
@@ -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",
Generated
+110 -122
View File
@@ -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": "[email protected]",
"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": "[email protected]"
}
],
"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"
}
@@ -0,0 +1,39 @@
<?php
call_user_func(function () {
\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\B13\Container\Tca\Registry::class)->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
);
}
});
@@ -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
}
}
@@ -0,0 +1,22 @@
<html data-namespace-typo3-fluid="true" lang="en"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
<f:layout name="Default"/>
<f:section name="Main">
<ep:container data="{data}" cssClasses="py-8">
<f:if condition="{data.header_layout} != 100">
<f:if condition="{data.header}">
<f:render partial="Header/Header" arguments="{header: data.header, subheader: data.subheader, layout: data.header_layout, link: data.header_link}" />
</f:if>
</f:if>
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
<f:for each="{children_300}" as="record">
{record.renderedContent -> f:format.raw()}
</f:for>
</div>
</ep:container>
</f:section>
</html>