[TYPO3-german] $TCA Einstellung für Sprache als Label

Martin Borer mbarts at bluewin.ch
Fri May 25 16:09:18 CEST 2007


Hi all,

Ich habe eine Extension geschrieben, bei der ich eine Tabelle habe mit 2
Feldern. (titel, language). Die Sprache ist eine selector box
(sys_language). Ich möchte nun, dass ein erstellter Datensatz das Label der
ausgewählten Sprache hat. Wie bekomme ich das hin?

So sieht ext_tables.php aus:
<?php
if (!defined ('TYPO3_MODE')) 	die ('Access denied.');
$TCA["tx_adiatest_test"] = array (
	"ctrl" => array (
		'title'     =>
'LLL:EXT:adia_test/locallang_db.xml:tx_adiatest_test',		
		'label'     => 'language',	
		'tstamp'    => 'tstamp',
		'crdate'    => 'crdate',
		'cruser_id' => 'cruser_id',
		'default_sortby' => "ORDER BY crdate",	
		'delete' => 'deleted',	
		'dynamicConfigFile' =>
t3lib_extMgm::extPath($_EXTKEY).'tca.php',
		'iconfile'          =>
t3lib_extMgm::extRelPath($_EXTKEY).'icon_tx_adiatest_test.gif',
	),
	"feInterface" => array (
		"fe_admin_fieldList" => "language, title",
	)
);
?>

Und tca.php sieht so aus:
<?php
if (!defined ('TYPO3_MODE')) 	die ('Access denied.');

$TCA["tx_adiatest_test"] = array (
	"ctrl" => $TCA["tx_adiatest_test"]["ctrl"],
	"interface" => array (
		"showRecordFieldList" => "language,title"
	),
	"feInterface" => $TCA["tx_adiatest_test"]["feInterface"],
	"columns" => array (
		"language" => Array (		
			"exclude" => 1,		
			"label" =>
"LLL:EXT:adia_test/locallang_db.xml:tx_adiatest_test.language",		
			"config" => Array (
				"type" => "select",	
				"foreign_table" => "sys_language",	
				"foreign_table_where" => "ORDER BY
sys_language.uid",	
				"size" => 1,	
				"minitems" => 0,
				"maxitems" => 1,
			)
		),
		"title" => Array (		
			"exclude" => 1,		
			"label" =>
"LLL:EXT:adia_test/locallang_db.xml:tx_adiatest_test.title",		
			"config" => Array (
				"type" => "input",	
				"size" => "30",
			)
		),
	),
	"types" => array (
		"0" => array("showitem" => "language;;;;1-1-1,
title;;;;2-2-2")
	),
	"palettes" => array (
		"1" => array("showitem" => "")
	)
);
?>

Wie ihr seht, möchte ich das bei dem erstellten Datensatz die Sprache als
Label haben. Wenn ich das so mache wie oben bei ext_tables.php beschrieben,
wird natürlich die uid von sys_language angezeigt. Wie bekomme ich es hin,
dass dort der Titel des Sprachfeldes angezeigt wird?

Grüsse
Martin



More information about the TYPO3-german mailing list