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

Jetzt testen!

Schulungen

Insert Record wird nicht angezeigt


Autor Nachricht
Verfasst am: 19. 04. 2012 [14:58]
fnord
Themenersteller
Dabei seit: 11.12.2009
Beiträge: 13
Hallo Forum,

folgende Problem: Der Kunde will für jedes Content Element ein eigenes Layout auswählen können.

In der TS Config hab ich folgenden Eintrag gemacht:

TYPOSCRIPT
TCEFORM.tt_content.layout.addItems.4 = Darkgreen
TCEFORM.tt_content.layout.addItems.5 = Orange
 
TCEFORM.tt_content { 
  layout.altLabels.0 = Default
  layout.altLabels.1 = Blue    
  layout.altLabels.2 = Pink    
  layout.altLabels.3 = Lightgreen  
  layout.altLabels.4 = Darkgreen  
  layout.altLabels.5 = Orange  
}


im Setup dann die Subparts angepasst:

TYPOSCRIPT
page.10.subparts {
      firstBox<styles.content.get
      firstBox.select.where = colPos = 21
      firstBox.slide = -1
      firstBox.renderObj.stdWrap.wrap.cObject=CASE
      firstBox.renderObj.stdWrap.wrap.cObject{
        key.field = layout
        default=TEXT
        default.value=<div class="none">|</div>         
        1=TEXT
        1.value=<div class="blue">|</div>
        2=TEXT
        2.value=<div class="pink">|</div>
        3=TEXT
        3.value=<div class="lightgreen">|</div>    
        4=TEXT
        4.value=<div class="darkgreen">|</div>
        5=TEXT
        5.value=<div class="orange">|</div>        
      }   
}


Funktioniert soweit auch super, nur wenn ich einen Datensatzverweis einfügen will, wird der nicht eingebunden. Die Div-Box bleibt leer:

HTML
<div class="pink">
    <div class="csc-default" id="c1328"></div>
</div>


Das Komisch ist, dass es bei Default & Blue funktioniert, hier wird der Inhalt eingebunden:

HTML
<div class="blue">
    <div class="csc-default" id="c1326">
        <div class="csc-default" id="c1234">... Inhalt vom Verweis ...</div>
    </div>
</div>


Hat jemand eine Idee, damit das bei allen Layouts funktioniert?
Profil
Verfasst am: 20. 04. 2012 [10:13]
Julian.Hofmann
Dabei seit: 18.05.2007
Beiträge: 2073
Hallo.

Für machne layout-Werte passt es? D.h. Du hast ein Inhaltselement "Insert Records" angelegt, und diesem nacheinander unterschiedliche layout-Werte gegeben? Und dabei hat es mal funktioniert, mal nicht? icon_confused.gif

Eine Idee wäre gewesen, dass Du die Bedingung colPos=21 mit reingenommen hast. Damit überschreibst Du die colPos=0-Bedingung aus styles.content.get, was evtl. bei eingefügten Records sich irgendwie auswirken könnte.

Viele Grüße
Julian
Profil
Verfasst am: 20. 04. 2012 [10:31]
fnord
Themenersteller
Dabei seit: 11.12.2009
Beiträge: 13
Julian.Hofmann schrieb:

Für machne layout-Werte passt es? D.h. Du hast ein Inhaltselement "Insert Records" angelegt, und diesem nacheinander unterschiedliche layout-Werte gegeben? Und dabei hat es mal funktioniert, mal nicht? icon_confused.gif


Es funktioniert immer mit den Layouts Default & Blue, also den altLabel Ids 0 & 1, egal welche colPos der einbindende Div oder der Record haben. Bei allen anderen Layouts funktioniert es nie.
Profil
Verfasst am: 20. 04. 2012 [10:58]
Julian.Hofmann
Dabei seit: 18.05.2007
Beiträge: 2073
Die Lösung/Ursache liegt in Core-Funktionalitäten. TYPO3 (bzw. css_styled_content) verwendet selber das Feld "layout" für sich (und unterscheidet nach 0 und 1) . Folglich kollidiert Deine Verwendung mit der von TYPO3.

Hierzu der Ausschnitt aus dem statischen TS von CSS styled content:
TYPOSCRIPT
# ****************
# CType: shortcut
# ****************
# Should be a complete copy from the old static template "content (default)"
tt_content.shortcut = COA
tt_content.shortcut {
	20 = CASE
	20.key.field = layout
	20.0= RECORDS
	20.0 {
		source.field = records
		tables = {$content.shortcut.tables}
		# THESE are OLD plugins. Modern plugins registers themselves automatically!
		conf.tt_content = < tt_content
		conf.tt_address = < tt_address
		conf.tt_links = < tt_links
		conf.tt_guest = < tt_guest
		conf.tt_board = < tt_board
		conf.tt_calender = < tt_calender
		conf.tt_rating < tt_rating
		conf.tt_products = < tt_products
		conf.tt_news = < tt_news
		conf.tt_poll = < plugin.tt_poll
	}
	20.1= RECORDS
	20.1 {
		source.field = records
		tables = {$content.shortcut.tables}
		conf.tt_poll = < plugin.tt_poll
		conf.tt_poll.code = RESULT,SUBMITTEDVOTE
	}
 
	20.stdWrap {
		editIcons = tt_content: records
		editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.recordList
 
		prefixComment = 2 | Inclusion of other records (by reference):
	}
}
Profil