Skip to content

inconsistent tx_container_parent referencing #699

@PBahner

Description

@PBahner

Expected behaviour

Child elements of containers use the tx_container_parent column to reference their parent container.
From what I understand, in connected mode it is expected that tx_container_parent always points to the default-language container, and not to the translated container - even for translated child elements.

I would like to confirm whether this is indeed the intended behaviour.
If so, what is the benefit of this design? Since the translated container already has an l18n_parent pointing back to the default-language container, it is not immediately clear why tx_container_parent must always reference the default language record as well.

Steps to reproduce / scenarios

In connected mode, I observe different outcomes depending on how the translated element is created. This difference in behaviour based on the creation steps should not exist in my opinion.

Case 1: tx_container_parent points to the translated container

This happens when the translated container does not yet exist.
Steps:

  • Open the default-language container and choose “English [new]” from the language selector, or
  • Translate the entire container using the “Translate” button on the page

Case 2: tx_container_parent points to the original language container

This happens when a translated version of the container already exists, and a new child element is created and translated afterwards.
Steps:

  • Open the newly created child element in the default language and choose “English [new]” from the language selector, or
  • Translate only that single child element using the “Translate” button on the page

Context

  • I am using the t23_inline_container extension, which creates inline relations based on the tx_parent_container field.
  • With this extension enabled, dbdoctor reports the relations from Case 2 as incorrect - even though they appear to be created intentionally by the container extension.
  • This led me to discover the inconsistency described above.
  • More generally, storing the default-language container ID in tx_container_parent for translated child elements feels like a problematic design decision, and I would like to better understand its purpose or implications.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions