ajax=[];
rutaxi_time_timer1=null;
rutaxi_time_timer2=null;
rutaxi_time_timer3=null;
function rutaxi_order_form()
{
	fMess('Пожалуйста, подождите...',1);
	fLive();
	fRutaxi_resp(0);
}
function rutaxi_order_form_main_sait(resp)
{
	fLive();
	fMess('Идет загрузка...',1);
	fForm(resp, 1);
	fMess('Пожалуйста, подождите...',0);
}
function fRutaxi_resp(t)
{
	$.ajax({
		type: "POST",
		async: true,
		cache: false,
		url: "a/"+$("#taxi_online_script_name").val()+".html",
		data: "b=269&sess="+$("#rutaxi_sess").val()+"&a=form&from="+$("#rutaxi_order").attr("from")+(t==1?"&ao=1":""),
		dataType: "text",
		success: function (resp){fForm(resp);fMess('',0);},
		error:  function(xhr, str){fMess('',0);alert('Возникла ошибка: ' + xhr.responseCode+ ' ! ' + str);}
	});
}
function fLive()
{
	$("select.df").live("click", function () {//alert(1);
		$("#str"+$(this).attr("id").substr(2)).val($("#"+$(this).attr("id")+" option:selected").text());
		$(this).slideUp(100, function () {
			var q=$(this).val().split("|");
			if (q[1] == "3")
			{
				$("#strh"+$(this).attr("id").substr(2)).removeAttr("disabled");
				$("#stre"+$(this).attr("id").substr(2)).removeAttr("disabled");
			}
			else
			{
				$("#strh"+$(this).attr("id").substr(2)).attr("disabled", "");
				$("#stre"+$(this).attr("id").substr(2)).attr("disabled", "");
			}
			if (q[1] == "1" && $(this).attr("id") == $("#str_block_body select.df:first").attr("id"))
			{
				$("#ocomment").val($("#myo_body").find("input.idmyo[value="+q[0]+"]").parent().parent().find("input.myocomm").val());
			}
			$("#strh"+$(this).attr("id").substr(2)).focus();
		});
	});
	$("select.df").live("keyup", function (e) {
		if (e.keyCode == 13)
		{
			$(this).click();
		}
	});
	$("input.str_obj").live("keyup", function (e) {//alert(String.fromCharCode(e.keyCode));
		if (e.keyCode == 40)
		{
			$("#ss"+$(this).attr("id").substr(3)+" :nth-child(2)").attr("selected", "selected");
			$("#ss"+$(this).attr("id").substr(3)).focus();
		}
		else if (e.keyCode == 13)
		{
			$("#ss"+$(this).attr("id").substr(3)+" :selected").click();
		}
		else
		{
			if (String.fromCharCode(e.keyCode).search(/[0-9a-zа-я ]+/i) >= 0)
			{
				searchObjs(this);
			}
		}
	});
	$("input.str_obj").live("focus", function () {//alert(1);
		$("#ss"+$(this).attr("id").substr(3)).slideDown(300);
		if ($("#ss"+$(this).attr("id").substr(3)).html() == '')
		{
			searchObjs(this);
		}
		$(this).select();
	});
	$("input.bp").live("click", function () {
		var c=[["table.str_block", true, "str_block_body"],
			["table.myo", false, "myo_body"]];
		if ($(this).parent().attr("id").substr(0,6)=='tdpmyo') { var t=1; } else { var t=0; }
		var q = $(c[t][0]+" input[class=str_obj]").get();
		if (!c[t][1] || q.length < 10)
		{
			$("#"+c[t][2]).append(fStrF(t,'','','',''));
			fUpdBtn(t);
		}
	});
	$("input.bm").live("click", function () {
		if ($(this).parent().is("div")) { var t=1; } else { var t=0; }
		if (t == 1)
		{
			if ($(this).parent().parent().parent().contents().find("input.idmyo").val() != '0')
			{
				var id1=$(this).parent().parent().attr("id").substr(6);
				var id2=$(this).parent().parent().parent().contents().find("input.idmyo").val();
				fOrdHint("hobmmyo"+id1,1);
				$.ajax({
					type: "POST",
					async: true,
					cache: false,
					url: "a/"+$("#taxi_online_script_name").val()+".html",
					data: "b=269&sess="+$("#rutaxi_sess").val()+"&t=delmyo&id1="+id1+"&id2="+id2,
					dataType: "text",
					success: function (resp){//alert(1);
						var q=resp.split("z|z");
						fOrdHint("hobmmyo"+q[4],0);
						if (q[0] == '0')
						{
							$("#strmyo"+q[4]).parent().parent().remove();
							fCheckEmtyMyObj(1);
							fUpdBtn(t);
						}
					},
					error:  function(xhr, str){fOrdHint("hobmmyo"+id1,0);}
				});
			}
			else
				$(this).parent().parent().parent().remove();
		}
		else $(this).parent().parent().remove();
		fCheckEmtyMyObj(t);//alert(t);
		fUpdBtn(t);
	});
	$("div.dop1, div.doc1, div.dop2, div.doc2").live("click", function () {
		var p=$(this).attr("class").substr(3);
		if ($(this).attr("class") == 'dop'+p)
		{
			$("#dopn"+$(this).attr("id").substr(3)).slideUp(200);
			$(this).attr("class", 'doc'+p);
		}
		else
		{
			$("#dopn"+$(this).attr("id").substr(3)).slideDown(300);
			$(this).attr("class", 'dop'+p);
		}
	});
	$("div.dtm input").live("blur", function () {
		fCorrectDate();
		//$(this).attr("type", "text");
		$(this).attr("class", "dtm"+(($(this).attr("id").substr(5) == 'y') ? "4" : "2" ));
	});
	$("div.dtm input").live("focus", function () {
		//$(this).attr("type", "number");
		$(this).attr("class", "dtm");
	});
	$("div.dtm input").live("keyup", function (e) {
		/*var pattern = /^(((0[1-9]{1})|[12]{1}[0-9]{1})|(3[01]{1})).((0[1-9]{1})|(1)[0-2]{1}).201[1-9]{1} (([01]{1}[0-9]{1})|(2[0-3]{1})):(([0-5]{1}[0-9]{1})|60)$/;
		if (!pattern.test($("#predvd").val()+"."+$("#predvm").val()+"."+$("#predvy").val()+" "+$("#predvh").val()+":"+$("#predvi").val()))
		{*/
		if (e.keyCode == 13 || $(this).val().length == $(this).attr("maxlength"))
		{
			var j=0;
			var q=$("div.dtm input").get();
			for (var i=0; i<q.length; i++)
			{
				if (j == 1)
				{
					j = i;
					break;
				}
				if ($(this).attr("id") == $(q[i]).attr("id") && i < q.length-1)
				{
					j=1;
				}
			}
			setTimeout("$(\"#"+$(q[j]).attr("id")+"\").focus();$(\"#"+$(q[j]).attr("id")+"\").select();", 100);
			return false;
		}
	});
	$("#calend td").live("click", function () {
		if ($(this).attr("class") && ($(this).attr("class") == 's' || $(this).attr("class") == 'cs'))
		{
			$("#predvd").val($(this).html());
			$("#calend").slideUp(200);
			fCorrectDate();
		}
	});
	$("table.ol a.retry").live("click", function () {
		var id=$(this).attr("class").substr(6);
		fOrdHint("ret"+id,1);
		$.ajax({
			type: "POST",
			async: true,
			cache: false,
			url: "a/"+$("#taxi_online_script_name").val()+".html",
			data: "b=269&sess="+$("#rutaxi_sess").val()+"&t=retry&id="+id,
			dataType: "text",
			success: function (resp){//alert(1);
				var q=resp.split("z|z");
				$("#menu1").click();
				var w=q[3].split("|q");

				if (w[0] == '1')
				{
					$("#ohour").attr("checked", true);//alert(45);
				}
				else
				{
					$("#ohour").removeAttr("checked");//alert(2);
				}
				//$("#ohour").click();

				//$("tr.dstr").get().remove();
				//alert(w[1]);
				var w2=w[1].split("|w");
				$("#str_block_body").empty();
				for (var i=0; i<w2.length; i++)
				{
					var w3=w2[i].split("|");
					if (i <= 1)
					{
						fStrTit(i);
					}
					$("#str_block_body").append(fStrF(0,w3[2],'<option value="'+w3[1]+'|'+w3[0]+'" selected>'+w3[2]+'</option>',w3[3], ((i < 1) ? w3[4] : '')));
					$("table.str_block select.df:last").click();
				}
				fUpdBtn(0);
				$("#ocomment").val(w[2]);
				fOhour($("#ohour"));
				fOrdHint("ret"+id,0);
			},
			error:  function(xhr, str){fOrdHint("ret"+id,0);}
		});
	});
	$("table.ol a.del").live("click", function () {
		if (confirm('Ваш заказ будет отменен и удален. Отменить и удалить выбранный заказ?'))
		{
			var id=$(this).attr("class").substr(4);
			fOrdHint("del"+id,1);
			$.ajax({
				type: "POST",
				async: true,
				cache: false,
				url: "a/"+$("#taxi_online_script_name").val()+".html",
				data: "b=269&sess="+$("#rutaxi_sess").val()+"&t=del&id="+id,
				dataType: "text",
				success: function (resp){
					fOrdHint("del"+id,0);
					var q=resp.split("z|z");
					if (q[0] == 1)
					{
						$("#rutaxi_cont2").html(q[3]);
						$("#anymore1").html(q[4]);
						fMess('Информация о заказе была успешно удалена');
					}
					else
					{
						fErr(q[1]);
					}
				},
				error:  function(xhr, str){fOrdHint("del"+id,0);}
			});
		}
	});
	$("table.ol a.cancel").live("click", function () {
		if (confirm('Ваш заказ будет отменен. Отменить выбранный заказ?'))
		{
			var id=$(this).attr("class").substr(7);
			fOrdHint("cancel"+id,1);
			$.ajax({
				type: "POST",
				async: true,
				cache: false,
				url: "a/"+$("#taxi_online_script_name").val()+".html",
				data: "b=269&sess="+$("#rutaxi_sess").val()+"&t=cancel&id="+id,
				dataType: "text",
				success: function (resp){
					fOrdHint("cancel"+id,0);
					var q=resp.split("z|z");
					if (q[0] == 1)
					{
						$("#rutaxi_cont2").html(q[3]);
						$("#anymore1").html(q[4]);
						fMess('Заказ был успешно отменен');
					}
					else
					{
						fErr(q[1]);
					}
				},
				error:  function(xhr, str){fOrdHint("cancel"+id,0);}
			});
		}
	});
	$("#bupds").live("click", function () {
		fHistory(0,0,1);
	});
	$("div.hisleft div a").live("click", function () {
		fHistory(0, $(this).attr("class").substr(8), 2);
	});
	$("img.note_img").live("click", function () {
		$("table.myo div.myocomm").hide();
		$("#prev_comment").val($(this).parent().parent().contents().find("div.myocomm input[type=text]").val());
		$(this).parent().parent().contents().find("div.myocomm").fadeIn(200, function () {$(this).parent().parent().contents().find("div.myocomm input[type=text]").focus(); $(this).parent().parent().contents().find("div.myocomm input[type=text]").select();});
	});
	$("div.myocomm input[type=button]").live("click", function () {
		if ($(this).val().length > 2)
		{
			$(this).parent().parent().contents().filter("input[type=text]").val($("#prev_comment").val());
		}
		$(this).parent().parent().fadeOut(200);
	});
	$("#bsmyo").live("click", function () {
		var r="";
		var err="";
		var q=$("table.myo tr:gt(0)").get();
		var j=1;//alert(q.length);return;
		for (var i in q)
		{//alert(i); alert(q[i]);
			var id=$(q[i]).find("input.myo_obj").attr("id").substr(5);//alert(id);return;
			if (q.length == 1 && $(q[i]).find("input.myo_obj").val() == "" && $(q[i]).find("select option:selected").get().length == 0 && $(q[i]).find("input.str_h").val() == '' && $(q[i]).find("input.str_e").val() == '' && $(q[i]).find("input.myocomm").val() == '') {}
			else
			{
				if ($("#nmmyo"+id).val() == "") { err = "Введите название любимого адреса №"+j+"<br>"; }
				else if ($("#ssmyo"+id+" option:selected").get().length == 0) { err = "Выберите улицу/объект из списка для любимого адреса №"+j+"<br>"; }
				else if ($("#strhmyo"+id+":disabled").get().length == 0 && $("#strhmyo"+id+"").val() == '') { err = "Введите номер дома для любимого адреса №"+j+"<br>"; }
				else if ($("#stremyo"+id+":disabled").get().length == 0 && $("#stremyo"+id).val() == '') { $("#stremyo"+id).val("1"); }
				if (err != "")
				{
					fErr(err);
					break;
				}
				r += "z|z"+$("#nmmyo"+id).val()+"x|x"+$(q[i]).find("input.idmyo").val()+"x|x"+$("#ssmyo"+id).val()+"x|x"+$("#strhmyo"+id+"").val()+"x|x"+$("#stremyo"+id).val()+"x|x"+$(q[i]).find("input.myocomm").val();
			}
			j++;
		}
		if (err == "" && r != "")
		{
			r = r.substr(3);
			fOrdHint("bsmyo",1);
			$.ajax({
				type: "POST",
				async: true,
				cache: false,
				url: "a/"+$("#taxi_online_script_name").val()+".html",
				data: "b=269&sess="+$("#rutaxi_sess").val()+"&t=myo&p="+r,
				dataType: "text",
				success: function (resp){
					var q=resp.split("z|z");
					if (q[0] == '0')
					{
						$("#rutaxi_cont3").html(q[3]);
						fUpdBtn(1);
					}
					fOrdHint("bsmyo",0);
				},
				error:  function(xhr, str){fOrdHint("bsmyo",0);}
			});
		}
	});
	$("table.myo a.afrom").live("click", function () {
		addToForm(this,$("#str_block_body input.str_obj:eq(0)").attr("id").substr(3));
		$("#ocomment").val($(this).parent().parent().find("input.myocomm").val());
	});
	$("table.myo a.ato").live("click", function () {
		var q=$("#str_block_body select.df:gt(0)").get();
		for (var i in q)
		{
			var id=$(q[i]).attr("id").substr(2);
			if (!$(q[i]).val())
			{
				break;
			}
		}
		addToForm(this,id);
	});
	$('a.hint').live('click', function (){
		var id=$(this).attr("id").substr(5);//alert('#hint'+id);
		$('#hintd'+id).fadeIn(500);
	});

	$('img.close').live('click', function (){
		var id=$(this).attr("id").substr(5);//alert('#hint'+id);
		$('#hintd'+id).fadeOut(500);
	});
}
function searchObjs(obj)
{
	if (ajax['str'])
	{
		ajax['str'].abort();
	}
	if ($("#ss"+$(obj).attr("id").substr(3)+" option:nth-child(1)").html() != 'Загрузка улиц... Ждите...')
	{
		$("#ss"+$(obj).attr("id").substr(3)).hide();
		$("#ss"+$(obj).attr("id").substr(3)).empty();
		$("#ss"+$(obj).attr("id").substr(3)).append($('<option>Загрузка улиц... Ждите...</option>'));
		$("#ss"+$(obj).attr("id").substr(3)).slideDown(100);
		$("#ss"+$(obj).attr("id").substr(3)+" :first").attr("selected", true);
	}
	ajax['str'] = $.ajax({
			type: "POST",
			async: true,
			cache: false,
			url: "a/"+$("#taxi_online_script_name").val()+".html",
			data: "b=269&sess="+$("#rutaxi_sess").val()+"&l="+$("#rutaxi_login").val()+"&p="+$("#rutaxi_passw").val()+"&w="+$(obj).val()+"&t=str&n="+$(obj).attr("id").substr(3),
			dataType: "text",
			success: function (resp){
				var q=resp.split("z|z");
				$("#ss"+q[4]).hide();
				$("#ss"+q[4]).empty();
				$("#ss"+q[4]).append($(q[3]));
				$("#ss"+q[4]).slideDown(100);
				$("#ss"+q[4]+" :nth-child(2)").attr("selected", true);
				$("#ss"+q[4]).scrollTop(0);
			}
		});
}
function addToForm(t,i)
{
	if ($(t).parent().parent().find("input.idmyo").val() != "0")
	{
		var id=$(t).parent().parent().find("input.str_obj").attr("id").substr(6);
		var addr="\""+$("#nmmyo"+id).val()+"\" ("+$("#strmyo"+id).val()+($("#strhmyo"+id+":disabled").get().length == 0 ? ", д."+$("#strhmyo"+id).val()+", под."+$("#stremyo"+id).val() : "")+")";
		$("#str"+i).val(addr);
		$("#ss"+i).empty();
		$("#ss"+i).append("<option value=\""+$(t).parent().parent().find("input.idmyo").val()+"|1\" selected>"+addr+"</option>");
		$("#strh"+i).val($("#strhmyo"+id).val());
		$("#strh"+i).attr("disabled", true);
		$("#stre"+i).val($("#stremyo"+id).val());
		$("#stre"+i).attr("disabled", true);
		//$("#menu1").click();
		var c=$(t).attr("class")+"d";
		$(t).parent().find("div."+c).fadeIn(200, function () {setTimeout("$(\"#nmmyo"+$(t).parent().parent().find("input.myo_obj").attr("id").substr(5)+"\").parent().parent().find(\"div."+c+"\").fadeOut(200);", 2000);});
	}
}
function fBind(t)
{//alert(t);
	if (t == '1')
	{
		/*if ($('#bauth'))
		{
			$('#bauth').bind('click', function (){rutaxi_order_form();});
		}*/

		$("#rutaxi_login").bind("keyup", function() {
			if ($(this).val().length == $(this).attr("maxlength"))
			{
				$("#rutaxi_passw").focus();
				$("#rutaxi_passw").select();
			}
		});
		$('#dauth').bind('click', function () {
			fMess('Пожалуйста, подождите...',1);
			$.ajax({
				type: "POST",
				async: true,
				cache: false,
				url: "a/"+$("#taxi_online_script_name").val()+".html",
				data: "b=269&sess="+$("#rutaxi_sess").val()+"&demo=1&l=&p=",
				dataType: "text",
				success: function (resp){fMess('',0);fForm(resp);},
				error:  function(xhr, str){fMess('',0);}
			});
		});
		$('#aform').bind('submit', function (){//alert($("#rutaxi_login").val().search(/\D+/));
			var err=false;
			if ($("#rutaxi_login").val().length != $("#rutaxi_login").attr("maxlength") || $("#rutaxi_login").val().search(/\D+/) >= 0)
			{
				fErr('Введите последние '+$("#rutaxi_login").attr("maxlength")+' цифр номера Вашего мобильного телефона.');
				err=true;
			}
			var er = checkPassw($("#rutaxi_passw"));
			if (er != '')
			{
				fErr(er);
				err=true;
			}
			if (!err)
			{//alert($("#rutaxi_order").html());return;
				fMess('Пожалуйста, подождите...',1);
				$.ajax({
					type: "POST",
					async: true,
					cache: false,
					url: "a/"+$("#taxi_online_script_name").val()+".html",
					data: "b=269&sess="+$("#rutaxi_sess").val()+"&l="+$("#rutaxi_login").val()+"&p="+$("#rutaxi_passw").val()+"&from="+$("#rutaxi_order").attr("from")+"&rem="+$("#remember_me:checked").get().length,
					dataType: "text",
					success: function (resp){delMess();fForm(resp);},
					error:  function(xhr, str){fMess('',0);}
				});
			}
			return false;
		});
	}
	if (t == '2')
	{
		$("body").bind("click", function (e) {
			if ($(e.target).attr("class") != 'str_obj' && $(e.target).attr("class") != 'str_opt')
			{
				$("select.df").slideUp(100);
			}
			if ((!$(e.target).attr("id") || $(e.target).attr("id").substr(0, 3) != 'tdc') && (!$(e.target).attr("class") || ($(e.target).attr("class").substr(0, 3) != 'dtm' && !$(e.target).hasClass("imgcalend"))))
			{
				//if ($(e.target).hasClass("imgcalend")) {alert($(e.target).attr("class")).substr(0, 9);}
				$("#calend").slideUp(200);
			}
		});
		$("input.no").bind("click", function () {
			fMess('Пожалуйста, подождите...',1);
			$.ajax({
				type: "POST",
				async: true,
				cache: false,
				url: "a/"+$("#taxi_online_script_name").val()+".html",
				data: "b=269&sess="+$("#rutaxi_sess").val()+"&a=form&t=exit",
				dataType: "text",
				success: function (resp){fForm(resp);fMess('',0);},
				error:  function(xhr, str){fMess('',0);alert('Возникла ошибка: ' + xhr.responseCode+ ' ! ' + str);}
			});
		});
		$("div.dtm input").bind("focus, click", function () {
			$(this).select();
		});
		$("img.imgcalend").bind("click", function () {
			$("#calend").slideDown(300);
		});
		$("#predv").bind("click", function () {
			if ($("#"+$(this).attr("id")+":checked").get().length == 1)
			{
				$("div.dtm input").removeAttr("disabled");
				$("div.dtm input").eq(0).focus();
				$("div.dtm input").eq(0).select();
			}
			else
				$("div.dtm input").attr("disabled", "");
		});
		$("#ohour").bind("click", function () {
			fOhour(this);
		});
		$("input.lux").bind("click", function () {
			var i=$(this).attr("id").substr(3);
			var j=((i=='1')?'2':'1');
			var q=$("#"+$(this).attr("id")+":checked").get();
			if (q.length == 1)
			{
				$("#lux"+j).removeAttr("checked");
			}
			else
				$("#lux"+j).attr("checked", true);
		});
		$("input.chlen").bind("keyup", function () {
			$("#"+$(this).attr("id")+"_max_id").html($(this).val().length);
			if ($(this).val().length > $("#"+$(this).attr("id")+"_char_max").html())
			{
				$(this).val($(this).val().substr(0, $("#"+$(this).attr("id")+"_char_max").html()));
			}
		});
		$("#bcost").bind("click", function () {
			fOrder(1);
		});
		$("#bsend").bind("click", function () {
			fOrder(2);
		});
		$("div.menu div").bind("click", function () {//alert(1);
			var q=$("div.menu div").get();
			for (var i=0; i<q.length; i++)
			{
				var id=$(q[i]).attr("id");//alert(id);
				if (id)
				{
					if (id == $(this).attr("id"))
					{
						$("#rutaxi_cont"+id.substr(4)).show();
					}
					else
						$("#rutaxi_cont"+id.substr(4)).hide();
				}
				$(q[i]).attr("class", $(q[i]).attr("class").substr(0, 1)+"n");
			}
			$(this).attr("class", $(this).attr("class").substr(0, 1));
		});
		$("#chpass2").bind("keyup", function (e) {
			if (e.keyCode == 13)
			{
				$("#chpass").click();
			}
		});
		$("#chpass").bind("click", function () {
			var err = false;
			if ($("#chpass1").val() == '' || $("#chpass2").val() == '')
			{
				err=true;
				fErr('Необходимо ввести текущий пароль и новый пароль.');
			}
			else
			{
				var er = checkPassw($("#chpass1"));
				if (er != '')
				{
					fErr(er);
					err=true;
				}
				else
				{
					var er = checkPassw($("#chpass2"));
					if (er != '')
					{
						fErr(er);
						err=true;
					}
					else {
						if (!err)
						{
							fOrdHint("dchpass",1);
							$.ajax({
								type: "POST",
								async: true,
								cache: false,
								url: "a/"+$("#taxi_online_script_name").val()+".html",
								data: "b=269&t=chpass&sess="+$("#rutaxi_sess").val()+"&p1="+$("#chpass1").val()+"&p2="+$("#chpass2").val(),
								dataType: "text",
								success: function (resp){
									fOrdHint("dchpass",0);
									var q=resp.split("z|z");
									if (q[0] == '1' && q[4] == '1')
									{
										fErr('Пароль был успешно изменен. Вам было отправлено смс с новым паролем.');
									} else if (q[0] == '1' && q[4] == '0')
									{
										fErr('Пароль был успешно изменен. По техническим причинам смс с новым паролем не было отправлено.');
									} else {
										fErr(q[2]);
									}},
								error:  function(xhr, str){fOrdHint("dchpass",0);}
							});
						}
					}
				}
			}
		});
		$("input.iconf").bind("click", function () {
			var id=$(this).attr("id").substr(4);//alert($(this).attr("checked"));
			if ($("#conf"+id+":checked").get().length == 0)
			{
				$("#dop"+id).css("display", "none");
				$("#dopn"+id).css("display", "none");
			}
			else
			{
				$("#dop"+id).css("display", "block");
			}
			if (id=='6')
			{
				fErr('"Автоматическое использование корпоративной карты" будет '+(($("#conf"+id+":checked").get().length == 0) ? 'отключено' : 'включено')+'.');
				if ($("#conf"+id+":checked").get().length == 0)
				{
					$("#auto_corp_num").attr("disabled", "true");
					$("#auto_corp_pass").attr("disabled", "true");
				} else { $("#auto_corp_num").removeAttr("disabled"); $("#auto_corp_pass").removeAttr("disabled"); }
			}
		});
		$("#sconf").bind("click", function () {
			fOrdHint("sconf",1);
			$.ajax({
				type: "POST",
				async: true,
				cache: false,
				url: "a/"+$("#taxi_online_script_name").val()+".html",
				data: "b=269&t=conf&sess="+$("#rutaxi_sess").val()+"&ac="+$("#auto_corp:checked").get().length+"&conf="+$("#conf2:checked").get().length+$("#conf3:checked").get().length+$("#conf4:checked").get().length+$("#conf5:checked").get().length+$("#conf6:checked").get().length+"&cn="+$("#auto_corp_num").val()+"&cp="+$("#auto_corp_pass").val()+"&myph="+$("#smsmyphone:checked").get().length+"&dpph="+$("#smsdopphone:checked").get().length,
				dataType: "text",
				success: function (resp){
					fOrdHint("sconf",0);
					var q=resp.split("z|z");
					if (q[0] == '1' || q[0] == '3')
					{
						fErr('Настройки успешно сохранены.');
					} else {
						fErr('Настройки не были сохранены');
					}},
				error:  function(xhr, str){fOrdHint("sconf",0);}
			});
		});
	}
	if (t == '3')
	{
		$('#bauthno').bind('click', function (){fAuthResp(this)});
		$('#bauthyes').bind('click', function (){fAuthResp(this)});
	}
}
function fCheckEmtyMyObj(t)
{
	if (t == 1 && $("#myo_body input[class=str_obj]").get().length == 0)
	{
		$("#myo_body").append(fStrF(1,'','','',''));
	}
}
function checkPassw(o)
{
	if (o.val().length > o.attr("maxlength") || o.val().search(/[^a-z0-9]+/i) >= 0)
	{
		return 'Пароль может содержать только буквы латинского алфавита и цифры, не менее 4 символов и не более '+o.attr("maxlength")+' символов.';
	}
	else
		return '';
}
function fOhour(o)
{
	var q=$("#"+$(o).attr("id")+":checked").get();
	if (q.length == 1) { $("table.str_block input[class=str_obj]:gt(0)").parent().parent().contents().find("input").attr("disabled", true); }
	else { $("table.str_block input[class=str_obj]:gt(0)").parent().parent().contents().find("input").removeAttr("disabled"); }
}
function fCheckAuth()
{
	//return $("#rutaxi_sess").val() && $("#rutaxi_sess").val() != '';
	return $("#chpass1").get().length;
}
function fHistory(t,p,b)
{
	if (fCheckAuth())
	{
		if (b == 1)
		{
			if ($("#anymore1").html() == '')
			{
				p = '0';
			}
			else p = $("#anymore1 a").attr("class").substr(8);
		}
		fOrdHint("bupds",1);
		$.ajax({
			type: "POST",
			async: true,
			cache: false,
			url: "a/"+$("#taxi_online_script_name").val()+".html",
			data: "b=269&sess="+$("#rutaxi_sess").val()+"&t=history&pg="+p+"&k="+b,
			dataType: "text",
			success: function (resp){
				if (fCheckAuth())
				{
					//alert(1);
					var q=resp.split("z|z");//alert(q.length);
					if (q[5] == '1' || q[5] == '0')
					{
						$("#rutaxi_cont2").html(q[3]);
					}
					else if (q[5] == '2')
					{//alert(q[3]);
						$("#olmb").append(q[3]);
					}//alert(q[4]);
					$("#anymore1").html(q[4]);
					fOrdHint("bupds",0);
				}
			},
			error:  function(xhr, str){fOrdHint("bupds",0);}
		});
		if (t == 1)
		{
			clearTimeout(rutaxi_time_timer2);
			rutaxi_time_timer2 = setTimeout('fHistory(1,0,1);', 60000);
		}
	}
}
function fAuthResp(t)
{
	fMess('Пожалуйста, подождите...',1);
	$.ajax({
		type: "POST",
		async: true,
		cache: false,
		url: "a/"+$("#taxi_online_script_name").val()+".html",
		data: "b=269&sess="+$("#rutaxi_sess").val()+"&l="+$("#rutaxi_login").val()+"&p="+$("#rutaxi_passw").val()+"&from="+$("#rutaxi_order").attr("from")+"&c="+(($(t).attr("id").substr(5) == "yes") ? "3" : "2")+"&rem="+$("#remember_me:checked").get().length,
		dataType: "text",
		success: function (resp){ delMess();fForm(resp);}
	});
}
function fErr(t)
{
	if (!$('#fade').attr('id'))
	{
		$('body').append('<div id="fade"><div id="fadec"><img class="close" id="closep" src="/img/other/close.png">'+t+'</div></div>');
		var w=(($('body').width()-$('#fadec').width())/2).toFixed(0);
		var h=((( window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight)-$('#fadec').height())/2).toFixed(0);//alert($('#fadec').height());
		$('#fadec').css('left', w+'px');
		//$('#fadec').css('top', h+'px');
		$('#fade').fadeIn(500);
	}
	else
	{
		$('#fadec').html($('#fadec').html()+'<br><br>'+t);
	}
	$('#closep').bind('click', function () {$('#fade').fadeOut(500, function () {$('#fade').remove();});});
}
function fMess(t,p)
{
	if (p==1)
	{
		if (!$('#fade').attr('id'))
		{
			$('body').append('<div id="fade"><div id="fadec"><div class="c">Пожалуйста, подождите. Идет загрузка...<br><img src="/img/loader.gif"></div></div></div>');
			var w=(($('body').width()-$('#fadec').width())/2).toFixed(0);
			var h=(($('body').height()-$('#fadec').height())/2).toFixed(0);//alert(w+' ! '+h);
			$('#fadec').css('left', w+'px');
			//$('#fadec').css('top', h+'px');
			$('#fade').fadeIn(500);
		}
		else
		{
			$('#fadec').html($('#fadec').html()+'<br><br>'+t);
		}
	}
	else
	{
		$('#fade').fadeOut(500, function () {$('#fade').remove();});
	}
}
function delMess()
{
	$('#fade').hide();
	$('#fade').remove();
}
function fForm(resp, ms)
{
	var m=0;
	var r=resp.split("z|z");
	ms = ms || 0;
	if (r[2] == '5')
	{
		var m=1;
		r[2]='2';
	}
	if (r[0] == '1')
	{
	}
	else
	{
		if (r[1] != '')
		{
			delMess();
			fErr(r[1]);
		}
	}
	if (ms == 1 || r[3] != '')
	{
		if (ms == 0)
		{
			$("#rutaxi_order").html(r[3]);
		}
		$("#anymore1").html(r[4]);
		fBind(r[2]);
		if (r[2] == '2')
		{
			fStrTit(0);
			$("#str_block_body").append(fStrF(0,'','','','1'));
			fStrTit(1);
			$("#str_block_body").append(fStrF(0,'','','',''));
			fUpdBtn(0);
			rutaxi_time_timer1 = setTimeout('fUpdDt();', 600000);//fUpdDt();
			$('div.dop1, div.dop2').click();
			$("#caltd").append(fGetCalend(getDate()));
			fUserConf();
			fUpdDtF();
			rutaxi_time_timer2 = setTimeout('fHistory(1,0,1);', 60000);//alert('запустили таймеры');
			fUpdBtn(1);
			if (m==1)
			{
				$("#menu2").click();
				fErr('Заказ успешно отправлен.');
			}
		}
		else if (r[2] == '1' || r[2] == '3')
		{
			if (rutaxi_time_timer1)
			{
				clearTimeout(rutaxi_time_timer1);
			}
			if (rutaxi_time_timer2)
			{
				clearTimeout(rutaxi_time_timer2);
			}
			if (rutaxi_time_timer3)
			{
				clearTimeout(rutaxi_time_timer3);
			}
		}
	}
}
function fStrTit(t)
{
	if (t == 1)
	{
		$("#str_block_body").append('<tr class="t"><td></td><td></td><td><span class="b">Куда</span><br>Улица, остановка, магазин</td><td><div class="c">№ дома</div></td><td></td></tr>');
	}
	else
	{
		$("#str_block_body").append('<tr class="t"><td></td><td></td><td><span class="b">Откуда</span><br>Улица, остановка, магазин</td><td><div class="c">№ дома</div></td><td><div class="c">подъезд</div></td></tr>');
	}
}
/* Улицы */
function fStrF(a0,a1,a2,a3,a4)
{
	var i=fNextStr(a0);
	if (a0==0)
	{
		return '<tr class="dstr"><td class="pmbut" id="tdp'+i+'"></td><td class="pmbut" id="tdm'+i+'"></td><td class="l"><input placeholder="Введите название улицы/объекта" type="text" required class="str_obj" value="'+a1+'" id="str'+i+'"><br><select class="df" size="15" id="ss'+i+'">'+a2+'</select></td><td><input type="text" class="str_h" value="'+a3+'" id="strh'+i+'" required></td><td>'+((i=='0') ? '<input class="str_e" type="text" value="'+a4+'" id="stre'+i+'" required>' : '')+'</td></tr>';
	}
	else {//alert(i);
		return '<tr><td id="tdpmyo'+i+'"></td><td id="tdmmyo'+i+'"></td><td><input placeholder="Название" type="text" required class="myo_obj" value="" id="nmmyo'+i+'"><input type="hidden" value="0" class="idmyo"></td><td class="l"><input placeholder="Введите название улицы/объекта" type="text" required class="str_obj" value="" id="strmyo'+i+'"><br><select class="df" size="15" id="ssmyo'+i+'"></select></td><td><input placeholder="Дом" type="text" class="str_h" value="" id="strhmyo'+i+'" required></td><td><input placeholder="Подъезд" class="str_e" type="text" value="" id="stremyo'+i+'" required></td><td><img class="note_img" src="/img/note.png" alt="Комментарий" title="Комментарий для водителя"><br><div class="myocomm"><span class="sp1">Введите текст комментария</span><br><span class="sp2">(будет автоматически вставляться в<br>комментарий заказа для водителя)</span><input class="myocomm" type="text" value=""><div class="c"><input class="btn" type="button" value="Ок"> <input class="btn" type="button" value="Отмена"></div></div></td><td><a class="afrom">От адреса</a><div class="afromd">Адрес добавлен в заказ</div><br><a class="ato">До адреса</a><div class="atod">Адрес добавлен в заказ</div></td></tr>';
	}
}
function fNextStr(t)
{
	var c=[["str_block", 3], ["myo", 6]];
	var q = $("table."+c[t][0]+" input[class=str_obj]").get();
	var n=-1;
	for (var i=0; i < q.length; i++)
	{
		n=$(q[i]).attr("id").substr(c[t][1]);
	}
	n++;
	return n;
}
function fUpdBtn(t)
{
	var c=[["table.str_block", 1, true, 2, "Добавить пункт поездки", "Удалить пункт поездки"],
		["table.myo", 0, false, 1, "Добавить мой адрес", "Удалить мой адрес"]
	];
	var q = $(c[t][0]+" input[class=str_obj]").get();
	for (var i=c[t][1]; i < q.length; i++)
	{
		var n=$(q[i]).attr("id").substr(3);
		if (i == (q.length-1) && (!c[t][2] || q.length < 10))
		{
			$('#tdp'+n).html('<input type="button" class="bp" title="'+c[t][4]+'">');
		}
		else
		{
			$('#tdp'+n).html('');
		}
		if (t==1 || (i > 0 && q.length > c[t][3]))
		{
			var btn = '<input type="button" class="bm" title="'+c[t][5]+'">';
			$('#tdm'+n).html(t==1 ? '<div id="hobm'+n+'1">'+btn+'</div><div class="orderhnt" id="hobm'+n+'2">...</div>' : btn);
		}
		else
		{
			$('#tdm'+n).html('');
		}
	}
	return n;
}
/* календарь */
function fGetCalend(d)
{
	var p='';
	var ld=new Date(d.getFullYear(), d.getMonth()+1, 0).getDate();
	var ld2=new Date(d.getFullYear(), d.getMonth(), 1).getDay();
	var u=(d.getDate()/7).toFixed(0);
	var j=-1*(ld2-2);
	var ld3 = false;
	if (d.getDate() == ld)
	{
		ld++;
		ld3 = true;
	}
	while (j<=ld)
	{
		var p=p+'<tr>';
		for (var i=1; i<=7; i++,j++)
		{
			if (((!ld3 && j<=ld) || (ld3 && j<ld)) &&j>=1)
			{
				p=p+'<td id="tdc'+j+'"'+((j==d.getDate())?' class="s"':((j>=d.getDate() && j<=(d.getDate()+1))?' class="cs"':''))+'>'+j+'</td>';
			}
			else if (ld3 && j==ld)
			{
				p=p+'<td id="tdc'+j+'" class="cs">1</td>';
			}
			else
			{
				p=p+'<td></td>';
			}
		}
		var p=p+'</tr>';
	}

	return '<div class="calend" id="calend"><table><tr class="t"><td>ПН</td><td>ВТ</td><td>СР</td><td>ЧТ</td><td>ПТ</td><td>СБ</td><td>ВС</td></tr>'+p+'</table></div>';
}
function getDate()
{
	var ut = $("#utime").val()*1000;
	var d1 = new Date();
	var d = new Date(ut+(d1.getTimezoneOffset()+300)*60*1000+60*60*1000);
	return d;
}
function fUpdDt()
{
	$.ajax({
		type: "POST",
		async: true,
		cache: false,
		url: "a/"+$("#taxi_online_script_name").val()+".html",
		data: "b=269&sess="+$("#rutaxi_sess").val()+"&a=form&t=gtime",
		dataType: "text",
		success: function (resp){var q = resp.split("z|z"); $("#utime").val(q[0]);}
	});
	clearTimeout(rutaxi_time_timer1);
	rutaxi_time_timer1 = setTimeout('fUpdDt();', 600000);
}
function fUpdDtF()
{
	var ut = parseInt($("#utime").val())*1000;
	var d1 = new Date();
	var d = new Date(ut+(d1.getTimezoneOffset()+300)*60*1000+60*60*1000);
	var weekday=new Array(7);
	weekday[0]="Воскресенье";
	weekday[1]="Понедельник";
	weekday[2]="Вторник";
	weekday[3]="Среда";
	weekday[4]="Четверг";
	weekday[5]="Пятница";
	weekday[6]="Суббота";

	var month=new Array(12);
	month[0]="января";
	month[1]="февраля";
	month[2]="марта";
	month[3]="апреля";
	month[4]="мая";
	month[5]="июня";
	month[6]="июля";
	month[7]="августа";
	month[8]="сентября";
	month[9]="октября";
	month[10]="ноября";
	month[11]="декабря";

	var h=d.getHours();
	var m=d.getMinutes();
	$("#tmn1").html(((h<10)?'0':'')+h+':'+((m<10)?'0':'')+m);
	$("#tmn2").html(weekday[d.getDay()]);
	$("#tmn3").html(d.getDate()+' '+month[d.getMonth()]+' '+d.getFullYear());

	$("#utime").val(parseInt($("#utime").val()) + 63);
	clearTimeout(rutaxi_time_timer3);
	rutaxi_time_timer3=setTimeout('fUpdDtF();', 58000);
}
// добавляет недостающие нолики в начало, чтобы дата была правильной
function fCorrectDate()
{
	var q = $("div.dtm input").get();
	for (var i=0; i<q.length; i++)
	{
		if ($(q[i]).val().length < $(q[i]).attr("maxlength") && $(q[i]).attr("maxlength") == 2)
		{
			$(q[i]).val("0"+$(q[i]).val());
		}
		else if ($(q[i]).val().length == 2 && $(q[i]).attr("maxlength") == 4)
		{
			$(q[i]).val("20"+$(q[i]).val());
		}
	}
}
// меняет отображение доп блоков на форме заказа в соответствии с настройками пользователя
function fUserConf()
{
	var q=$("#user_conf").val().split("");
	for (var i=0; i<q.length; i++)
	{
		if (q[i] == '1')
		{
			$("#dop"+(i+2)).fadeIn(300);
			//$("#dopn"+(i+2)).fadeIn(300);
		}
		else
		{
			$("#dop"+(i+2)).fadeOut(300);
			$("#dopn"+(i+2)).fadeOut(300);
		}
	}
}
//отправка заказа
function fOrder(t)
{
	var err='';
	var w=t;
	if ($("#predv:checked").get().length == 1)
	{
		var pattern = /^(((0[1-9]{1})|[12]{1}[0-9]{1})|(3[01]{1})).((0[1-9]{1})|(1)[0-2]{1}).201[1-9]{1} (([01]{1}[0-9]{1})|(2[0-3]{1})):(([0-5]{1}[0-9]{1})|60)$/;
		if (!pattern.test($("#predvd").val()+"."+$("#predvm").val()+"."+$("#predvy").val()+" "+$("#predvh").val()+":"+$("#predvi").val()))
		{
			err+='Дата и время предварительного заказа указана некорректно. Пожалуйста, введите дату в формате ЧЧ:ММ ДД.ММ.ГГГГ<br><br>';
		}
		w=w+fGDL()+'1'+fGDL()+$("#predvh").val()+fGDL()+$("#predvi").val()+fGDL()+$("#predvd").val()+"."+$("#predvm").val()+"."+$("#predvy").val();
	}
	else
	{
		w=w+fGDL()+'0'+fGDL()+''+fGDL()+''+fGDL()+'';
	}
	w=w+fGDL()+(($("#ohour:checked").get().length == 1)?'1':'0')+fGDL()+(($("#lux1:checked").get().length == 1)?'1':'2')+fGDL()+$("#dopph").val()+fGDL()+$("#corpn").val()+fGDL()+$("#corpp").val()+fGDL()+$("#ocomment").val();
	//var ed=gobi('ed0');
	if ($("#stre0:disabled").get().length == 0 && ($("#stre0").val()=='' || $("#stre0").val()=='0' || $("#stre0").val()==' '))
	{
		$("#stre0").val('1');
	}
	if (!$("table.str_block select.df").eq(0).val())
	{
		err+='Укажите адрес, куда подать машину.<br><br>';
	}
	else
	{
		var q=$("table.str_block select.df").eq(0).val().split("|");
		if (q[1]==3 && $('input.str_h').eq(0).val() == '')
		{
			err+='Необходимо указать номер дома, куда подать машину<br><br>';
		}
		else if (q[1]==3 && $('input.str_e').eq(0).val() == '')
		{
			err+='Необходимо указать номер подъезда, к которому подать машину<br><br>';
		}

		w=w+fGDL()+q[0]+"-"+((q[1]>=3)?"3":q[1])+fGDL()+$('input.str_h').eq(0).val()+fGDL()+$("input.str_e").eq(0).val()+fGDL()+$("#corpw").val();
	}
	if ($("#ohour:checked").get().length == 0)
	{
		var a=$("table.str_block input.str_obj:gt(0)").get();
		for (var i=0; i<a.length; i++)
		{
			if (!$("#ss"+$(a[i]).attr("id").substr(3)).val())
			{
				err+='Укажите адрес для пункта поездки №'+(i+1)+'.<br><br>';
			}
			else
			{
				var q=$("#ss"+$(a[i]).attr("id").substr(3)).val().split("|");
				if (q[1]==3 && $("#strh"+$(a[i]).attr("id").substr(3)).val() == '')
				{
					err+='Необходимо указать номер дома в пункте поездки №'+(i+1)+'.<br><br>';
				}
				else w=w+fGDL()+q[0]+"-"+((q[1]>=3)?"3":q[1])+'#$'+$("#strh"+$(a[i]).attr("id").substr(3)).val();
			}
		}
	}
	if (err == '')
	{
		$("#ocost").html('XXX');
		fOrdHint(((t==1) ? "bcost" : 'bsend'),1);
		$.ajax({
			type: "POST",
			async: true,
			cache: false,
			url: "a/"+$("#taxi_online_script_name").val()+".html",
			data: "b=269&sess="+$("#rutaxi_sess").val()+"&a=form&t=order&p="+w,
			dataType: "text",
			success: function (resp){
				var q=resp.split("z|z");
				if (q[0] != '1')
				{
					fErr(q[1]);
				}
				else
				{
					if (q[5] == '2')
					{
						var b=q[3].split(" ");
						fRutaxi_resp(1);
					}
					else
					{
						$("#ocost").html(q[3]);
					}
					if (q[4] != '')
					{
						fqtip( $('#ocost'), q[4], 'topLeft' );
						setTimeout("$($('#ocost')).qtip('hide');", 1000*20);
					}
				}
				if (q[5] == '2')
				{
					fOrdHint("bsend",2);
				}
				else
					fOrdHint("bcost",2);
			},
			error:  function(xhr, str){fOrdHint("bcost",2);fOrdHint("bsend",2);}
		});
	}
	else
	{
		fErr(err);
	}
}
function fGDL()
{
	return '!|';
}
function fOrdHint(t,q)
{
	if (q==1)
	{
		$("#"+t+"1").hide();
		$("#"+t+"2").show();
		$("#"+t+"2").css("display", "inline");
	}
	else
	{
		$("#"+t+"2").hide();
		$("#"+t+"1").show();
	}
}
function fqtip(th,mess,crn)
{
	var corners = [
   'bottomLeft', 'bottomRight', 'bottomMiddle',
   'topRight', 'topLeft', 'topMiddle',
   'leftMiddle', 'leftTop', 'leftBottom',
   'rightMiddle', 'rightBottom', 'rightTop'
	];
	var opposites = [
	   'topRight', 'topLeft', 'topMiddle',
	   'bottomLeft', 'bottomRight', 'bottomMiddle',
	   'rightMiddle', 'rightBottom', 'rightTop',
	   'leftMiddle', 'leftTop', 'leftBottom'
	];
	if($(th).data("qtip")) $(th).qtip("destroy");

	$(th).qtip({
		content: mess,
		position: {
			corner: {
			tooltip: crn
			}
		},
		show: {
			when: false,
			ready: true
		},
		hide: { effect: 'fade', ready: true },
		style: {
			border: {
				width: 5,
				radius: 10
			},
			padding: 10,
			textAlign: 'left',
			tip: true,
			name: 'cream',
			width: { max: 300 }
		}
	});
}
