現在の条件がすべて満たされた場合(AND'ed)、この関数はtrueを戻す。1つでも条件がfalseの場合、値はfalseを戻す。
戻り値は”.negate”-プロパティにより無効にされる。
|
プロパティ: |
データタイプ: |
説明: |
デフォルト: |
|---|---|---|---|
|
isTrue |
str /stdWrap |
コンテンツが”true”の場合…(空文字列やゼロではない) |
|
|
isFalse |
str /stdWrap |
コンテンツが"false"の場合...(空もしくはゼロ) |
|
|
isPositive |
int /stdWrap + calc |
コンテンツが正でない場合、falseを戻す |
|
|
isGreaterThan |
value /stdWrap |
コンテンツが".value"より大きくない場合falseを戻す |
|
|
isLessThan |
value /stdWrap |
コンテンツが".value"より小さくない場合falseを戻す |
|
|
equals |
value /stdWrap |
コンテンツが".value"と等しくない場合、falseを戻す |
|
|
isInList |
value /stdWrap |
コンテンツがコンマ区切りリスト".value"の中にない場合、falseを戻す。 ".value"の中のリストは要素の間にスペースがないかもしれない!! |
|
|
value |
value /stdWrap |
"value" (上記記述の比較値) |
|
|
negate |
boolean |
これは終了直前の結果を無効にする。だから、上記のいずれかがtrueを戻せば、すべてのリターンはfalseを戻して終わる!! |
|
|
directReturn |
boolean |
このプロパティが存在する場合は、この値のtrue又はfalseが戻される。TypoScript定数によりtrue又はfalseを設定するのに使用することができる。constant |
|
[tsref:->if]
“if”関数はtrue又はfalseを戻す非常に奇妙な方法である!注意が必要である!
“if”は通常オブジェクトをレンダリングするか値を戻すかのどちらかを決定するのに使用される(cObjects及びstdWrap参照)
以下、それについて詳述:
関数はtrue又はfalseを戻す。trueかfalseのどちらを戻すかはこの関数のプロパティによる。もし”isTrue=1”を設定したら、結果はtrueである。もし”isTrue.field=header”を設定した場合、$cObj->dataの”header”フィールドが設定されたと時、関数はtrueを戻す!
値を比較したい場合、”.value”-プロパティのベース値を取り込まなければならない。例:
.value = 10
.isGreaterThan = 11
“.isGreaterThan”がベース値である10より大きいので、これはtrueを戻す。
より複雑なものが次である:
.value = 10
.isGreaterThan = 11
.isTrue.field = header
.negate = 1
2つの条件-isGreterThanとisTrueがある。もしどちらもtrueであれば、トータルはtrueとなる(AND)しかし(!)”.negate”-フラグは結果を反転させるので、トータルでのif関数はfalseとなる!
これは、”newUntil”フィールドが現在の日付より少ない日付を持った場合、メニューアイテム上に”NEW”を書くGIFBUILDERオブジェクトである!
...
30 = TEXT
30.text = NEW!
30.offset = 10,10
30.if {
value.data = date: U
isLessThan.field = newUntil
negate = 1
}
...