Zum Inhalt springen

If-Abfrage für Sprachwahl

Erstellt am 16. November 2007 · 7 Antworten · letzte Antwort am 17. November 2007

Tags: Frage

liquidblue ·

Hallo liebes Forum,

nach meinen ersten gehversuchen habe ich dank euerer hilfe meine erste if-abfrage auch hinbekommen und nun hänge ich an der zweiten fest.

mein problem: ich möchte bei bestimmten Seiten die in der rechten spalte keinen ihhalt haben einen standardinhalt einblenden. das kappt soweit ganz gut bis ich die sprachwahl dazugenommen habe.

wo liegt der #angry# fehler in meinem lösungsansatz?

temp.standardcontent_right = RECORDS
temp.standardcontent_right {
		tables = tt_content
		10.if.value = 0
		10.if.isTrue.data = languageField
		10.source = 8, 4
		20.if.value = 1
		20.if.isTrue.data = languageField
		20.source = 9, 5
		dontCheckPid = 1
	}
liquidblue ·

Hallo Wunschtacho,

vielen dank für die schnelle Antwort! Wenn ich das Richtig sehe dann müsste ich das ganze ja wie folgt löse.

Leider funktioniert das noch nicht

#Englisch Grundeinstellung Sprachwahl
[globalVar = GP:L=1]
		config.sys_language_uid = 1
		config.language = uk
		config.sys_language_mode = content_fallback;0,1
		seite.10.marks.SPRACHE.wrap = <a href="index.php?id=|&L=0"></a>
	   	temp.standardcontent_right.source = 30, 4
	   #seite.10.marks.DRUCKVERSION.wrap = <a href="index.php?id=|&L=1&type=1" target="”_new”">Print</a> 
[global]

# Inhalt rechte Spalte einblenden wenn kein Content auf der Seite hinterlegt wird
temp.standardcontent_right = RECORDS
temp.standardcontent_right {
		tables = tt_content
		source = 8, 4
		dontCheckPid = 1
	}

leider funktioniert dieser Ansatz noch nicht ganz. mit Global VAR könnte ich doch dann einfach die zeile 15 überschhreiben wenn GP:L=1

über eine ausführlichere Hilfestellung wäre ich sehr dankar

liquidblue ·

jo, vielen Dank hab zwischenzeitlich doch noch den wald zwischen den ganzen bäumen gefunden :o und wie folgt gelöst:

#Deutsche Grundeinstellung Sprachwahl
[globalVar = GP:L=0]
temp.standardcontent_right.source = 8, 4
[global]

#Englisch Grundeinstellung Sprachwahl
[globalVar = GP:L=1]
		config.sys_language_uid = 1
		config.language = uk
		config.sys_language_mode = content_fallback;0,1
		seite.10.marks.SPRACHE.wrap = <a href="index.php?id=|&L=0"></a>
	   	temp.standardcontent_right.source = 30, 4
	   #seite.10.marks.DRUCKVERSION.wrap = <a href="index.php?id=|&L=1&type=1" target="”_new”">Print</a> 
[global]

temp.standardcontent_right = RECORDS
temp.standardcontent_right {
		tables = tt_content
		10.if.value = 1
        10.if.isTrue.data = GPvar:L
		10.source = 30, 4
		20.if.value = 2
		20.if.isTrue.data = GPvar:L
		20.source = 30, 4}

Irgendwie lässt mir der Eindruck nicht los dass ich es nun doppelt gemoppelt habe :o - aber es fuktioniert

just2b ·

doppelt gemoppelt auf jedenfall 😉

warum nicht so:

temp.standardcontent_right = RECORDS
temp.standardcontent_right {
source = 1. wert
}

[globalVar = GP:L=1]
temp.standardcontent_right.source = 2.wert
[global]

ArminB ·

moin,

da ich kein Fan von übermässig vielen condition bin und es auch nicht so übersichtlich finden alles in eine condtion zu schreiben würde ich einfach eine CASE einsetzen:

source.cObject {
    key.data = GPvar:L

    default = TEXT
    default.value = 1615

    1 = TEXT
    1.value = 1621
  }

Wichtig ist halt, das bereits mit eine condition vorhanden ist oder die Seite nicht gecached wird.

Armin