IchHabRecht / multicolumn

The Multicolumn extension expands TYPO3 with a new content element called Multicolumn. With the Multicolumn content element it has never been easier to do multicolumn layouts with TYPO3
GNU General Public License v2.0
3 stars 10 forks source link

Problem with EXT:compatibility6 #27

Closed froemken closed 7 years ago

froemken commented 7 years ago

Hello Nicole,

after installing EXT:compatibility6 in TYPO3 7.6 it is not possible to configure the layoutPresets with pageTSconfig anymore. F.e. I can't remove the option effectBox from preset selectbox.

It seems that compatibility6 changes the ordering or replaces some classes of the dataProcessors. These changes results in an empty $result['flexParentDatabaseRow']['pid'] in TcaFlexEffectivePid.

Stefan

IchHabRecht commented 7 years ago

Hi Stefan,

Can you provide the pageTS that you use to remove the effectBox from the selectbox.

sypets commented 7 years ago

Hi Nicole and Stefan,

this might be the same problem as described in a "news issue": https://github.com/georgringer/news/commit/4a1defb3bb2364e7cc612ed21c36e4b0cd86082e

"News" uses an extra check for "compatibility6" to retrieve the pid: https://github.com/georgringer/news/blob/9d88629f76087a687e54d76c2a8628a084c74349/Classes/Hooks/ItemsProcFunc.php#L39

I don't know if it is the recommended way to do it, but it should work.

Hope this helps.

IchHabRecht commented 7 years ago

Hi Sybille,

As far as I understand Stefans issue, the problem is not related to multicolumn code in the first place. He describes, that dataProcessing is changed by compatibility6 and therefore some other result is generated. I still need some pageTS to test and verify the issue.

sypets commented 7 years ago

I did not want to highjack this thread, but here is TSconfig which can reproduce the different behaviour with / without compatibility6. I hope this is what Stefan meant.

tx_multicolumn.layoutPreset.99 < tx_multicolumn.layoutPreset.1
tx_multicolumn.layoutPreset.99.label = TEST

The correct behaviour would be to display the new layout "TEST" in the dropdown list in the flexform "Configuration" : "Preset Layouts". This works without compatibility6, but not with compatibility6.

sypets commented 7 years ago

This is the affected source-code: https://github.com/IchHabRecht/multicolumn/blob/7535b690f39195820a23a1acd9ec441fc3271577/lib/class.tx_multicolumn_flexform.php#L89

In the case of with compatibility6, pid will be empty.

sypets commented 7 years ago

I created an issue for compatibility6: https://github.com/FriendsOfTYPO3/compatibility6/issues/15

The problem also affects other extensions:

IchHabRecht commented 7 years ago

Thank you Sybille. I will investigate and see if I can submit a patch to compatibility6 as well.

sypets commented 7 years ago

Great!