public static function buildDataDefinition(BuildDataDefinitionEvent $event)
    {
        $container = $event->getContainer();
        if (!$container->hasDefinition('metamodels.translatedfile-attributes')) {
            return;
        }
        // All properties...
        foreach ($container->getDefinition('metamodels.translatedfile-attributes')->get() as $propertyName) {
            // ... in all palettes ...
            foreach ($container->getPalettesDefinition()->getPalettes() as $palette) {
                // ... in any legend ...
                foreach ($palette->getLegends() as $legend) {
                    // ... of the searched name ...
                    if (($legend->hasProperty($propertyName))
                        && ($container->getPropertiesDefinition()->hasProperty($propertyName . '__sort'))
                    ) {
                        // ... must have the order field as companion, visible only when the real property is.
                        $file = $legend->getProperty($propertyName);

                        $legend->addProperty($order = new Property($propertyName . '__sort'), $file);

                        $order->setEditableCondition($file->getEditableCondition());
                        $order->setVisibleCondition($file->getVisibleCondition());
                    }
                }
            }
        }
    }
public static function buildDataDefinition(BuildDataDefinitionEvent $event)
    {
        $container = $event->getContainer();
        if (!$container->hasDefinition('metamodels.translatedfile-attributes')) {
            return;
        }
        // All properties...
        foreach ($container->getDefinition('metamodels.translatedfile-attributes')->get() as $propertyName) {
            // ... in all palettes ...
            foreach ($container->getPalettesDefinition()->getPalettes() as $palette) {
                // ... in any legend ...
                foreach ($palette->getLegends() as $legend) {
                    // ... of the searched name ...
                    if (($legend->hasProperty($propertyName))
                        && ($container->getPropertiesDefinition()->hasProperty($propertyName . '__sort'))
                    ) {
                        // ... must have the order field as companion, visible only when the real property is.
                        $file = $legend->getProperty($propertyName);

                        $legend->addProperty($order = new Property($propertyName . '__sort'), $file);

                        $order->setEditableCondition($file->getEditableCondition());
                        $order->setVisibleCondition($file->getVisibleCondition());
                    }
                }
            }
        }
    }
public static function buildDataDefinition ( BuildDataDefinitionEvent $ event ) { $ container = $ event -> getContainer ( ) ; if ( ! $ container -> hasDefinition ( 'metamodels.translatedfile-attributes' ) ) { return ; } // All properties... foreach ( $ container -> getDefinition ( 'metamodels.translatedfile-attributes' ) -> get ( ) as $ propertyName ) { // ... in all palettes ... foreach ( $ container -> getPalettesDefinition ( ) -> getPalettes ( ) as $ palette ) { // ... in any legend ... foreach ( $ palette -> getLegends ( ) as $ legend ) { // ... of the searched name ... if ( ( $ legend -> hasProperty ( $ propertyName ) ) && ( $ container -> getPropertiesDefinition ( ) -> hasProperty ( $ propertyName . '__sort' ) ) ) { // ... must have the order field as companion, visible only when the real property is. $ file = $ legend -> getProperty ( $ propertyName ) ; $ legend -> addProperty ( $ order = new Property ( $ propertyName . '__sort' ) , $ file ) ; $ order -> setEditableCondition ( $ file -> getEditableCondition ( ) ) ; $ order -> setVisibleCondition ( $ file -> getVisibleCondition ( ) ) ; } } } } }
This handles all translated file attributes and
clones the visible conditions to reflect those of the translated file attribute.

@param BuildDataDefinitionEvent $event The event being processed.

@return void
This handles all translated file attributes and clones the visible conditions to reflect those of the translated file attribute .