TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

jetzt buchen

addTCAcolumns bei Flexforms


Autor Nachricht
Verfasst am: 03. 09. 2007 [10:52]
JayR
Dabei seit: 07.11.2004
Beiträge: 265
Hallo zusammen,

ich bin eben auf Euren Thread gestoßen da ich ein ähnliches Problem habe.

Über den Kickstarter ist es ja möglich neue Felder zu einer DB hinzuzufügen, welche dann auch über addTCAcolumns() und addToAllTCAtypes() eingefügt werden. Selbst bei einer Extension die Flexform einsetzt werden die neuen Felder zwar angezeigt aber die Position innerhalb der Flexformansicht ist dann nicht definiert.

Wenn ich das richtig verstanden habe, kann eine bestehende Flexform nur komplett ersetzt werden, um weitere Felder einer anderen Erweiterung aufzunehmen und diese auch entsprechend in der Flexform positionieren zu können???
Das wiederum heißt aber, dass die Flexform einer Extension nur einmal erweitert werden kann?!

Mal folgendes Szenario:

Ich habe, wie von Euch beschrieben die tt_news Extension als Ausgangspunkt.

Dafür gibt es die fiktive Extension "tt_news_images". Diese Ext. überschreibt die Flexform von tt_news und fügt einen neuen Reiter "Bilder" und ein paar neue Felder hinzu.

Nun soll es noch eine dritte Erweiterung geben: "tt_news_maps". Diese Ext. soll ebenfalls bei tt_news einen neuen Reiter "Google Maps" hinzufügen. Da ich aber wieder die komplette Flexform überschreibe und die Ext "tt_news_maps" nichts von "tt_news_images" weiß, überschreibt diese meine erste Flexform und die Bildinfos sind verschwunden!

Bitte korrigiert mich wenn ich falsch liege!!!!!

Oder gibt es doch eine Möglichkeit eine Flexform über mehrere Extensions zu erweitern??? Das "Ding" heißt ja immerhin "FLEXform"...und nicht "Unflexform"! icon_biggrin.gif

Vielen Dank im Voraus.
Gruß Jan
Profil
Verfasst am: 03. 09. 2007 [11:14]
saschae
Dabei seit: 13.01.2006
Beiträge: 262
Habe ebenfalls das gleiche porblem und bräuchte schnell eine lösung... das komplette flexform zu überschreiben ist ja wie schon erwähnt keine lösung da dies ja nur einmal gemacht werden kann...
ProfilWWW
Verfasst am: 03. 09. 2007 [12:39]
steffenk
Moderator
Dabei seit: 22.09.2005
Beiträge: 4839
Die Reiter sind über Palette erzeugt. Wenn ein Reiter einen bestehenden überschreibt, so ist die Definition nicht richtig.

Info über die Paletten gibt es hier:
http://typo3.org/documentation/document-library/core-documentation/doc_core_api/4.1.0/view/4/2/#id3665417

ProfilWWW
Verfasst am: 03. 09. 2007 [14:18]
JayR
Dabei seit: 07.11.2004
Beiträge: 265
Hi Steffen,

die Palette steuert doch nur die Sichtbarkeit bestimmter Elemente ("zweite Optionspalette anzeigen" im BE)?!? Nicht aber die Position neuer Elemente.

Wäre denn ein Szenario denkbar (wie oben von mir beschrieben), bei dem beide tt_news-Erweiterungen installiert sind und alle neuen Reiter und Felder (beider Erweiterungen) in der tt_news-Flexform vorhanden sind?

Viele Grüße
Jan
Profil
Verfasst am: 04. 09. 2007 [01:36]
steffenk
Moderator
Dabei seit: 22.09.2005
Beiträge: 4839
ich hab nochmal nachgeschaut, wie ich das mal gemacht habe:

PHP
t3lib_extMgm::addToAllTCAtypes("tx_cal_event","--div--;Reservations,tx_skcalreserv_allowreservation;;;;1-1-1, tx_skcalreserv_maxreservations&quot<img src="typo3conf/ext/mm_forum//res/smilies/icon_wink.gif" alt="icon_wink.gif" />;

---div--- erzeugt einen neuen Reiter, Reservations ist der Titel und danach kommen die Felder.

Eigentlich sollten auch von anderen Extensions erzeugte Reiter erhalten bleiben, da addToAllTCAtypes ja aus "tx_cal_event" ein neues Array erzeugt.

ProfilWWW