//formatiere auf führende Nullen
function addOptDD(thisDD, optionText, optionValue) {
	if (thisDD) thisDD[thisDD.length]=new Option(optionText, optionValue);
}

function emptyDD(thisDD) {
	if (thisDD){
		var oOptions=thisDD.options;
		for (var i=oOptions.length; i>0; i--) {
			oOptions[i]=null;
		}
		thisDD.selectedIndex=0;
		thisDD.length=1;
	}
}

function setRadio(fobj, fvalue){
	if (fobj){
		if (fobj.length){
			var checkerFound=false;
			for(var i=0;i<fobj.length;i++) {
				if (fobj[i].value==fvalue){
					fobj[i].checked=true;
					checkerFound=true
				}else{
					fobj[i].checked=false;
				}
			}
			if (!checkerFound) fobj[0].checked=true;
		}else{
			fobj.checked=true;
		}
	}
}

function checkRadio(obj) {
	var retVal='';
	if (obj){
		if (obj.length){
			for (var i=0;i<obj.length;i++) {
				if (obj[i].checked==true) {
					retVal=obj[i].value;
					break;
				}
			}
		}else{
			if (obj.checked==true) retVal=obj.value;
		}
	}
	return retVal;
}

function prepSearch(selEngine) {

	var flug1 = document.getElementById('Flug1');
	var flug2 = document.getElementById('Flug2');
	var nurFlug = document.getElementById('nurFlug');
	var formular = document.getElementById('formular');

	var vonS = document.getElementById('vonS');
	var hotelsuche = document.getElementById('hotelsuche');
//	var ThemaS = document.getElementById('ThemaS');
	var verpflegung = document.getElementById('verpflegung');

	var MehrButton = document.getElementById('MehrButton');
	var WenigerButton = document.getElementById('WenigerButton');
	var engine = document.getElementById('engine');

	iniReiseziele(selEngine);

	if (selEngine == 'lami') {
		setStyle(flug1, 'display', 'inline');
		setStyle(flug2, 'display', 'none');
		nurFlug.value=0;
		formular.value=4;

		setStyle(vonS, 'display', 'inline');

		setStyle(hotelsuche, 'display', 'none');
		setStyle(verpflegung, 'display', 'inline');

		setStyle(MehrButton, 'display', 'inline');
		setStyle(WenigerButton, 'display', 'none');

		engine.value='lami';


	} else if (selEngine == 'charter') {
		setStyle(flug1, 'display', 'none');
		setStyle(flug2, 'display', 'inline');
		nurFlug.value=1;
		formular.value=3;

		setStyle(vonS, 'display', 'inline');
		setStyle(hotelsuche, 'display', 'none');
		setStyle(verpflegung, 'display', 'none');

		setStyle(MehrButton, 'display', 'none');
		setStyle(WenigerButton, 'display', 'none');

		engine.value='charter';


	} else if (selEngine == 'pauschal') {
		setStyle(flug1, 'display', 'inline');
		setStyle(flug2, 'display', 'none');

		nurFlug.value=0;
		formular.value=4;

		setStyle(vonS, 'display', 'inline');
		setStyle(hotelsuche, 'display', 'none');
		setStyle(verpflegung, 'display', 'inline');

		setStyle(WenigerButton, 'display', 'none');
		setStyle(MehrButton, 'display', 'inline');

		engine.value='pauschal';

	} else if (selEngine == 'erde' || selEngine=='winter') {
		setStyle(flug1, 'display', 'inline');
		setStyle(flug2, 'display', 'none');
		nurFlug.value=0;
		formular.value=4;

		setStyle(vonS, 'display', 'none');
		setStyle(hotelsuche, 'display', 'none');
		setStyle(verpflegung, 'display', 'inline');
		setStyle(document.getElementById('meer').parentNode, 'display', 'none');

		setStyle(WenigerButton, 'display', 'none');
		setStyle(MehrButton, 'display', 'inline');

		engine.value=selEngine;

	}
}

function checkRegion(presetVal){
	var actFlugdauer=document.getElementById('flugdauer1').value;
	var selObj = document.getElementById('topRegion')

	if (actFlugdauer==''||!selObj) return;
	if (selObj.length<1) return;

	emptyDD(selObj);
	selObj.parentNode.style.display='none';

	//alert(actFlugdauer);

	var AFlugdauer = actFlugdauer.split(',');

	for (var y=0;y<AFlugdauer.length;y++) {
		for (var z=0;z<TTREGS_654.length;z++) {
			var AZiele = TTREGS_654[z].split('|');
			if (AZiele[2]==AFlugdauer[y] && AZiele[3]!=AFlugdauer[y]){
				addOptDD(selObj, AZiele[0], AZiele[3]);
			}
		}
	}

	if(selObj.length>1){
		selObj.parentNode.style.display='block';
		if (presetVal!=''){
			selObj.value=presetVal;
		}else if (selObj.length==2){
			selObj.selectedIndex=1;
		}
	}
}

function sendForm(TextSucheHotel){
	if (document.getElementById('shotel').value == TextSucheHotel) document.getElementById('shotel').value='';
	if (document.getElementById('topRegion')){
		if (document.getElementById('topRegion').value!='') document.getElementById('detail').value='hotel';
	}
	document.schnellsuche.submit();
}

function presetData(theData){

	if(typeof(activeLinkId)=='string'){
		document.getElementById('linkid').value=activeLinkId;
	}

	if (theData=='') return false;
	var topRegion='';
	var DataA = theData.split('&');var setOn=false;
	for(var d=0;d<DataA.length;d++) {
		var inputA = DataA[d].split('=');
		var feld = inputA[0];
		var value = inputA[1];
		if (value!=''){

			value=unescape(value);
			var feldObj = document.getElementById(feld)
			if (feldObj){

				if (feldObj.type=='checkbox'){
					feldObj.checked=true;
				}else if (feldObj.type=='select-one'){
					feldObj.value=value;
				}else if (feldObj.type=='text'){
					feldObj.value=value;
				}else{
					//alert(feld+'='+value+' type:'+feldObj.type);
				}
				if (feld=='topRegion') topRegion=value;
				if(feldObj.parentNode.parentNode.parentNode.id=='hotelsuche'){
					if (!setOn){
						mehrButton();
						setOn=true;
					}
				}
			}else{
				//alert(feld);
			}
		}
	}

	checkRegion(topRegion);

	var shotel = document.getElementById('shotel');
	if (shotel){
		if (shotel.value == '') {
			shotel.value = document.getElementById('TextSucheHotel').value;
		}
	}
}

function mehrButton(){
	var MehrButton = document.getElementById('MehrButton');
	var WenigerButton = document.getElementById('WenigerButton');
	var hotelsuche = document.getElementById('hotelsuche');

	if (MehrButton.style.display == 'none'){
		MehrButton.style.display = 'inline';
		WenigerButton.style.display = 'none';
		hotelsuche.style.display='none';
	}else{
		MehrButton.style.display = 'none';
		WenigerButton.style.display = 'inline';
		hotelsuche.style.display='inline';
	}
}


function iniReiseziele(selEngine) {
	/*---Achtung hier für muss eingebunden sein:
	http://images.traveltainment.de/booking/cache/620036/654/cachefiles_654_js.php?getCacheFiles=1
	http://images.traveltainment.de/booking/cache/620036/653/cachefiles_653_js.php?getCacheFiles=1 (Erde)
	Region|zielgebiets_kenner|Gruppe|topRegion
	var pfad_TTREGS='http://images.traveltainment.de/booking/cache/620036/654/'+cacheFiles_654[1];
	*/

	if (selEngine=='erde'){
		var pfad_TTREGS='http://tcnl.staging2.traveltainment.de/booking_ml/thomascook_nl/erde/js/search/optLaender_653.js';
		var pfad_TTsubREGS='';
		var pfad_TTVAT='http://images.traveltainment.de/booking/cache/620036/653/'+cacheFiles_653[0];
	} else if (selEngine=='winter'){
		var pfad_TTREGS='http://images.traveltainment.de/booking/cache/620036/653/'+cacheFiles_653[1];
		var pfad_TTsubREGS='';
		var pfad_TTVAT='http://images.traveltainment.de/booking/cache/620036/653/'+cacheFiles_653[0];
	}else{
		//var pfad_TTREGS='http://tcnl.staging2.traveltainment.de/booking_ml/thomascook_nl/js/search/optLaender_654.js';
		var pfad_TTREGS='http://images.traveltainment.de/booking/cache/620036/654/'+cacheFiles_654[1];
		var pfad_TTVAT='http://images.traveltainment.de/booking/cache/620036/654/'+cacheFiles_654[0];
		var pfad_TTAFH='http://tcnl.staging2.traveltainment.de/booking_ml/thomascook_nl/js/ttafh_nl.js';
		incFile(pfad_TTAFH);
	}

	incFile(pfad_TTREGS);
	incFile(pfad_TTVAT);

	if (selEngine=='erde' || selEngine=='winter'){
		TTCACHE_Erde(selEngine);
	}else{
		TTCACHE(selEngine);
	}
}

function TTCACHE(selEngine){
	if(typeof(window['TTREGS_654'])=='undefined' || typeof(window['arrMarke_654'])=='undefined' || typeof(window['TTAFH'])=='undefined'){
		window.setTimeout("TTCACHE('"+selEngine+"')",20);
		return;
	}

	emptyDD(document.getElementById('flugdauer1'));
	for (var z=0;z<TTREGS_654.length;z++) {
		var AZiele = TTREGS_654[z].split('|');
		if (AZiele[2]==AZiele[3]){
			addOptDD(document.getElementById('flugdauer1'), AZiele[0], AZiele[1]);
		}
	}
	emptyDD(document.getElementById('abflughafen'));
	for (var z=0;z<TTAFH.length;z++) {
		var AZiele = TTAFH[z].split(';');
		addOptDD(document.getElementById('abflughafen'), AZiele[0], AZiele[1]);
	}

	presetData(document.getElementById('LastData').value)

}

function TTCACHE_Erde(selEngine){

	emptyDD(document.getElementById('flugdauer1'));

	if (selEngine=='winter'){
		if(typeof(window['TTREGS_653'])=='undefined' || typeof(window['arrMarke_653'])=='undefined'){
			window.setTimeout("TTCACHE_Erde('"+selEngine+"')",20);
			return;
		}

		//manuelle Definition der Wintersportorte Name|LandId|RegionsIds
		var countriesWinter = Array('Duitsland|30018|35;118;250;314;318', 'Frankrijk|30004|745;749;220;96;742;284;755;682', 'Italie|30009|277', 'Oostenrijk|30019|266;307;410;409;171;443', 'Tsjechie|368|368','Zwitserland|30020|40;108;258;394;381');

		for (var c=0;c<countriesWinter.length;c++) {
			var countriesA = countriesWinter[c].split('|');
			addOptDD(document.getElementById('flugdauer1'), countriesA[0], countriesA[2]+'|'+countriesA[1]);
			var regionsA = countriesA[2].split(';');
			for (var r=0;r<regionsA.length;r++) {
				for (var z=0;z<TTREGS_653.length;z++) {
					var AZiele = TTREGS_653[z].split('|');
					if (regionsA[r]==AZiele[3]){
						addOptDD(document.getElementById('flugdauer1'), '---'+AZiele[0], countriesA[2]+'|'+ AZiele[3]);
						break;
					}
				}
			}
		}

	}else{

		if(typeof(window['optLaender653'])=='undefined' || typeof(window['arrMarke_653'])=='undefined'){
			window.setTimeout("TTCACHE_Erde('"+selEngine+"')",20);
			return;
		}

		for (var z=0;z<optLaender653.length;z++) {
			var AZiele = optLaender653[z].split(';');
			addOptDD(document.getElementById('flugdauer1'), AZiele[0], AZiele[1]);
		}
	}
	presetData(document.getElementById('LastData').value)
}

function incFile(pfad){
	if (pfad!=''){
		var script = document.createElement('script');
		script.type= "text/javascript";
		script.src = pfad;
		document.getElementsByTagName("head")[0].appendChild(script);
	}
}


