//window.onload=getModels();
//window.onload=getTypes();


//----------------------------------------------------------------------------------------------------------------------------------------------------------
function getModels(myModel){
	var objForm=document.forms.auto;
	var strBrandID=objForm.brandID.value;
	var strBuiltMonth=objForm.builtMonth.value;
	var strBuiltYear=objForm.builtYear.value;
	
	if (!myModel) {
		var mySelectedModel = 0;
	} else {
		mySelectedModel = myModel;
	};
	
	if((strBrandID=='')||(strBuiltMonth=='')||(strBuiltYear=='')){
		return;
	}
	
	// strBuiltMonth && strBuiltYear in session scope
	$.post("remote/sessionStore.cfm", { name: "session.input.auto.builtMonth", value: strBuiltMonth } );
	$.post("remote/sessionStore.cfm", { name: "session.input.auto.builtYear", value: strBuiltYear } );
	
	objForm.modelID.options.length=0;
	objForm.modelID.options[0]=new Option('Modellen worden opgehaald'+String.fromCharCode(8230),'');
	var strURL='/autoverzekering/remote/modellen.cfm';
	strURL+='?brandID='+strBrandID+'&builtMonth='+strBuiltMonth+'&builtYear='+strBuiltYear;
	$.ajax({
		url: strURL,
		success: function(data){
			var myArray = data.split("\n");
			var options = '<option value=""></option>';

			if (data == '') {
				resetForBrand();
				var strMsg='Voor de door u geselecteerde combinatie van merk en bouwmaand zijn geen modellen beschikbaar.\n';
				strMsg+='Probeer het eventueel nogmaals met een andere bouwmaand.';
				return(alert(strMsg));
			}	
			for (var i = 0; i < myArray.length; i++) {
				myValue = myArray[i].split("|");
				if(myValue != "\r"){
				if (myModel == myValue[0]) {
					options += '<option value="' + myValue[0] + '" selected="selected">' + myValue[1] + '</option>';
					mySelectedModel = i + 1;
				} else {
					options += '<option value="' + myValue[0] + '">' + myValue[1] + '</option>';
				}
				}
			}
			$("#modelID").html(options);
			$('#modelID option:eq(parseInt(mySelectedModel))').attr('selected', 'selected');
		
			//valideer de velden 
			$("#brandID").siblings(".av_field_valid").children("img").attr('src','/images/auto/av-valid.gif');
			$("#brandID").siblings(".av_field_valid").show();
			$("#builtYear_3").siblings(".av_field_valid").children("img").attr('src','/images/auto/av-valid.gif');
			$("#builtYear_3").siblings(".av_field_valid").show();
		}
	});
	//setModels(myArray,0);
	//frames.remote_model.location.href=strURL;
}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
function setModels(rsModels,intSelectedID){
	if(!rsModels.ID.length){
		resetForBrand();
		var strMsg='Voor de door u geselecteerde combinatie van merk en bouwmaand zijn geen modellen beschikbaar.\n';
		strMsg+='Probeer het eventueel nogmaals met een andere bouwmaand.';
		return(alert(strMsg));
	}

	var objModelID=document.forms.auto.modelID;
	objModelID.options.length=0;
	objModelID.options[0]=new Option('','');
	for(i=0; i<rsModels.ID.length; i++){
		var blnSelected=(rsModels.ID[i]==intSelectedID);
		objModelID.options[i+1]=new Option(rsModels.name[i],rsModels.ID[i],null,blnSelected);
	}
}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
function resetForBrand(){
	$("input[name=valueAudio]").val('0');
	$("input[name=valueExtra_original]").val('0');
	var objForm=document.forms.auto;
	objForm.builtMonth.selectedIndex=0;
	$.post("remote/sessionStore.cfm", { name: "session.input.auto.builtMonth", value: '' } );
	objForm.builtYear.selectedIndex=0;
	$.post("remote/sessionStore.cfm", { name: "session.input.auto.builtYear", value: '' } );
	objForm.modelID.options.length=0;
	$.post("remote/sessionStore.cfm", { name: "session.input.auto.modelID", value: '' } );
	objForm.modelID.options[0]=new Option('Kies eerst merk en bouwmaand','');
	var strURL='/autoverzekering/remote/types_newdesign.cfm';
	$("#autogegevens").show();
	$("#autoType").load(strURL).show();
	setNameBrand();
	$("#brandID").siblings(".av_field_valid").children("img").attr('src','/images/auto/av-valid.gif');
	$("#brandID").siblings(".av_field_valid").show();
	$("#builtYear_3").siblings(".av_field_valid").hide();
	$("#modelID").siblings(".av_field_valid").hide();
}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
function setNameBrand(){
	var objForm=document.forms.auto;
	var intIndex=objForm.brandID.selectedIndex;
	objForm.nameBrand.value=objForm.brandID.options[intIndex].text;
	$.post("remote/sessionStore.cfm", { name: "session.input.auto.brandID", value: objForm.brandID.options[intIndex].value } );
}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
function setNameModel(intID){
	if(intID==-1){return(getModels());}
	var objForm=document.forms.auto;
	var intIndex=objForm.modelID.selectedIndex;
	objForm.nameModel.value=objForm.modelID.options[intIndex].text;
	$.post("remote/sessionStore.cfm", { name: "session.input.auto.modelID", value: objForm.modelID.options[intIndex].value } );
}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
function getTypes(myModelID){
	var objForm=document.forms.auto;
	var builtMonth=objForm.builtMonth.value;
	var builtYear=objForm.builtYear.value;
	if (myModelID != null) {
		var modelID = myModelID;
	} else {	
		var modelID = $("#modelID").val();
	}
	var fuelID=objForm.fuelID.value;
	var gearID=objForm.gearID[0].value;
	var typeID=objForm.typeID.value;
	var strURL='/autoverzekering/remote/types_newdesign.cfm';

	if(builtMonth.length && builtYear.length && modelID.length && $("#fuelID.av_select").length && gearID.length){

		$("input[name=fuelID]").val('');
		$("input[name=fuelID]").val($("#fuelID.av_select").val());
		$.post("remote/sessionStore.cfm", { name: "session.input.auto.fuelID", value: ( $("input[name=fuelID]").val($("#fuelID.av_select").val()) ) } );

		if(!objForm.gearID[0].checked){
			gearID=objForm.gearID[1].value;
		}
		strURL+='?builtMonth='+builtMonth+'&builtYear='+builtYear+'&modelID='+modelID;
		strURL+='&fuelID='+$("#fuelID.av_select").val()+'&gearID='+gearID+'&typeID='+typeID;

		$("#autoType").html("Auto informatie wordt opgehaald. Een moment geduld aub...").load(strURL);

		$("#modelID").siblings(".av_field_valid").children("img").attr('src','/images/auto/av-valid.gif');
		$("#modelID").siblings(".av_field_valid").show();
	}
	
	//GetCarInfoKon(strURL);
}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
function IsNumeric(sText) {
	   var ValidChars = "0123456789";
	   var IsNumber=true;
	   var Char;	 
	   for (i = 0; i < sText.length && IsNumber == true; i++) 
	      { 
	      Char = sText.charAt(i); 
	      if (ValidChars.indexOf(Char) == -1) 
	         {
	         IsNumber = false;
	         }
	      }
	   return IsNumber;	   
	 }
