Zum Inhalt springen

if mit UND Bedingung

Erstellt am 25. April 2007 · 4 Antworten · letzte Antwort am 25. April 2007

Tags: Frage

rabauke ·

Hallo!

Ich habe schon einige Beiträge und Dokus durch (nach if und AND suchen ist gar nicht so einfach 😉), aber noch kein Beispiel für eine UND-Bedingung gefunden, außer für globalVars.

Ich möchte, dass ein Marker nur dann mit Text ersetzt wird, wenn zwei Bedingungen wahr sind. Ansonsten soll der Marker durch ein Leerzeichen o.ä. ersetzt werden.

Soweit ich in der Doku gelesen habe, soll if nur dann als wahr angesehen werden, wenn alle Bedingungen wahr sind, bei mir klappt das so aber nicht, auch wenn beide Felder einen Inhalt haben.

DATUMPLUSAUTOR = COA
DATUMPLUSAUTOR.if {
10 = TEXT
10.value.isTrue.field = author
# 20 = TEXT
# 20.value = (
# PUblish Date: )
30 = TEXT
30.value.isTrue.field = starttime // crdate
30.value.date = d.m.Y
}

Geht das so nicht oder geht das überhaupt nicht?

Sven

ArminB ·

Hier als Ansatz:

lib.footer = COA
lib.footer {
	10 = TEXT
	10.value = LEERZEICHEN
	10.override.cObject = COA
	10.override.cObject {
		10 = TEXT
		10.data = page:title
		10.if.isTrue.data = page:uid
	}
}

Armin

rabauke ·

Ok, danke ich probiere es mal, aber wird override nicht LEERZEICHEN überschreiben sobald eines der Elemente in dem COA != "" ist? Ich will ja, dass es nur dann überschrieben wird, wenn beide != "" sind.

Vielleicht kann ich es ja weiter schachteln.

rabauke ·

Ich denke ich habe das Beispiel verstanden. Allerdings möchte ich jetzt noch den Autor nach dem Datum haben und ihn nicht nur dazu nutzen, um in auf isTrue zu testen.

rabauke ·

Ich hab's, auch wenn ich es noch nicht so ganz verstehe.

DATUMPLUSAUTOR = COA
DATUMPLUSAUTOR {
        10 = TEXT
        10.value = LEERZEICHEN
        10.override.cObject = COA
        10.override.cObject {
                10 = TEXT
                10.field = starttime // crdate
                10.date = d.m.Y
                20 = TEXT
                20.field = author
                10.if.isTrue.field = author
                 }
        }

Zeigt Datum und Autor nur an, wenn beides vorhanden ist.