$(document).ready(function(){
	//nedcon zip ranges
	$(".ZipRanges").each(function(){
		var i = 0;
		$(".Ranges").each(function(){
			i++;
		});
		
		var Parent = $(this);
		var RangeElement = "<span class='Ranges'><input type='text' name='From' class='form countthis'> tot <input type='text' name='Till' class='form'></span>";
		var Counter = "<input type='hidden' class='AmountOfZips' name='AmountOfZips' value='" + i + "' />";		 
		
		$(this).find("input").keyup(function(){			
			if($(this).val() != "")
            {
            	var Regex = new RegExp(/^\d*[0-9]?$/);         
				if(Regex.exec($(this).val()) == null)
                {                                    
                	$(this).val($(this).val().substr(0, $(this).val().length - 1));
                }
        	}
		});
		
		$(this).prepend(Counter);
		
		var i = 1;
		$(this).find(".add").click(function(){
			$(Parent).append(RangeElement);
			$(Parent).children(".Ranges").each(function(){
				$(this).children("input").each(function(){			
					switch($(this).attr("name"))
					{
						case "From":
							{
								$(this).attr({
									name: "ZipFrom" + i
								});
								break;
							}
						case "Till":
							{
								$(this).attr({
									name: "ZipTill" + i
								});
								break;
							}
					}
				});
				$(Parent).children(".AmountOfZips").val(i);				
				i++;
			});			
			i = 1;
		});
		
		$(this).find(".remove").click(function(){
			if($(Parent).find(".Ranges:last").is(".Element0"))
			{
				alert("U kunt de laatste range niet verwijderen.");
			}
			else
			{
				if(confirm("Weet u zeker dat u deze range wilt verwijderen?"))
				{
					$(Parent).children(".AmountOfZips").val(i);
					$(Parent).find(".Ranges:last").remove();
					
					$(Parent).children(".Ranges").each(function(){
						$(Parent).children(".AmountOfZips").val(i);				
						i++;
					});
					i = 1;
				}
			}
		});
	});
	
	//dealer search
	$(".dealerform").each(function(){
		$(this).find(".SearchTypes").hide();
		$(this).find(".SearchOptions").hide();
		
		var ZipLabel = $(this).find("input[name='BabelZip']").val();
		var SearchLabel = $(this).find("input[name='BabelSearch']").val();
		var ProvinceLabel = $(this).find("input[name='BabelProvince']").val();
		
		var ZipInput = "<div class='Row'>";
		ZipInput += "<label for='zip'>" + ZipLabel + "</label>";
		ZipInput += "<span><input class='input xl' type='text' name='zip' /></span>";
		ZipInput += "</div>";
		
		var Provs = "<div class='Row'>";
		Provs += "<label for='province'>" + ProvinceLabel + "</label>";
		Provs += "<span class='ProvinceList'></span>";
		Provs += "</div>";
		
		var Submit = "<div class='Row'>";
        Submit += "<label><input type='submit' class='zipbutton' value='" + SearchLabel + " &raquo;' /></label>";
        Submit += "</div>";
		
		var Parent = $(this);
		
		$(this).find("select, input").click(function(){
			switch($(this).attr("name"))
			{
				case "country":
					{
						$(Parent).find(".SearchTypes").fadeIn(300);						
						break;
					}
				case "type":
					{
						$(Parent).find(".SearchOptions").fadeIn(300);
						
						switch($(this).val())
						{
							case "zip":
								{
									$(Parent).find(".SearchOptions").html(ZipInput + Submit);
									break;
								}
							case "province":
								{
									$(Parent).find(".SearchOptions").html(Provs + Submit);
									$(".ProvinceList").load("/AjaxEngine.asp", {'action': 'GenerateProvinceList', 'countryID': $(Parent).find("#country").val()});
									break;
								}
							default:
							case "all":
								{
									$(Parent).find(".SearchOptions").html(Submit);
									break;
								}
						}
						break;
					}
			}
		});
	});
	
	//formcontrol
	$("form.contactform").each(function(){		
		var parent = $(this);

		$(parent).find("input[name=filled]").val("false");
		$(this).find("input").click(function(){
			$(parent).find("input[name=filled]").val("true");
		});
	});
});
