Am 10.06.14 13:08, schrieb Marambio, Nelson:
Liebe Liste,

mit tt_address 2.3.3 haben wir ein Darstellungsproblem, wenn Mitarbeiter einen 
Studienabschluss und damit einen akademischen Titel tragen.
Bei vielen nachgestellten Titeln genügt der Marker TITLE, z.B. für <Nachname>, 
Dipl.Inf | <Nachname>, MA usw.

Wenigstens ein Titel müsste aber gesplittet werden: Prof. <Vorname> <Nachname>, 
PhD
Daran arbeite ich gerade und habe zunächst mal Probleme mit Conditions, 
anscheinend klappt der Zugriff auf die Felder eines Datensatzes nicht. Bisher 
habe ich als Übung folgendes in einem Extensiontemplate ins SETUP-Feld 
getippselt (auch einzeln getestet)

plugin.tx_ttaddress_pi1.templates.UniCD_Personenliste {
title = ""
value = "B.Sc."
if.equals.field = title

organization = n/a
stdWrap.if.isNull.field = organization
}

Der erste Block soll den Titel gar nicht ausgeben, wenn im Datensatz "B.Sc." eingetragen 
wurde, im zweiten Block soll der Text "n/a" erscheinen, wenn das Feld Organisation vom 
Benutzer nicht ausgefüllt wurde. Und beides bewirkt nichts.

Was mich ebenfalls verwirrt: im Netz befinden sich Beispiele, die wie oben 
notiert sind

#Anweisung, falls Bedingung erfüllt ist
#Bedingung

als auch

#Bedingung
#Anweisung, falls Bedingung erfüllt ist

Ist die Reihenfolge entscheidend ? Bei meinem Mini-Code habe ich bereits beide 
Varianten probiert, ohne Veränderung. Auch mit den Namespace-Punkten habe ich 
es im ersten Block versucht:
Also .title statt title --> nüx !


die Reihenfolge ist eher nciht entscheidend (nur wenn es ums Überschreiben geht).

Typoscript wird in ein PHP-Array konvertiert und dort abgearbeitet, wobei meistens die keys nach ihrem Namen abgearbeitet werden und nicht nach ihrer Reihenfolge.

dein Problem dürfte aber sein, dass deine Wraps sich nicht auf das beziehen was du davor stehen hast.

plugin.tx_ttaddress_pi1.templates.UniCD_Personenliste {

        title {
                stdWrap.if {
                        equals.field = title
                        value = B.Sc.
                        negate = 1
                }
        }

        organization {
                stdWrap.ifEmpty = n/a
        }
}

title wird nur ausgegeben (muss schon defineirt sein!) wenn das Feld title nicht den Wert "B.Sc." hat.

Wenn organization (vorher definiert!) leer ist wird der Wert "n/a" ausgegeben.

Achte auch darauf: im Typoscript kannst du Werte nicht mit Anführungszeichen angeben. Es sei denn du möchtest die Anführungszeichen in der Ausgabe haben bzw. sie sind in den Daten enthalten.

bernd
--
http://www.pi-phi.de/cheatsheet.html
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an