$(document).ready(function() {
	var codes = new Array(4);
  // ---- Календарь -----
	$(function(){
	  $.datepicker.setDefaults(
			$.extend($.datepicker.regional["ru"])
	  );
	  $("#datepicker").datepicker({
		dateFormat:"dd.mm.yy",
		firstDay:1,
		yearRange:"1900:2009",
		changeMonth:true,
		changeYear:true
	  });
	});
  
  // ---- -----
 
	$("#button").click(function (){
		//-----Для яндекса доп. данные
		
		if($("#CustName").length){$("#CustName").attr("value",$("#lastname").attr("value")+" "+$("#firstname").attr("value")+" "+$("#middlename").attr("value"))};
		if($("#CustAddr").length){
			$("#CustAddr").attr("value",
			$("#index").attr("value")+", "+
			$("#country").attr("value")+", "+
			$("#region").attr("value")+", "+
			$("#area").attr("value")+", "+
			$("#settlement").attr("value")+", "+
			$("#street").attr("value")+", д."+
			$("#house").attr("value")+", корп."+
			$("#corp").attr("value")+", кв."+
			$("#apartment").attr("value"))};
		if($("#CustEMail").length){$("#CustEMail").attr("value",$("#email").attr("value"))};
		//--------Сумма--------
		var amount=0;
		var cur=2;
		if($("#amount").length){amount=$("#amount").attr("value")}
		else{amount=$("input[name=amount]:checked").val()};	
		//-----Проверка заполнения--------
		var errList = "";
		if ($("#lastname").attr("value")==""){errList=errList+"Требуется Фамилия.\n"};
		if ($("#firstname").attr("value")==""){errList=errList+"Требуется имя.\n"};
		var validationstr=/[0-9]/;
		if (!validationstr.test($("#phone2").attr("value"))){errList=errList+"Неверный телефон.\n"};
		var validationstr=/[0-9a-z_]+@[0-9a-z_^.]+.[a-z]{2,3}/i;
		if (!validationstr.test($("#email").attr("value"))){errList=errList+"Неверный e-mail.\n"};
		if (amount==0){errList=errList+"Укажите сумму.\n"};
		if (errList!=""){alert(errList)}
		else{ //---Если без ошибок, то отправляем
			if($("#currency").length){cur=$("#currency").attr("value")};
			$.get('https://join.greenpeace.ru/kladr/save_inf.php',
				{"code":$("#secCode").attr("value"),
				 "lastname":$("#lastname").attr("value"),
				 "firstname":$("#firstname").attr("value"),
				 "middlename":$("#middlename").attr("value"),
				 "bd1":$("#datepicker").attr("value"),
				 "phone1":$("#phone1").attr("value"),
				 "phone2":$("#phone2").attr("value"),
				 "email":$("#email").attr("value"),
				 "maild":$("#maild").attr("checked"),
				 "smsd":$("#smsd").attr("checked"),
				 "zip":$("#index").attr("value"),
				 "country":$("#country").attr("value"),
				 "state":$("#region").attr("value"),
				 "area":$("#area").attr("value"),
				 "city":$("#settlement").attr("value"),
				 "street":$("#street").attr("value"),
				 "house":$("#house").attr("value"),
				 "corp":$("#corp").attr("value"),
				 "apartment":$("#apartment").attr("value"),
				 "page":document.location.href,
				 "amount":amount,
				 "cur":cur
				},
				function(data){
					if(data=='ok'){$("#form1").submit()}else{alert(data)};
				});		
		};
	});	
	//---- выбор радиокнопками
	if($("#2000r").length){$("#2000r").click(function() {$("#amount").attr("value",2000); $("#currency")[0].options[1].selected=true})};
	if($("#1000r").length){$("#1000r").click(function() {$("#amount").attr("value",1000); $("#currency")[0].options[1].selected=true})};
	if($("#500r").length){$("#500r").click(function() {$("#amount").attr("value",500); $("#currency")[0].options[1].selected=true})};
	if($("#300r").length){$("#300r").click(function() {$("#amount").attr("value",300); $("#currency")[0].options[1].selected=true})};


	$("#amount").keyup(function (){
		if($("#2000r").length){$("#2000r")[0].checked=false};
		if($("#1000r").length){$("#1000r")[0].checked=false};
		if($("#500r").length){$("#500r")[0].checked=false};
		if($("#300r").length){$("#300r")[0].checked=false}
	});
	
	//==== АВТОЗАПОЛНЕНИЕ=====
	$("#region").attr("disabled","true");
	$("#area").attr("disabled","true");
	$("#settlement").attr("disabled","true");
	$("#street").attr("disabled","true");
	$("#region").attr("value","Выберите страну.");
	
	
	function findValueCallback(event, data, formatted) {
		$("<li>").html( !data ? "No match!" : "Selected: " + formatted).appendTo("#result");
	}
	
	function formatItem(row) {
		return row[0] + " (<strong>id: " + row[1] + "</strong>)";
	}
	function formatResult(row) {
		return row[0].replace(/(<.+?>)/gi, '');
	}
	
	$("#country").autocomplete(countries,{
		delay:10,
		minChars: 0,
		max: 25,
		autoFill: true,
		mustMatch: true,
		matchContains: false,
		scrollHeight: 220	
	});

	
	$("#country").unbind("result").result(function(event, data, formatted) {
		if (data){
			if (data[0]=="Россия") {
				$("#region").removeAttr("disabled");
				$("#region").attr("value","");
				$("#region").unbind();
				$("#area").attr("value","Выберите регион.");				
				$("#area").attr("disabled","true");
				$("#area").unbind();
				$("#settlement").attr("value","Выберите регион.");
				$("#settlement").attr("disabled","true");
				$("#settlement").unbind();
				$("#street").attr("disabled","true");
				$("#street").attr("value","");
				$("#region").autocomplete("kladr/kladr.php", {
					cacheLength:10,
					minChars: 0,
					max: 25,
					autoFill: true,
					mustMatch: true,
					matchContains: false,
					scrollHeight: 220,
					extraParams:{t:0}
				});
				
				$("#region").result(function(event, data, formatted) {
					if (data){
					$("#area").attr("value","");
					$("#area").removeAttr("disabled");
					$("#area").unbind();
					$("#settlement").attr("value","");
					$("#settlement").removeAttr("disabled");
					$("#settlement").unbind();
					$("#street").attr("value","");
					$("#street").removeAttr("disabled");
					codes[0]=data[1];		
					$("#area").unbind("autocomplete").autocomplete("kladr/kladr.php", {
						cacheLength:10,
						minChars: 0,
						max: 25,
						autoFill: true,
						mustMatch: true,
						matchContains: false,
						scrollHeight: 220,
						extraParams:{t:1,c:data[1]}
					});	
					$("#settlement").unbind("autocomplete").autocomplete("kladr/kladr.php", {
						cacheLength:10,
						minChars: 0,
						max: 25,
						autoFill: true,
						mustMatch: true,
						matchContains: false,
						scrollHeight: 220,
						extraParams:{t:2,c:data[1]}
					});	

					$("#settlement").unbind("result").result(function(event, data, formatted) {
						if (data){
						if (data[2]!=""){$("#index").attr("value",data[2])}
						$("#street").attr("value","");
						$("#street").removeAttr("disabled");
						$("#street").unbind().autocomplete("kladr/kladr.php", {
							cacheLength:10,
							minChars: 0,
							max: 25,
							autoFill: true,
							mustMatch: true,
							matchContains: false,
							scrollHeight: 220,
							extraParams:{t:3,c:data[1]}
						});
						$("#street").unbind("result").result(function(event, data, formatted) {
							if (data){ if (data[2]!=""){$("#index").attr("value",data[2])}}});						
						}
					});	
					//-----------------
					$("#street").unbind("autocomplete").autocomplete("kladr/kladr.php", {
						cacheLength:10,
						minChars: 0,
						max: 25,
						autoFill: true,
						mustMatch: true,
						matchContains: false,
						scrollHeight: 220,
						extraParams:{t:3,c:data[1]}
					});
					$("#street").unbind("result").result(function(event, data, formatted) {
						if (data){ if (data[2]!=""){$("#index").attr("value",data[2])}}});						
					
					//-------------------------
					$("#area").unbind("result").result(function(event, data, formatted) {
						if (data){				
							$("#settlement").attr("value","");
							$("#settlement").unbind();
							$("#settlement").unbind("autocomplete").autocomplete("kladr/kladr.php", {
								cacheLength:10,
								minChars: 0,
								max: 25,
								autoFill: true,
								mustMatch: true,
								matchContains: false,
								scrollHeight: 220,
								extraParams:{t:2,c:data[1]}
							});
							$("#settlement").unbind("result").result(function(event, data, formatted) {
								if (data){
									if (data[2]!=""){$("#index").attr("value",data[2])}
									$("#street").attr("value","");
									$("#street").removeAttr("disabled");				
									$("#street").unbind().autocomplete("kladr/kladr.php", {
										cacheLength:10,
										minChars: 0,
										max: 25,
										autoFill: true,
										mustMatch: true,
										matchContains: false,
										scrollHeight: 220,
										extraParams:{t:3,c:data[1]}
									});
									$("#street").unbind("result").result(function(event, data, formatted) {
										if (data){ if (data[2]!=""){$("#index").attr("value",data[2])}}});
								}
							});	
							//-----------------обнуление для городов без района---------------
							$("#settlement").focus(function(){		
								if($("#area").attr("value")==""){
										$("#settlement").unbind();
										$("#settlement").unbind("autocomplete").autocomplete("kladr/kladr.php", {
											cacheLength:10,
											minChars: 0,
											max: 25,
											autoFill: true,
											mustMatch: true,
											matchContains: false,
											scrollHeight: 220,
											extraParams:{t:2,c:codes[0]}
										});	

										$("#settlement").unbind("result").result(function(event, data, formatted) {
											if (data){
											if (data[2]!=""){$("#index").attr("value",data[2])}
											$("#street").attr("value","");
											$("#street").removeAttr("disabled");
											$("#street").unbind().autocomplete("kladr/kladr.php", {
												cacheLength:10,
												minChars: 0,
												max: 25,
												autoFill: true,
												mustMatch: true,
												matchContains: false,
												scrollHeight: 220,
												extraParams:{t:3,c:data[1]}
											});
											$("#street").unbind("result").result(function(event, data, formatted) {
												if (data){ if (data[2]!=""){$("#index").attr("value",data[2])}}});						
											}
										});	
								}
							})							
							//--------------------------------------------------------------------
						}
					});	

					}
				});
			} else {
				$("#region").removeAttr("disabled");
				$("#area").removeAttr("disabled");
				$("#settlement").removeAttr("disabled");
				$("#street").removeAttr("disabled");
				$("#region").attr("value","");				
				$("#area").attr("value","");
				$("#settlement").attr("value","");
				$("#street").attr("value","");
				$("#region").unbind();
				$("#area").unbind();
				$("#settlement").unbind("autocomplete");
				$("#settlement").unbind("result");
				$("#street").unbind();
			}
		}
	});
	
	$("#updateCode").click(function(){$("#codeImage").attr("src", "images/code.php?"+Date())});
	$("#secCode").keyup(function (){
		$.ajax({
			type: 'GET',
			url:'images/check_code.php',
			data:'code='+$("#secCode").attr("value"),
			dataType:'text',
			success:function(data){
				if (data=='ok'){$("#codeResult").attr("innerHTML",'<font size="1" color="green">Код совпадает</font>')} else
				{$("#codeResult").attr("innerHTML",'<font size="1" color="red">Код не совпадает</font>')}
			}
		})
	});
});
