Hallo liebe Typo3-Anhänger,
ich habe eine kleine Frage zur Umsetzung einer eigenen Erweiterung. In der ext_tables.php definiere ich ja für jede einzelne Table ein Label - Field, das mir dann im Backend in der Listenansicht angezeigt wird. Ich benötige nun ein Datumsfeld als Label, welches mir aber nicht im Unix-Format ausgegeben werden sollte, sondern in einem gängigeren Datumsformat. Meine Frage ist, kann ich den Wert 'label' beliebig verändern und wenn ja, wie?
$TCA["meine_erweiterung"] = array (
"ctrl" => array (
'title' => 'LLL:EXT: meine_erweiterung /locallang_db.xml: meine_erweiterung_table',
'label' => 'date',
Auch wird in einer weiteren Tabelle das label aus einem Feld einer externen Tabelle gebildet. Hier steht dann in der Übersicht nur die UID des entsprechenden Eintrags. dort würde ich auch gerne ein eigenes Feld (irgendwas aussagekräftigeres) definieren und nach bestimmten Vorstellungen formatieren.
Ich danke für eure Hilfe und freue mich über eine Antwort auf die 2 Fragen.
LG Marcel
ich wüsste jetzt ad hoc keine einfachere Lösung, aber wenn Du die label_userFunc zur Hilfe ziehst, kannst Du Dein Datum mittels date formatieren wie immer Du möchstest.
Schau mal hier:
#67031
Vielen Dank für die Info. Das wäre schon fast genau das Richtige. Wenn es denn funktionieren würde. Habe alle Anweisungen aus dem Thread übernommen und nach dem Speichern & Cache leeren kommt folgende Fehlermeldung:
Warning: Cannot modify header information - headers already sent by (output started at ...
...class.userLabelClass.php:10) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 311
Warning: Cannot modify header information - headers already sent by (output started at ...
...class.userLabelClass.php:10) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 312
Warning: Cannot modify header information - headers already sent by (output started at ...
...class.userLabelClass.php:10) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 313
Warning: Cannot modify header information - headers already sent by (output started at ...
...class.userLabelClass.php:10) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 314
Warning: Cannot modify header information - headers already sent by (output started at ...
...class.userLabelClass.php:10) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 613
#paralyzed#
poste mal bitte deine Klasse.
Hier der Part aus der ext_tables.php:
//Custom Labels
require_once(t3lib_extMgm::extPath($_EXTKEY).'class.userLabelClass.php');
$TCA['tx_references_vortraege']['ctrl']['label_userFunc'] = "user_LabelClass->getUserLabel";
Hier die class.userLabelClass.php:
<?php
require_once(PATH_t3lib.'class.t3lib_befunc.php');
class user_LabelClass {
function getUserLabel(&$params, &$pObj) {
$id = $params['row']['uid']; //aktuelle uid
$mylabel = $params['row']['buch']; //wie oben holen wir uns den ersten Label
// die($id);
//zur Sicherheit...
if ($id) {
$item = t3lib_BEfunc::getRecord('tx_references_books', $id); //uid aus Tabelle holen
$params['title'] = "Buchtitel: ".$item['title'];
} else {
$label = "Fehler";
$params['title'] = $mylabel.', '.$label;
}
}
}
?>
Und hier die aktuellen Fehlermeldungen:
Warning: Cannot modify header information - headers already sent by (output started at /srv/www/vhosts/referenten/httpdocs/typo3conf/ext/references/class.userLabelClass.php:21) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 311
Warning: Cannot modify header information - headers already sent by (output started at /srv/www/vhosts/referenten/httpdocs/typo3conf/ext/references/class.userLabelClass.php:21) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 312
Warning: Cannot modify header information - headers already sent by (output started at /srv/www/vhosts/referenten/httpdocs/typo3conf/ext/references/class.userLabelClass.php:21) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 313
Warning: Cannot modify header information - headers already sent by (output started at /srv/www/vhosts/referenten/httpdocs/typo3conf/ext/references/class.userLabelClass.php:21) in /srv/www/vhosts/typo3_src/t3lib/class.t3lib_userauth.php on line 314
Warning: Cannot modify header information - headers already sent by (output started at /srv/www/vhosts/referenten/httpdocs/typo3conf/ext/references/class.userLabelClass.php:21) in /srv/www/vhosts/typo3_src/typo3/template.php on line 613
Das "schlimme" daran, er setzt die USER_LABELS schon um, nur die Fehlermeldung nervt tierisch! :-(
Freue mich, wenn Du mir ja aus der Patsche helfen kannst.
Denn nach dem weiteren Cache leeren geht nix mehr.
Vielen Dank!
habe leider immernoch keine Lösung für das Problem gefunden.
Hoffe auf eure Unterstützung. :o
Hast Du ne Lösung gefunden!! Habe gerade das gleiche Problem und muss in 3 Tagen mein Diplom abgeben.... ollegg wenn jetzt alles kaputt ist.... Bitte unm echt ganz dringend Hilfe....
Wenn du den Wert im Input anders darstellen willst, hilft dir:
'eval' => 'date';
Sorry leider kann ich mit deiner Aussage nix anfangen. Habe eben auch bemerkt das ich den Code:
//Custom Labels
require_once(t3lib_extMgm::extPath($_EXTKEY).'class.userLabelClass.php');
// enable label_userFunc only for TYPO3 v 4.1 and higher
if (t3lib_div::int_from_ver(TYPO3_version) >= 4001000) {
$TCA['tx_opus_archiv']['ctrl']['label_userFunc'] = "user_LabelClass->getUserLabel";
}
bei einer anderen Extension eingefügt habe.
Oh Mann Mist gleich klappt gar nix mehr. Ich dreh durch. Ich kann mich nicht mal mehr im Backend einloggen.... oh nein!
Oleggg, Schock lass nach..... hatte ne temporäre Datei temp_CACHED_ps862d_ext_tables.php
Da stand der Mist noch drin. Einfach gelöscht und schon ging es wieder... Trotzdem Danke an alle die hier draufgeguggt haben.