Gernott / mask

TYPO3 Extension Mask
https://www.facebook.com/typo3mask
GNU General Public License v2.0
130 stars 86 forks source link

[BUGFIX] Use TCA API to save and match type Content fields #547

Closed nhovratov closed 1 year ago

nhovratov commented 1 year ago

Mask used to create a new db column for every type Content field. This field was used as "foreign_field", which holds the parent uid. The name of the column was used to backtrack the original parent. This worked as long as the Content field has a globally unique name.

Now, because of a missing validation, it was possible to create two Content fields with the same name. This led to same child items appearing in both fields.

Analogous to the sys_file_reference table, the nested tt_content field now saves the parent uid (foreign_field), role (foreign_match_fields) and the table name (foreign_table_field) in three separate db columns.

Using the standard TCA way, the door for shared type Content fields opened as well.

@todo Migration Wizard @todo Recursive resolving

Fixes: #542