diff --git a/Resources/Private/Partials/PageLayout/Grid/Column.html b/Resources/Private/Partials/PageLayout/Grid/Column.html index 569479c..8ecd10a 100644 --- a/Resources/Private/Partials/PageLayout/Grid/Column.html +++ b/Resources/Private/Partials/PageLayout/Grid/Column.html @@ -1,21 +1,16 @@ - - Styling requires the colpos to be set to the string 'unused'. To preserve type safety in the - controller, the string is only used in the template by setting the below "colpos" variable. - - - + + t3-gridCell-height{column.rowSpan}" role="group" aria-labelledby="{columnIdentifier}"> -
@@ -25,3 +20,4 @@ {column.afterSectionMarkup} + diff --git a/Resources/Private/Partials/PageLayout/Grid/ColumnHeader.html b/Resources/Private/Partials/PageLayout/Grid/ColumnHeader.html index 42be48c..59f7160 100644 --- a/Resources/Private/Partials/PageLayout/Grid/ColumnHeader.html +++ b/Resources/Private/Partials/PageLayout/Grid/ColumnHeader.html @@ -1,7 +1,11 @@ + +
-
+
- - + + + +
- {column.title} + {column.title} - - - - - - - - + + + + + + + + - + - {column.titleUnassigned} + {column.titleUnassigned} - {column.titleInaccessible} + {column.titleInaccessible}
{column.beforeSectionMarkup} -
-
+
+
- {newContentTitleShort} + @@ -77,3 +83,4 @@ {f:translate(key: 'LLL:EXT:ew_collapsible_container/Resources/Private/Language/locallang.xlf:contentcollapsed')}
+ diff --git a/Resources/Private/Partials/PageLayout/Record.html b/Resources/Private/Partials/PageLayout/Record.html index f7dc354..1914081 100644 --- a/Resources/Private/Partials/PageLayout/Record.html +++ b/Resources/Private/Partials/PageLayout/Record.html @@ -1,14 +1,15 @@ -{f:if(condition: '{item.disabled} && {item.context.drawingConfiguration.showHidden} == 0', then: 'height: 0; position: absolute;') -> f:variable(name: 'style')} + +{f:if(condition: '{item.disabled} && {item.context.drawingConfiguration.showHidden} == 0', then: 'display: none;') -> f:variable(name: 'style')}
-
+
-
- -
+
@@ -26,13 +27,13 @@ - + - + @@ -40,3 +41,4 @@
+ diff --git a/Resources/Private/Templates/Container/Grid.html b/Resources/Private/Templates/Container/Grid.html index f28b344..89ae4e3 100644 --- a/Resources/Private/Templates/Container/Grid.html +++ b/Resources/Private/Templates/Container/Grid.html @@ -1,31 +1,11 @@ - - - - View\ContainerLayoutView - - - - - - - - -
- -
-
- - Backend\Preview\ContainerLayoutView (Fluid based page module) - diff --git a/Resources/Public/JavaScript/ContainerPre12.js b/Resources/Public/JavaScript/ContainerPre12.js deleted file mode 100644 index 5b41aa6..0000000 --- a/Resources/Public/JavaScript/ContainerPre12.js +++ /dev/null @@ -1,125 +0,0 @@ -/* - * This file is part of the TYPO3 CMS project. - * - * It is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License, either version 2 - * of the License, or any later version. - * - * For the full copyright and license information, please read the - * LICENSE.txt file that was distributed with this source code. - * - * The TYPO3 project - inspiring people to share! - */ -class ContainerToggle { - containerColumnToggle = '.t3js-toggle-container-column'; - - columnExpand = '.t3js-expand-column'; - - persistentStorage = null; - - storageKey = 'moduleData.list.containerExpanded'; - - constructor(PersistentStorage) { - this.persistentStorage = PersistentStorage; - if (document.readyState === 'loading') { - document.addEventListener('DOMContentLoaded', () => { - this.initialized(); - }); - } else { - this.initialized(); - } - } - - initialized() { - this.initializeContainerToggle(); - this.initializeExpandColumn(); - } - - /** - * initialize the toggle icons to open listings of nested grid container structure in the list module - */ - initializeContainerToggle() { - const containers = Array.from(document.querySelectorAll(this.containerColumnToggle)); - containers.forEach(container=> { - container.addEventListener('click', event => this.toggleClicked(event)); - }); - } - - initializeExpandColumn() { - const columnExpanders = Array.from(document.querySelectorAll(this.columnExpand)); - columnExpanders.forEach(columnExpander=> { - columnExpander.addEventListener('click', event => this.expandClicked(event)); - }); - } - - toggleClicked(event) { - event.preventDefault(); - - let column = event.currentTarget, - containerCell = column.closest('td'), - colPos = parseInt(containerCell.dataset['colpos']), - isExpanded = column.dataset['collapseState'] === 'expanded', - storedModuleDataList = this.getCurrentModuleDataList(colPos, isExpanded); - - // Store collapse state in UC - this.setStoredModuleDataList(storedModuleDataList).then(() => { - if (isExpanded) { - containerCell.classList.add('collapsed'); - } else { - containerCell.classList.remove('collapsed'); - } - }); - } - - expandClicked(event) { - event.preventDefault(); - - let expander = event.currentTarget, - containerCell = expander.closest('td'), - colPos = parseInt(containerCell.dataset['colpos']), - isExpanded = false, - storedModuleDataList = this.getCurrentModuleDataList(colPos, isExpanded); - - // Store collapse state in UC - this.setStoredModuleDataList(storedModuleDataList).then(() => { - containerCell.classList.remove('collapsed'); - }); - } - - /** - * @param {number} colPos - * @param {boolean} isExpanded - * - * @returns {object} - */ - getCurrentModuleDataList(colPos, isExpanded) { - let storedModuleDataList = {}; - - if (this.persistentStorage.isset(this.storageKey)) { - storedModuleDataList = this.persistentStorage.get(this.storageKey); - } - - let collapseConfig = {}; - collapseConfig[colPos] = isExpanded ? '1' : '0'; - - return Object.assign(storedModuleDataList, collapseConfig); - } - - /** - * @param {object} moduleData - * - * @returns {Promise} - */ - setStoredModuleDataList(moduleData) { - return this.persistentStorage.set(this.storageKey, moduleData); - } -} - -define( - [ - 'TYPO3/CMS/Backend/Storage/Persistent' - ], - function(PersistentStorage) { - return new ContainerToggle(PersistentStorage); - } -);