|
Verfasst am: 03. 07. 2009 [20:09]
|
|
karlchen
Dabei seit: 19.10.2006
Beiträge: 748
|
mir ist gerade im Zusammenhang mit der Funktion eine Frage aufgekommen.
Ich wollte mit der Funktion, ein Element von showItem entfernen, in diesem Fall den --div--, da nur dieser Tab entfernt werden sollte.
Dazu wollte ich folgendermassen vorgehen:
$GLOBALS['TCA']['tt_content']['types']['text']['showitem'] = t3lib::div::rmFromList('--div--;LLL:EXT:cms/locallang_ttc.xml:CType.I.1',$GLOBALS['TCA']['tt_content']['types']['text']['showitem']);
Hat allerdings nicht geklappt, also habe ich mal in die Funktion reingesehen, ob ich denn soweot alles Richtig übergeben habe.
function rmFromList($element,$list) {
$items = explode(',',$list);
foreach ($items as $k => $v) {
if ($v==$element) {
unset($items[$k]);
}
}
return implode(',',$items);
}
Soweit alles in Ordnung, allerdings nachwievor keine Übereinstimmung.
Wenn ich jetzt allerdings die Funktion ein wenig änder und schreibe
...
if (trim($v)==$element) {
...
funktioniert alles.
In der Datei tbl_tt_content.php werden diese Punkte ja für tt_content definiert, wie bei anderen Extensions in der tca.php.
Für die bessere Übersicht schreibt man natürlich nicht alles in eine Zeile.
Kann es sein daher sein, dass in der Liste $GLOBALS[..]['showItems] die Zeilenumbrüchen oder Tabs mit gespeichert werden ?
Wenn ja, ist das korrekt ?
Wäre es in diesem Fall nicht auch eine "Platzverschwendung" und könnte es nicht ähnlich wie in meinem Fall zu Problemen führen ?
oder ist es sogar ein bug bzw. Missing Feature 
|