Skip to content

Check for unallowed content elements considers only CType when inserting an element into a container #98

@hannesbochmann

Description

@hannesbochmann

The insertion of unallowed content elements in gridelement containers is only rejected if the CType is not suitable (TYPO3 standard elements, news plugins and a few more). If the list_type (ttaddress plugin etc.) or tx_gridelements_backend_layout is not suitable, it does not matter. It also does not matter whether the insertion/pasting is done via drag & drop or normally. The root cause seems to be GridElementsTeam\Gridelements\Hooks\DataHandler::processCmdmap_beforeStart() which only checks for CType.

Here is an example for a gridelement configuration where the allowed part is only working for the CType and not for the tx_gridelements_backend_layout or the list_type.

tx_gridelements.setup {
    1 {
        title = Some container
        config {
            colCount = 1
            rowCount = 1
            rows {
                1 {
                    columns {
                        1 {
                            name = Elements
                            colPos = 0
                            minitems = 2
                            allowed {
                                CType = gridelements_pi1,text,list
                                tx_gridelements_backend_layout = my_custom_layout
                                list_type = ttaddress_listview
                            }
                        }
                    }
                }
            }
        }
    }
}

So every list content element can be inserted on not only a tt_address plugin.

All those checks work if you create new elements but not when pasting existing one.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions