Zum Inhalt springen

Sprachumschaltung - Select-Box

Erstellt am 10. Dezember 2008 · Noch keine Antworten

Tags: Frage

ristic ·

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