//----------------------------------------------------------------------------------------------------------------------------------------------------------
	 	 
	function setCharAt(str,index,char) {
		if(index > str.length-1) return str;
		return str.substr(0,index) + char + str.substr(index);
	}	
//----------------------------------------------------------------------------------------------------------------------------------------------------------

function hasKenteken(hasKen){
	var gk=document.getElementById('autogegevensTab');
	if(hasKen){
		// gk.style.display='none';
		$("div.kenteken").removeClass('disabled');
		$("input[name=kenteken]").removeAttr("readonly");
	}else{
		gk.style.display='block';
		$("div.kenteken").removeClass('disabled');
		$("#car-info-wrapper,div#wijzig-kenteken").hide();
		$("input[name=kenteken]").val("");
		$("#brandID").val(0);
		$("select[name=builtMonth]").val(0);
		$("select[name=builtYear]").val("0");
		$("select[name=modelID]").val(0);
		$("select[name=fuelID]").val(1);		
		$("input[label=gearID1]").attr("checked","checked");
		$("input[label=grijsReg1]").attr("checked","checked");
		// frames.remote_type.location.href='/autoverzekering/vergelijken/remote/types_newdesign.cfm';
	}

}
//----------------------------------------------------------------------------------------------------------------------------------------------------------	
function toUpperCase(thisF){
	thisF.value=thisF.value.toUpperCase();
}	
	function kentekenFormat_hold(kenteken) {	
		
		if( kenteken.length == 6 && kenteken.indexOf('-') == -1)
		{
			if(!IsNumeric(kenteken.substring(5,6)) || IsNumeric(kenteken.substring(4,6)) )
			{
				document.auto.kenteken.value = setCharAt(kenteken,2,'-');
				document.auto.kenteken.value = setCharAt(document.auto.kenteken.value,5,'-');
			}else if ( !IsNumeric(kenteken.substring(3,5)) && IsNumeric(kenteken.substring(5,6)) )
			{
				document.auto.kenteken.value = setCharAt(kenteken,2,'-');
				document.auto.kenteken.value = setCharAt(document.auto.kenteken.value,6,'-');
			}
		}	
			 	
	}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
	function kentekenFormat(kenteken) {	
		
		var strKenteken = kenteken.replace(/[^0-9a-zA-Z]/g, "");
		if( strKenteken.length >= 6 && strKenteken.indexOf('-') == -1 && strKenteken.length != 8)
		{
			if(!IsNumeric(strKenteken.substring(5,6)) || IsNumeric(strKenteken.substring(4,6)) )
			{
				strKenteken = setCharAt(strKenteken,2,'-');
				strKenteken = setCharAt(strKenteken,5,'-');
			}else if ( !IsNumeric(strKenteken.substring(3,5)) && IsNumeric(strKenteken.substring(5,6)) )
			{
				strKenteken = setCharAt(strKenteken,2,'-');
				strKenteken = setCharAt(strKenteken,6,'-');
			}
			document.auto.kenteken.value = strKenteken;
			// disable  (make readonly) the input field and show "wijzig" button
			$("div#wijzig-kenteken").show();
			$("div.kenteken").addClass('disabled');	
			$("input[name=kenteken]").attr({readonly: 'true'});
		}	
	}

	
	function wijzigKenteken(){
		// re-enable the input field, remove 'readonly', clear, hide 'wijzig' and start again
		$("div.kenteken").removeClass('disabled');
		$("input[name=kenteken]").removeAttr("readonly");
		$("input[name=kenteken]").val('');
		$("div#wijzig-kenteken").hide();
		$("#car-info-wrapper").hide(); 		 
	}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
