Hallo Georg
danke fuer den Tip
da hat ich zwar schon geschaut gehabt, aber habs net hinbekommen
hab nun nochmal geschaut und es geht nun ein Teil
hab nun mal die SelectBox in der Auswahl des Typs bei Material und Inhalt gegen eine Checkbox getauscht
dann mit der displayCond rumgespielt, aber leider nicht zu einer lauffaehigen Version gekommen
hier meine momentane tca:
<?php
if (!defined ('TYPO3_MODE')) die ('Access denied.');
$TCA["tx_trrucksack_main"] = Array (
"ctrl" => $TCA["tx_trrucksack_main"]["ctrl"],
"interface" => Array (
"showRecordFieldList" => "sys_language_uid,l18n_parent,l18n_diffsource,hidden,name,size,color,material,content,testrs,testb"
),
"feInterface" => $TCA["tx_trrucksack_main"]["feInterface"],
"columns" => Array (
'object_type' => array(
'exclude' => 1,
'label' => 'LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.rucksack_object_type',
'config' => array(
'type' => 'radio',
'default' => '0',
'items' => array(
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.object_type.I.0", "0"),
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.object_type.I.1", "1"),
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.object_type.I.2", "2")
)
)
),
'sys_language_uid' => array (
'exclude' => 1,
'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.language',
'config' => array (
'type' => 'select',
'foreign_table' => 'sys_language',
'foreign_table_where' => 'ORDER BY sys_language.title',
'items' => array(
array('LLL:EXT:lang/locallang_general.xml:LGL.allLanguages',-1),
array('LLL:EXT:lang/locallang_general.xml:LGL.default_value',0)
)
)
),
'l18n_parent' => Array (
'displayCond' => 'FIELD:sys_language_uid:>:0',
'exclude' => 1,
'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.l18n_parent',
'config' => Array (
'type' => 'select',
'items' => Array (
Array('', 0),
),
'foreign_table' => 'tx_trrucksack_main',
'foreign_table_where' => 'AND tx_trrucksack_main.pid=###CURRENT_PID### AND tx_trrucksack_main.sys_language_uid IN (-1,0)',
)
),
'l18n_diffsource' => Array (
'config' => Array (
'type' => 'passthrough'
)
),
"hidden" => Array (
"exclude" => 1,
"label" => "LLL:EXT:lang/locallang_general.xml:LGL.hidden",
"config" => Array (
"type" => "check",
"default" => "0"
)
),
"name" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.name",
"config" => Array (
"type" => "input",
"size" => "30",
)
),
"size" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.size",
"config" => Array (
"type" => "select",
"items" => Array (
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.size.I.0", "0"),
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.size.I.1", "1"),
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.size.I.2", "2"),
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.size.I.3", "3"),
),
"size" => 1,
"maxitems" => 1,
)
),
"color" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.color",
"config" => Array (
"type" => "input",
"size" => "30",
)
),
"material0" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.material",
'displayCond' => 'FIELD:object_type:=:0',
"config" => Array (
"type" => "select",
"foreign_table" => "tx_trrucksack_material",
"foreign_table_where" => "AND tx_trrucksack_material.rtype IN (1,3) ORDER BY tx_trrucksack_material.uid",
"size" => 9,
"minitems" => 0,
"maxitems" => 99,
)
),
"material1" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.material",
'displayCond' => 'FIELD:object_type:=:1',
"config" => Array (
"type" => "select",
"foreign_table" => "tx_trrucksack_material",
"foreign_table_where" => "AND tx_trrucksack_material.rtype IN (2,3) ORDER BY tx_trrucksack_material.uid",
"size" => 9,
"minitems" => 0,
"maxitems" => 99,
)
),
"content0" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.content",
'displayCond' => 'FIELD:object_type:=:0',
"config" => Array (
"type" => "select",
"foreign_table" => "tx_trrucksack_content",
"foreign_table_where" => "AND tx_trrucksack_content.rtype IN (1,3) ORDER BY tx_trrucksack_content.uid",
"size" => 9,
"minitems" => 0,
"maxitems" => 99,
)
),
"content1" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.content",
'displayCond' => 'FIELD:object_type:=:1',
"config" => Array (
"type" => "select",
"foreign_table" => "tx_trrucksack_content",
"foreign_table_where" => "AND tx_trrucksack_content.rtype IN (2,3) ORDER BY tx_trrucksack_content.uid",
"size" => 9,
"minitems" => 0,
"maxitems" => 99,
)
),
"testrs" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.testrs",
"config" => Array (
"type" => "input",
"size" => "30",
)
),
"testb" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_main.testb",
"config" => Array (
"type" => "input",
"size" => "30",
)
),
),
"types" => Array (
"0" => Array("showitem" => "sys_language_uid;;;;1-1-1, l18n_parent, l18n_diffsource, object_type, hidden;;1, name, size, color, material0, content0, testrs"),
"1" => Array("showitem" => "sys_language_uid;;;;1-1-1, l18n_parent, l18n_diffsource, object_type, hidden;;1, name, size, color, material1, content1, testb")
),
"palettes" => Array (
"1" => Array("showitem" => "")
)
);
$TCA["tx_trrucksack_material"] = Array (
"ctrl" => $TCA["tx_trrucksack_material"]["ctrl"],
"interface" => Array (
"showRecordFieldList" => "sys_language_uid,l18n_parent,l18n_diffsource,hidden,name,rtype"
),
"feInterface" => $TCA["tx_trrucksack_material"]["feInterface"],
"columns" => Array (
'sys_language_uid' => array (
'exclude' => 1,
'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.language',
'config' => array (
'type' => 'select',
'foreign_table' => 'sys_language',
'foreign_table_where' => 'ORDER BY sys_language.title',
'items' => array(
array('LLL:EXT:lang/locallang_general.xml:LGL.allLanguages',-1),
array('LLL:EXT:lang/locallang_general.xml:LGL.default_value',0)
)
)
),
'l18n_parent' => Array (
'displayCond' => 'FIELD:sys_language_uid:>:0',
'exclude' => 1,
'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.l18n_parent',
'config' => Array (
'type' => 'select',
'items' => Array (
Array('', 0),
),
'foreign_table' => 'tx_trrucksack_material',
'foreign_table_where' => 'AND tx_trrucksack_material.pid=###CURRENT_PID### AND tx_trrucksack_material.sys_language_uid IN (-1,0)',
)
),
'l18n_diffsource' => Array (
'config' => Array (
'type' => 'passthrough'
)
),
"hidden" => Array (
"exclude" => 1,
"label" => "LLL:EXT:lang/locallang_general.xml:LGL.hidden",
"config" => Array (
"type" => "check",
"default" => "0"
)
),
"name" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_material.name",
"config" => Array (
"type" => "input",
"size" => "30",
)
),
"rtype" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_material.rtype",
"config" => Array (
"type" => "check",
"items" => Array (
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_material.rtype.I.0", "0"),
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_material.rtype.I.1", "1"),
),
"cols" => 2,
)
),
),
"types" => Array (
"0" => Array("showitem" => "sys_language_uid;;;;1-1-1, l18n_parent, l18n_diffsource, hidden;;1, name, rtype")
),
"palettes" => Array (
"1" => Array("showitem" => "")
)
);
$TCA["tx_trrucksack_content"] = Array (
"ctrl" => $TCA["tx_trrucksack_content"]["ctrl"],
"interface" => Array (
"showRecordFieldList" => "sys_language_uid,l18n_parent,l18n_diffsource,hidden,name,rtype"
),
"feInterface" => $TCA["tx_trrucksack_content"]["feInterface"],
"columns" => Array (
'sys_language_uid' => array (
'exclude' => 1,
'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.language',
'config' => array (
'type' => 'select',
'foreign_table' => 'sys_language',
'foreign_table_where' => 'ORDER BY sys_language.title',
'items' => array(
array('LLL:EXT:lang/locallang_general.xml:LGL.allLanguages',-1),
array('LLL:EXT:lang/locallang_general.xml:LGL.default_value',0)
)
)
),
'l18n_parent' => Array (
'displayCond' => 'FIELD:sys_language_uid:>:0',
'exclude' => 1,
'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.l18n_parent',
'config' => Array (
'type' => 'select',
'items' => Array (
Array('', 0),
),
'foreign_table' => 'tx_trrucksack_content',
'foreign_table_where' => 'AND tx_trrucksack_content.pid=###CURRENT_PID### AND tx_trrucksack_content.sys_language_uid IN (-1,0)',
)
),
'l18n_diffsource' => Array (
'config' => Array (
'type' => 'passthrough'
)
),
"hidden" => Array (
"exclude" => 1,
"label" => "LLL:EXT:lang/locallang_general.xml:LGL.hidden",
"config" => Array (
"type" => "check",
"default" => "0"
)
),
"name" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_content.name",
"config" => Array (
"type" => "input",
"size" => "30",
)
),
"rtype" => Array (
"exclude" => 1,
"label" => "LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_content.rtype",
"config" => Array (
"type" => "check",
"items" => Array (
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_content.rtype.I.0", "0"),
Array("LLL:EXT:tr_rucksack/locallang_db.xml:tx_trrucksack_content.rtype.I.1", "1"),
),
"cols" => 2,
)
),
),
"types" => Array (
"0" => Array("showitem" => "sys_language_uid;;;;1-1-1, l18n_parent, l18n_diffsource, hidden;;1, name, rtype")
),
"palettes" => Array (
"1" => Array("showitem" => "")
)
);
?>
darin hab ich zweimal Material und zweimal Inhalt definiert, damit wuerde die Auswahl funktionieren, aber er kanns nicht speichern, da es nur ein Feld "material" und "content" gibt
wenn man die zwei wieder zu einem Umbiegen koennt, wuerds funktionieren, oder loest man des anders ?
bin leider auch bei der Suche nach aehnlichen Beispielen nicht fuendig geworden
hab die Ext nur local laufen, aber koennt sie mal versuchen ins TER zu stellen, wenns hilft
:-help
Gruss T0m