<?php
return [
    'ctrl' => [
        'title'	=> 'LLL:EXT:products/Resources/Private/Language/locallang.xlf:tx_products_domain_model_property',
        'label' => 'name',
        'tstamp' => 'tstamp',
        'crdate' => 'crdate',
        'sortby' => 'sorting',
        'default_sortby' => ' ORDER BY sorting ASC',
		'versioningWS' => true,
        'languageField' => 'sys_language_uid',
        'transOrigPointerField' => 'l10n_parent',
        'transOrigDiffSourceField' => 'l10n_diffsource',
		'delete' => 'deleted',
		'enablecolumns' => [
            'disabled' => 'hidden',
            'starttime' => 'starttime',
            'endtime' => 'endtime',
        ],
		'searchFields' => 'name,type',
        'iconfile' => 'EXT:products/Resources/Public/Icons/tx_products_domain_model_property.svg'
    ],
    'types' => array(
        '1' => array('showitem' => '
            --div--;Allgemein,
                --palette--;Merkmal;palettes_property,
            --div--;Zugriff,
                --palette--;Sichtbarkeit;palettes_visibility,
                --palette--;Zugriff;palettes_access'),
    ),
    'palettes' => array(
        'palettes_property' => array(
            'showitem' => 'name, --linebreak--, type, --linebreak--, propertygroup, --linebreak--, unit_prefix, unit_suffix',
            'canNotCollapse' => 1
        ),
        'palettes_visibility' => array(
            'showitem' => 'hidden, sys_language_uid',
            'canNotCollapse' => 1
        ),
        'palettes_access' => array(
            'showitem' => 'starttime, endtime',
            'canNotCollapse' => 1
        ),
    ),
    'columns' => [
		'sys_language_uid' => [
			'exclude' => true,
			'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.language',
			'config' => ['type' => 'language'],
        ],
        'l10n_parent' => [
            'displayCond' => 'FIELD:sys_language_uid:>:0',
            'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.l18n_parent',
            'config' => [
                'type' => 'select',
                'renderType' => 'selectSingle',
                'items' => [
                    ['label' => '', 'value' => 0],
                ],
                'foreign_table' => 'tx_products_domain_model_property',
                'foreign_table_where' => 'AND tx_products_domain_model_property.pid=###CURRENT_PID### AND tx_products_domain_model_property.sys_language_uid IN (-1,0)',
            ],
        ],
        'l10n_diffsource' => [
            'config' => [
                'type' => 'passthrough',
            ],
        ],
		't3ver_label' => [
            'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.versionLabel',
            'config' => [
                'type' => 'input',
                'size' => 30,
                'max' => 255,
            ],
        ],
		'hidden' => [
            'exclude' => true,
            'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.hidden',
            'config' => [
                'type' => 'check',
                'items' => [
                    '1' => [
                        'label' => 'LLL:EXT:lang/locallang_core.xlf:labels.enabled'
                    ]
                ],
            ],
        ],
		'starttime' => [
            'exclude' => true,
            'l10n_mode' => 'mergeIfNotBlank',
            'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.starttime',
            'config' => [
                'type' => 'input',
                'size' => 13,
                'eval' => 'datetime',
                'default' => 0,
            ]
        ],
        'endtime' => [
            'exclude' => true,
            'l10n_mode' => 'mergeIfNotBlank',
            'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.endtime',
            'config' => [
                'type' => 'input',
                'size' => 13,
                'eval' => 'datetime',
                'default' => 0,
                'range' => [
                    'upper' => mktime(0, 0, 0, 1, 1, 2038)
                ]
            ],
        ],
        'name' => [
	        'exclude' => true,
	        'label' => 'LLL:EXT:products/Resources/Private/Language/locallang.xlf:tx_products_domain_model_property.name',
	        'config' => [
			    'type' => 'input',
			    'size' => 30,
			    'eval' => 'trim'
			],
	    ],
	    'type' => [
	        'exclude' => true,
	        'label' => 'LLL:EXT:products/Resources/Private/Language/locallang.xlf:tx_products_domain_model_property.type',
	        'config' => [
			    'type' => 'select',
			    'renderType' => 'selectSingle',
			    'items' => [
			        ['label' => 'Text', 'value' => 'input'],
			        ['label' => 'Einheit', 'value' => 'unit'],
			        ['label' => 'Einheit (Bereich)', 'value' => 'unit-range'],
			    ],
			    'size' => 1,
			    'maxitems' => 1
			],
            'onChange' => 'reload',
	    ],
        'unit_prefix' => [
            'exclude' => true,
            'label' => 'Einheit (Prefix)',
            'config' => [
                'type' => 'input',
                'size' => 30,
                'eval' => ''
            ],
            'displayCond' => [
                'OR' => [
                    'FIELD:type:=:unit',
                    'FIELD:type:=:unit-range',
                ],
            ],
        ],
        'unit_suffix' => [
            'exclude' => true,
            'label' => 'Einheit (Suffix)',
            'config' => [
                'type' => 'input',
                'size' => 30,
                'eval' => '',
            ],
            'displayCond' => [
                'OR' => [
                    'FIELD:type:=:unit',
                    'FIELD:type:=:unit-range',
                ],
            ],
        ],
        'propertygroup' => [
            'exclude' => true,
            'label' => 'LLL:EXT:products/Resources/Private/Language/locallang.xlf:tx_products_domain_model_propertygroup',
            'config' => array(
                'type' => 'select',
                'renderType' => 'selectSingle',
                'foreign_table' => 'tx_products_domain_model_propertygroup',
            ),
        ],
    ],
];
