Zum Inhalt springen

Mal wieder ein if Problem

Erstellt am 1. Dezember 2008 · 3 Antworten · letzte Antwort am 2. Dezember 2008

Tags: Frage

Sola0815 ·

Hallo mit einander,
ich stehe mächtig auf dem Schlauch und bekomme folgendes Problem einfach nicht gelöst:

temp.submenu = HMENU
temp.submenu {
	special = directory
	special.value = 169
	1 = TMENU
	1 {
		NO = 1
		NO {
			doNotShowLink = 1
			before.cObject = TEXT
			before.cObject.field = title
			before.cObject.dataWrap.if.isTrue.field = subtitle
			before.cObject.dataWrap = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1,content2')" class="submenu">
			before.cObject.dataWrap.if.isFalse.field = subtitle
			before.cObject.dataWrap = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1')" class="submenu">
			after.cObject = TEXT
			after.cObject.wrap = |</a></li>
		}
	}
}

Ich möchte erreichen, dass wenn im Subtitle des Menüeintrages etwas steht, dann soll er den einen dataWrap nehmen, und wenn nicht dann den anderen. Im Moment zeigt er immer den unteren an. Hat jemand einen Tipp?

Sola0815 ·

So, ich bin glaube ich einen guten Schritt weiter. So habe ich es gemacht:

temp.submenu = HMENU
temp.submenu {
	special = directory
	special.value = 169
	1 = TMENU
	1 {
		NO = 1
		NO {	
			linkWrap = |
			doNotShowLink = 1		
			before.cObject = TEXT			
			before.cObject {
				field = title				
				dataWrap = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1,content2')" class="submenu">			
				cObject = TEXT
				cObject {					
					dataWrap.if.isTrue.field = subtitle
					dataWrap = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1')" class="submenu">	
					}
				
				}						
			after.cObject = TEXT
			after.cObject.wrap = |</a></li>
		}
	}
}

Das Menü wird eigentlich korrekt zusammen gebaut aber es fehlen noch die Links. Was mache ich falsch?

Sola0815 ·

Jetzt habe ich es noch so versucht:

temp.submenu = HMENU
temp.submenu {
	special = directory
	special.value = 169
	1 = TMENU
	1 {
		NO = 1
		NO {	
			linkWrap = |
			doNotShowLink = 1		
			before.cObject = TEXT			
			before.cObject {
				field = title
				dataWrap = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1,content2')" class="submenu">|			
				dataWrap.override = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1')" class="submenu">|	
				dataWrap.override.if.isFalse.field = subtitle
				
				}						
			after.cObject = TEXT
			after.cObject.wrap = |</a></li>
		}
	}
}

Funzt aber auch nicht richtig, es wird immer der erste dataWrap angezeigt. Hat denn niemand eine Idee???

Sola0815 ·

Für alle die es interessiert, so habe ich es letztendlich hinbekommen:

temp.submenu = HMENU
temp.submenu {
	special = directory
	special.value = 169
	1 = TMENU
	1 {
		NO = 1
		NO {	
			linkWrap = |
			doNotShowLink = 1		
			before.cObject = COA			
			before.cObject {
				10 = TEXT
				10.if.isTrue.field = subtitle
				10.field = title
				10.dataWrap = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1,content2')" class="submenu">|			
				20 = TEXT
				20.if.isFalse.field = subtitle
				20.field = title
				20.dataWrap = <li style="display:inline; margin-left:20px;"><a href="javascript:setRequest('index.php?id={field:uid}&L={GPvar:L}','content1')" class="submenu">|			
  				}
						
			after.cObject = TEXT
			after.cObject.wrap = |</a></li>
		}
	}
}