Hallo Leute,
vielleicht könnt ihr mir etwas bei meiner Sprachumschaltung helfen. Sie funktioniert schon ganz gut, würde Sie aber gerne optimieren. Hier mal der Code-Ausschnitt.
temp.languageMenu = COA
temp.languageMenu.wrap = <div class="box">|</div>
temp.languageMenu {
5 = TEXT
5.value (
<script>
<!--
function QuickJump(Formular) {
var Element = Formular.Ziel.selectedIndex;
if (Formular.Ziel.options[Element].value != 0) {
location = Formular.Ziel.options[Element].value;
}
}
//-->
</script>
)
8 = TEXT
8.value = <form action=""><fieldset><select name="Ziel" id="jumpMenu" onchange="QuickJump(this.form);">
10 = TEXT
10.wrap = <option value="/|">Deutschland (Deutsch)</option>
10.typolink.parameter.data = page:alias // TSFE:id
10.typolink.additionalParams.cObject = COA
10.typolink.additionalParams.cObject {
20 = TEXT
20.value = &L=1
30 = TEXT
30.data = GPvar : tx_ttnews | backPid
30.wrap = &tx_ttnews[backPid]=|
30.required = 1
40 = TEXT
40.data = GPvar : tx_ttnews | tt_news
40.wrap = &tx_ttnews[tt_news]=|
40.required = 1
50 = TEXT
50.data = GPvar : cHash
50.wrap = &cHash=|
50.required = 1
}
10.typolink.returnLast = url
20 = TEXT
20.wrap = <option value="/|">International (English)</option>
20.typolink.parameter.data = page:alias // TSFE:id
20.typolink.additionalParams.cObject = COA
20.typolink.additionalParams.cObject {
20 = TEXT
20.value = &L=0
30 = TEXT
30.data = GPvar : tx_ttnews | backPid
30.wrap = &tx_ttnews[backPid]=|
30.required = 1
40 = TEXT
40.data = GPvar : tx_ttnews | tt_news
40.wrap = &tx_ttnews[tt_news]=|
40.required = 1
50 = TEXT
50.data = GPvar : cHash
50.wrap = &cHash=|
50.required = 1
}
20.typolink.returnLast = url
100 = TEXT
100.value = </select></fieldset></form>
}
Derzeit gibt es die Sprache "Deutsch" und "English". Da die aktuelle Sprache immer angezeigt werden soll, gibt es derzeit zwei TS. Was aber mit wachsender Sprachenanzahl natürlich einen erhöhten Pflegeaufwand mit sich bringen wird.
Leider habe ich den Idealfall noch nicht hinbekommen. Würde gerne über Conditions abfragen, welche Sprache gerade verwendet wird und diese dann setzen. So in etwa, was aber nur ein Beispiel sein soll...
temp.languageMenu = COA
temp.languageMenu.wrap = <div class="box">|</div>
temp.languageMenu {
5 = TEXT
5.value (
<script>
<!--
function QuickJump(Formular) {
var Element = Formular.Ziel.selectedIndex;
if (Formular.Ziel.options[Element].value != 0) {
location = Formular.Ziel.options[Element].value;
}
}
//-->
</script>
)
8 = TEXT
8.value = <form action=""><fieldset><select name="Ziel" id="jumpMenu" onchange="QuickJump(this.form);">
10 = TEXT
[Abfrage welche Sprache (Conditions funktionieren hier leider nicht) "selected" setzen, falls gewählt]
10.wrap = <option value="/|">Deutschland (Deutsch)</option>
[Abfrage welche Sprache (Conditions funktionieren hier leider nicht) "selected" setzen, falls gewählt]
20.wrap = <option value="/|">International (English)</option>
[AbfrageEnde]
10.typolink.parameter.data = page:alias // TSFE:id
10.typolink.additionalParams.cObject = COA
10.typolink.additionalParams.cObject {
20 = TEXT
20.value = &L={SprachIDSetzen}
30 = TEXT
30.data = GPvar : tx_ttnews | backPid
30.wrap = &tx_ttnews[backPid]=|
30.required = 1
40 = TEXT
40.data = GPvar : tx_ttnews | tt_news
40.wrap = &tx_ttnews[tt_news]=|
40.required = 1
50 = TEXT
50.data = GPvar : cHash
50.wrap = &cHash=|
50.required = 1
}
10.typolink.returnLast = url
100 = TEXT
100.value = </select></fieldset></form>
}
Viele Grüße