Typo3 Snippets  >  Snippets  >  Marker und Frontend  >  Mit TypoScript rechnen

Mit TypoScript rechnen

Kaum zu glauben aber wahr - man kann mit TypoScript auch rechnen. Zwar nicht so komfortabel wie mit einer normalen Programmiersprache, aber es geht.
Die einfachste Variante:

calc = TEXT
calc.value = 4+5
calc.prioriCalc = 1

Mit variablen Elementen kann man so rechnen:

calc = TEXT
calc.current = 1
calc.setCurrent.data = TSFE:tx_myext_pi1|uid
calc.setCurrent.wrap = | * 2
calc.prioriCalc = 1

Und wenn man eine komplexere Formel bauen möchte, kann man das mit einem COA machen:

calc = COA
calc.10 = TEXT
calc.10.value = 50+
calc.10.if.isTrue.dataWrap = {field:title1}

calc.20 < lib.calc.10
calc.20.if.isTrue.dataWrap = {field:title2}

calc.30 < lib.calc.10
calc.30.if.isTrue.dataWrap = {field:title3}

calc.stdWrap.prioriCalc = 1

Hier wird je nachdem, ob die Felder title1, title2, title3 ausgefüllt sind (z.B. in einem FCE) eine Formel gebildet und berechnet - hier wird jeweils 50 addiert. Das Ergebnis kann dann weiterverwendet werden (z.B. für eine min-height):

5 = TEXT
5.value = min-height:
10 < calc
15 = TEXT
15.value = px;