myWidth = 0, myHeight = 0;
myTop = 0, myLeft = 0;

var mailre = /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;

$(document).ready(function(){
	$(window).resize(function(){
		checkWideScreen();
	});
	checkWideScreen();
});

function checkWideScreen(){
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
    myTop = window.pageYOffset;
    myLeft = window.pageXOffset;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
    myTop = document.documentElement.scrollTop;
    myLeft = document.documentElement.scrollLeft;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
    myTop = document.body.scrollTop;
    myLeft = document.body.scrollLeft;
  }
}

function sw(id)
{
	var tmp = document.getElementById(id);

	if (tmp) tmp.style.display = tmp.style.display == "none" ? "" : "none";

	return false;
}

function openConsult()
{
	document.images["_cap"].src = "/captcha.php?id=" + Math.random();
	var tmp = document.getElementById("send_form");
	checkWideScreen();
	var qq = (myLeft + (myWidth >> 1) - 250);
	tmp.style.left = (qq > 10 ? qq : 10) + "px";
	qq = (myTop + (myHeight >> 1) - 160);
	tmp.style.top = (qq > 10 ? qq : 10) + "px";
	tmp.style.display = "block";
	return false;
}

function view_photo(src,w,h,ab)
{
	alert(src + "," + w + "," + h + "," + ab);
	return false;
}

function openZapros1()
{
	document.images["_cap_z1"].src = "/captcha.php?idz1=" + Math.random();
	var tmp = document.getElementById("send_form_z1");
	checkWideScreen();
	var qq = (myLeft + (myWidth >> 1) - 350);
	tmp.style.left = (qq > 10 ? qq : 10) + "px";
	qq = (myTop + (myHeight >> 1) - 310);
	tmp.style.top = (qq > 10 ? qq : 10) + "px";
	tmp.style.display = "block";
	return false;
}

function openZapros2()
{
	document.images["_cap_z2"].src = "/captcha.php?idz2=" + Math.random();
	var tmp = document.getElementById("send_form_z2");
	checkWideScreen();
	var qq = (myLeft + (myWidth >> 1) - 450);
	tmp.style.left = (qq > 10 ? qq : 10) + "px";
	qq = (myTop + (myHeight >> 1) - 280);
	tmp.style.top = (qq > 10 ? qq : 10) + "px";
	tmp.style.display = "block";
	return false;
}

