Rahmen sind seit 4.3 weg [Gelöst]

  • Pablita Pablita
    Padawan
    0 x
    51 Beiträge
    0 Hilfreiche Beiträge
    01. 04. 2010, 23:15

    Hallo zusammen

    Bisher konnte ich immer im BE einen Rahmen auswählen für den Content
    Seit TYPO3 4.3.. geht das nicht mehr. Er zeigt mir aber im BE nach wie vor meine Auswahl (z.B mein Rahmen) an.

    statt für den Content 64:
    [TS]<div class="mein Rahmen">[/TS]
    steht im HTML
    [TS]<div class="csc-frame csc-frame-frame2" id="c64">[/TS]

    Was kann ich machen , oder ändern ?

    Danke


  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    2849 Beiträge
    105 Hilfreiche Beiträge
    13. 04. 2010, 09:58

    Um das ganze mal aufzuklären bzw. zu klären, warum welche Lösung klappt oder nicht klappt, habe ich mal in die Tiefen von TYPO3 geschaut.

    Hier im Thread wurde ja bereits festgestellt, dass manches TS erst seit TYPO3 4.3 nicht mehr läuft. Somit stellt sich die Frage, warum?

    [u][b]Vergleich des TS in 4.2 vs. 4.3[/b][/u]

    css_styled_content in TYPO3 4.2 (Ausschnitt):
    [TS]tt_content.stdWrap {
    innerWrap.cObject = CASE
    innerWrap.cObject {
    key.field = section_frame

    1 = TEXT
    1.value = <div class="csc-frame csc-frame-invisible">|</div>

    5 = TEXT
    5.value = <div class="csc-frame csc-frame-rulerBefore"></div>|

    # ...
    }
    }[/TS]

    css_styled_content in TYPO3 4.3 (Ausschnitt):
    [TS]tt_content.stdWrap {
    innerWrap.cObject = CASE
    innerWrap.cObject {
    key.field = section_frame

    default = COA
    default {
    10 = TEXT
    10 {
    value = <div id="c{field:uid}"
    override.cObject = TEXT
    override.cObject {
    value = <div
    if.value = div
    if.equals.field = CType
    }
    insertData = 1
    }

    15 = TEXT
    15 {
    value = csc-default
    noTrimWrap = | class="|" |
    required = 1
    }

    20 = COA
    20 {
    10 = COA
    10 {
    10 = TEXT
    10 {
    value = {$content.spaceBefore}
    wrap = |+
    if.isTrue = {$content.spaceBefore}
    }

    20 = TEXT
    20 {
    field = spaceBefore
    }

    stdWrap {
    prioriCalc = intval
    wrap = margin-top:|px;
    required = 1
    ifEmpty.value =
    }
    }

    20 = COA
    20 {
    10 = TEXT
    10 {
    value = {$content.spaceAfter}
    wrap = |+
    if.isTrue = {$content.spaceAfter}
    }

    20 = TEXT
    20 {
    field = spaceAfter
    }

    stdWrap {
    prioriCalc = intval
    wrap = margin-bottom:|px;
    required = 1
    ifEmpty.value =
    }
    }

    stdWrap.noTrimWrap = | style="|" |
    stdWrap.required = 1
    }
    30 = TEXT
    30.value = >|</div>
    }

    1 =< tt_content.stdWrap.innerWrap.cObject.default
    1.15.value = csc-frame csc-frame-invisible

    5 =< tt_content.stdWrap.innerWrap.cObject.default
    5.15.value = csc-frame csc-frame-rulerBefore

    # ...
    }
    }[/TS]

    [b][u]Was ist nun die Änderung, die Euch in die Quere kommt?[/u][/b]
    In TYPO3 4.2 waren die cObjects einfache TEXT-Objekte. Diesen konnte man problemlos einen neuen Value zuweisen und alles hat gepasst.

    In TYPO3 4.3 ist das cObject nun [i]kein[/i] TEXT-Objekt mehr, sondern ein [url=http://www.typo3.net/tsref/cobject/cobj_array/]COA-Objekt[/url]. Dieses wird für den default-Fall definiert und in allen weiteren Fällen referenziert (=<). COA-Objekte haben keine value-Eigenschaft, wodurch eine Änderungen wie von Büchel keine Auswirkung hat, weil sie einfach ignoriert wird.

    Möglich wäre nun, dass man das definierte cObject erst einmal löscht (damit aber auch die spaceBefore/spaceAfter-Behandlung usw.), und dann im Anschluss wieder wie früher ein TEXT-Objekt direkt definiert (Zeile 1+2, 5+6):

    [TS]tt_content.stdWrap.innerWrap.cObject.1 >
    tt_content.stdWrap.innerWrap.cObject.1 = TEXT
    tt_content.stdWrap.innerWrap.cObject.1.value = <div class="subcontent-unit-Box"><div class="round-border-Box"></div><div class="round-border-Box"></div> | </div>

    tt_content.stdWrap.innerWrap.cObject.5 >
    tt_content.stdWrap.innerWrap.cObject.5 = TEXT
    tt_content.stdWrap.innerWrap.cObject.5.value = <div class="subcontent-unit-border-wichtig"><div class="round-border-wichtig"></div><div class="round-border-wichtig"></div> | </div> [/TS]

    Ich hoffe, dass ich etwas mehr Klarheit in das Verhalten von TYPO3 bringen konnte.

    Viele Grüße
    Julian[u][/u]

  • Daviz Daviz
    T3PO
    0 x
    29 Beiträge
    0 Hilfreiche Beiträge
    13. 04. 2010, 11:37

    Hallo Julian,

    danke für umfassende Beschreibung :)

    Ich suche gerade eine Möglichkeit, von einem bestimmten Contentelement den seit Version 4.3 neuen Rahmen zu entfernen. In meinem Fall von tt_content.html.

    Der TS-Object-Browser hilft mir hier leider gerade nicht weiter.

    Viele Grüße,
    David

  • Pablita Pablita
    Padawan
    0 x
    51 Beiträge
    0 Hilfreiche Beiträge
    13. 04. 2010, 20:34

    Naja, entfernte Nummern funktionieren nicht mehr, udn folglich auch keine Wraps mehr für sie. Da kommt dann logischerweise das ""aktueller Wert nicht erlaubt", weil de Wert eben nicht mehr Teil der Auswahlmenge ist.

    Ist irgendwie unlogisch, erst entferne ich etwas, aber ich füge es ja anschließend wieder ein !
    Wenn ich einen Apfel wegnehme und anschliessend wieder einen hinlege, dann hab ich wieder einen Apfel.

    Aber OK.

  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    2849 Beiträge
    105 Hilfreiche Beiträge
    13. 04. 2010, 21:05

    [quote="Pablita"]
    Wenn ich einen Apfel wegnehme und anschliessend wieder einen hinlege, dann hab ich wieder einen Apfel.
    [/quote]

    Ja, dann hast Du wieder [i]einen[/i] Apfel, aber nicht den, der ursprünglich da lag. Und so ist das hier ja auch: du entfernst ein TS-Objekt und legst [i]ein anderes[/i] an seine Stelle wieder hin.

  • Basti4k Basti4k
    Sternenflotten-Admiral
    0 x
    181 Beiträge
    2 Hilfreiche Beiträge
    02. 11. 2010, 15:16

    Hallo Forum,

    genau dieses Problem wie oben beschrieben habe ich nun auch!!!
    Wie kann ich denn nun auf dem einfachsten wege meine eigenen neuen Rahmen für die neue typo3 version bauen?

    wäre um vorschläge super dankbar !

    PS: übergangslösung ist nun erst einmal das:

    1. tt_content.stdWrap.dataWrap = <a id="c{field:uid}"></a>|

    aber ist klar... dadurch kommen nun valide fehler da die "id" zweimal ausgegeben wird...

    TYPO3 - TIPS - ANLEITUNGEN - NEWS unter: http://www.typo3-probleme.de/
    Firma: TYPO3 - Internet-Agentur - Frankfurt und Wiesbaden -> http://www.ingeniumdesign.de

  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    2849 Beiträge
    105 Hilfreiche Beiträge
    02. 11. 2010, 16:33

    Hallo Basti.

    Die Lösung steht hier im Thread - deshalb steht er ja auch auf "gelöst" ;)
    Oder wo drückt der Schuhe genauer?

    Viele Grüße
    Julian

  • Liberation Liberatio...
    Jedi-Meister
    0 x
    412 Beiträge
    0 Hilfreiche Beiträge
    21. 11. 2011, 13:13

    Oder so:
    TCEFORM.tt_content.section_frame.addItems {
    31 = meinCSS-Style
    }

    tt_content.stdWrap.innerWrap.cObject = CASE
    tt_content.stdWrap.innerWrap.cObject {
    31 =< tt_content.stdWrap.innerWrap.cObject.default
    31.15.value = csc-frame meinCSS-Style
    }

  • Jan.S Jan.S
    Padawan
    0 x
    38 Beiträge
    0 Hilfreiche Beiträge
    03. 06. 2013, 14:49

    [quote="Liberation"]
    Oder so:
    TCEFORM.tt_content.section_frame.addItems {
    31 = meinCSS-Style
    }

    tt_content.stdWrap.innerWrap.cObject = CASE
    tt_content.stdWrap.innerWrap.cObject {
    31 =< tt_content.stdWrap.innerWrap.cObject.default
    31.15.value = csc-frame meinCSS-Style
    }
    [/quote]

    In TYPO3 6.1 muss es jetzt so aussehen

    1. Oder so:
    2. TCEFORM.tt_content.section_frame.addItems {
    3. 31 = meinCSS-Style
    4. }
    5.  
    6. 31 =< tt_content.stdWrap.innerWrap.cObject.default
    7. 31.20.10.value = csc-frame meinCSS-Style
    8. }