function openZapros3()
{
	document.images["_cap_z3"].src = "/captcha.php?idz3=" + Math.random();
	var tmp = document.getElementById("send_form_z3");
	checkWideScreen();
	var qq = (myLeft + (myWidth >> 1) - 450);
	tmp.style.left = (qq > 10 ? qq : 10) + "px";
	qq = (myTop + (myHeight >> 1) - 290);
	tmp.style.top = (qq > 10 ? qq : 10) + "px";
	tmp.style.display = "block";
	return false;
}

	function CheckForm(){	
	  var error=0;
	  var mf=document.forms['zakaz'];		
	    if (mf.fio.value=='' && error==0) {
	      alert('Заполните, пожалуйста, поле \"ФИО\"');
		  mf.fio.focus();
		  error=1;
	    }
		if (mf.email.value=='' && error==0) {
	      alert('Укажите, пожалуйста, \"E-mail\"');
		  mf.email.focus();
		  error=1;
	    }
		if (mf.about.value=='' && error==0) {
	      alert('Введите, пожалуйста, текст сообщения');
		  mf.about.focus();
		  error=1;
	    }
		if (error==0 && mf.phone.value=='' && (isEmail() == false)){
			error=1;
			mf.email.focus();
		}
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
	    }
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
	    }
	    if (error==0) {
		document.getElementById('send_form').style.display = 'none'
	       mf.submit();
//				script = document.createElement("script");
//				script.src = "/sendmail.phtml?fio="+mf.fio.value+"&email="+mf.email.value+"&ref="+escape(location.href)+"&code="+mf.code.value+"&phone="+mf.phone.value+"&about="+mf.about.value;			
//				document.body.appendChild(script);				 
	    }			
	 }
	function CheckFormZ1(){	
	  var error=0;
	  var mf=document.forms['zakaz1'];		
	    if (mf.sq.value=='' && error==0) {
	      alert('Заполните, пожалуйста, поле \"Площадь постройки\"');
		  mf.sq.focus();
		  error=1;
                  return false;
	    }
            error=1;
            for (var x = 0; x < mf.elements['func[]'].length; x++) if (mf.elements['func[]'][x].checked) error = 0;
	    if (error==1) {
	      alert('Выберите, пожалуйста, \"Функции котельной установки\"');
		  error=1;
                  return false;
	    }
	    if (mf.fuel.value=='' && error==0) {
	      alert('Заполните, пожалуйста, поле \"Вид топлива\"');
		  mf.fuel.focus();
		  error=1;
                  return false;
	    }
	    if (mf.dist.value=='' && error==0) {
	      alert('Заполните, пожалуйста, поле \"Направление, дальность от МКАД\"');
		  mf.dist.focus();
		  error=1;
                  return false;
	    }
            error=1;
            for (var x = 0; x < mf.elements['serv[]'].length; x++) if (mf.elements['serv[]'][x].checked) error = 0;
	    if (error==1) {
	      alert('Выберите, пожалуйста, \"Запрашиваемые услуги\"');
		  error=1;
                  return false;
	    }
	    if (mf.fio.value=='' && error==0) {
	      alert('Заполните, пожалуйста, поле \"Контактное лицо\"');
		  mf.fio.focus();
		  error=1;
                  return false;
	    }
		if (mf.email.value=='' && error==0) {
	      alert('Укажите, пожалуйста, \"Электронная почта\"');
		  mf.email.focus();
		  error=1;
                  return false;
	    }
		if (!mailre.test(mf.email.value) && error==0) {
	      alert('Правильно заполните, пожалуйста, \"Электронная почта\"');
		  mf.email.focus();
		  error=1;
                  return false;
	    }
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
                  return false;
	    }
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
                  return false;
	    }
	    if (error==0) {
		document.getElementById('send_form_z1').style.display = 'none'
	       mf.submit();
//				script = document.createElement("script");
//				script.src = "/sendmail.phtml?fio="+mf.fio.value+"&email="+mf.email.value+"&ref="+escape(location.href)+"&code="+mf.code.value+"&phone="+mf.phone.value+"&about="+mf.about.value;			
//				document.body.appendChild(script);				 
	    }			
	 }
	function CheckFormZ2(){	
	  var error=0;
	  var mf=document.forms['zakaz2'];		
            var fld = [0,0,0,0];

            if (mf.sqf.value.length) fld[0]++;
            if (mf.sq1.value.length) fld[1]++;
            if (mf.sq2.value.length) fld[2]++;
            if (mf.sqm.value.length) fld[3]++;

            if (mf.opf.value.length) fld[0]++;
            if (mf.op1.value.length) fld[1]++;
            if (mf.op2.value.length) fld[2]++;
            if (mf.opm.value.length) fld[3]++;

            if (mf.tpf.value.length) fld[0]++;
            if (mf.tp1.value.length) fld[1]++;
            if (mf.tp2.value.length) fld[2]++;
            if (mf.tpm.value.length) fld[3]++;

            if (mf.stf.value.length) fld[0]++;
            if (mf.st1.value.length) fld[1]++;
            if (mf.st2.value.length) fld[2]++;
            if (mf.stm.value.length) fld[3]++;

            if (fld[0] + fld[1] + fld[2] + fld[3] == 0)
            {
	      alert('Заполните, пожалуйста, информацию хотя бы по одному этажу');
		  error=1;
                  return false;
            }

            if ((fld[0] > 0 && fld[0] < 4) || (fld[1] > 0 && fld[1] < 4) || (fld[2] > 0 && fld[2] < 4) || (fld[3] > 0 && fld[3] < 4))
            {
	      alert('По одному из этажей часть информации не заполнена');
		  error=1;
                  return false;
            }

            error=1;
            for (var x = 0; x < mf.elements['serv[]'].length; x++) if (mf.elements['serv[]'][x].checked) error = 0;
	    if (error==1) {
	      alert('Выберите, пожалуйста, \"Запрашиваемые услуги\"');
		  error=1;
                  return false;
	    }
	    if (mf.fio.value=='' && error==0) {
	      alert('Заполните, пожалуйста, поле \"Контактное лицо\"');
		  mf.fio.focus();
		  error=1;
                  return false;
	    }
		if (mf.email.value=='' && error==0) {
	      alert('Укажите, пожалуйста, \"Электронная почта\"');
		  mf.email.focus();
		  error=1;
                  return false;
	    }
		if (!mailre.test(mf.email.value) && error==0) {
	      alert('Правильно заполните, пожалуйста, \"Электронная почта\"');
		  mf.email.focus();
		  error=1;
                  return false;
	    }
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
                  return false;
	    }
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
                  return false;
	    }
	    if (error==0) {
		document.getElementById('send_form_z2').style.display = 'none'
	       mf.submit();
//				script = document.createElement("script");
//				script.src = "/sendmail.phtml?fio="+mf.fio.value+"&email="+mf.email.value+"&ref="+escape(location.href)+"&code="+mf.code.value+"&phone="+mf.phone.value+"&about="+mf.about.value;			
//				document.body.appendChild(script);				 
	    }			
	 }
	function CheckFormZ3(){	
	  var error=0;
	  var mf=document.forms['zakaz3'];		
            var fld = [0,0,0,0];

            if (mf.sqf.value.length) fld[0]++;
            if (mf.sq1.value.length) fld[1]++;
            if (mf.sq2.value.length) fld[2]++;
            if (mf.sqm.value.length) fld[3]++;

            if (mf.xvf.value.length) fld[0]++;
            if (mf.xv1.value.length) fld[1]++;
            if (mf.xv2.value.length) fld[2]++;
            if (mf.xvm.value.length) fld[3]++;

            if (mf.gvf.value.length) fld[0]++;
            if (mf.gv1.value.length) fld[1]++;
            if (mf.gv2.value.length) fld[2]++;
            if (mf.gvm.value.length) fld[3]++;
/*
            if (mf.psf.value.length) fld[0]++;
            if (mf.ps1.value.length) fld[1]++;
            if (mf.ps2.value.length) fld[2]++;
            if (mf.psm.value.length) fld[3]++;
*/
            if (mf.unf.value.length) fld[0]++;
            if (mf.un1.value.length) fld[1]++;
            if (mf.un2.value.length) fld[2]++;
            if (mf.unm.value.length) fld[3]++;

            if (fld[0] + fld[1] + fld[2] + fld[3] == 0)
            {
	      alert('Заполните, пожалуйста, информацию хотя бы по одному этажу');
		  error=1;
                  return false;
            }

            if ((fld[0] > 0 && fld[0] < 4) || (fld[1] > 0 && fld[1] < 4) || (fld[2] > 0 && fld[2] < 4) || (fld[3] > 0 && fld[3] < 4))
            {
	      alert('По одному из этажей часть информации не заполнена');
		  error=1;
                  return false;
            }

            error=1;
            for (var x = 0; x < mf.elements['serv[]'].length; x++) if (mf.elements['serv[]'][x].checked) error = 0;
	    if (error==1) {
	      alert('Выберите, пожалуйста, \"Запрашиваемые услуги\"');
		  error=1;
                  return false;
	    }
	    if (mf.fio.value=='' && error==0) {
	      alert('Заполните, пожалуйста, поле \"Контактное лицо\"');
		  mf.fio.focus();
		  error=1;
                  return false;
	    }
		if (mf.email.value=='' && error==0) {
	      alert('Укажите, пожалуйста, \"Электронная почта\"');
		  mf.email.focus();
		  error=1;
                  return false;
	    }
		if (!mailre.test(mf.email.value) && error==0) {
	      alert('Правильно заполните, пожалуйста, \"Электронная почта\"');
		  mf.email.focus();
		  error=1;
                  return false;
	    }
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
                  return false;
	    }
		if (!mf.code.value.match(/^\d{4}$/) && error==0) {
	    alert('Введите, пожалуйста, четыре цифры кода');
		  mf.code.focus();
		  error=1;
                  return false;
	    }
	    if (error==0) {
		document.getElementById('send_form_z3').style.display = 'none'
	       mf.submit();
//				script = document.createElement("script");
//				script.src = "/sendmail.phtml?fio="+mf.fio.value+"&email="+mf.email.value+"&ref="+escape(location.href)+"&code="+mf.code.value+"&phone="+mf.phone.value+"&about="+mf.about.value;			
//				document.body.appendChild(script);				 
	    }			
	 }
	 function isEmail() {
	
		var strEmail = document.forms[0].elements["email"].value;
		//Данная функция проверяет строку strEmail на соответствие формату почтового адреса.
		//При этом строка разбивается на составные части:
		//имя_пользователя@сервер
	
		if (strEmail=="") {
			alert("Введите, пожалуйста, E-mail");
			document.forms[0].elements["email"].focus();
			return false;
		}
	
		var letters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
		var numbers="0123456789";
		
		var name="";
		var server="";
		var strings=new Array();
		
		//разделяем строку на имя пользователя и имя сервера
		strings=strEmail.split("@");
		if (strings.length==1) {
			alert("Ошибка: e-mail должен содержать символ @");
			document.forms[0].elements["email"].focus();
			return false;
		} else if (strings.length==2) {
			name=strings[0];
			server=strings[1];
		} else {
			alert("Ошибка: e-mail не может содержать более одного символа @");
			document.forms[0].elements["email"].focus();
			return false;
		}
		
		//проверка имени на допустимость символов
		if (!isValid(name,letters+numbers+"._-")) {
			alert("Недопустимые символы в имени пользовател\я");
			document.forms[0].elements["email"].focus();
			return false;
		}
		
		//разделяем имя сервера на составные части
		strings=server.split(".");
		if (strings.length<2) {
			alert("Нераспознанный e-mail");
			document.forms[0].elements["email"].focus();
			return false;
		}
		//проверяем каждую часть на допустимые символы
		for (i=0;i<strings.length;i++) {
			if (!isValid(strings[i],letters+numbers+"_-")) {
				alert("Нераспознанный e-mail");
				document.forms[0].elements["email"].focus();
				return false;
			}
		}
		
		return true;
		
	}
	
	function isValid(what,chars) {
		//проверяет, что все символы из what принадлежат множеству chars
		//если what пустая - ошибка
		while (what.charAt(0)==" ") {
			what=what.substring(1);
		}
		if (what=="") {
			return false;
		}
		bool1=false;
		for (count1=0; (count1<what.length)&&(!bool1);count1++) {
			bool2=false;
			for (count2=0; (count2<chars.length)&&(!bool2);count2++) {
				if (what.charCodeAt(count1)==chars.charCodeAt(count2)) {
					bool2=true;
				}
			}
			if (!bool2) {
				bool1=true;
			}
		}
		return !bool1;
	}
