function checkShippingAndPaymentInfo4()
{
	with (window.document.frmCheckout2) 
	{
				if (isEmpty(txtCompany, 'Въведете име на фирма!')) {
				return false;
				}else if(isAlphanum(txtCompany, 'Въведете име на фирма на кирилица!')==false){
				return false;
				}else if (isEmpty(txtCity, 'Въведете град!')) {
							return false;
			    }else if(isAlphabet(txtCity, 'Въведете град на кирилица!')==false){
				return false;
				}else if (isEmpty(txtAddress, 'Въведете адрес!')) {
							return false;
			    }else if(isAlphanum(txtAddress, 'Въведете адрес на кирилица!')==false){
				return false;
				}else if (isEmpty(txtMOL, 'Въведете МОЛ!')) {
							return false;
				}else if(isAlphabet(txtMOL, 'Въведете МОЛ на кирилица!')==false){
				return false;
				}else if (isEmpty(txtBulstat, 'Въведете идент. номер на фирма!')) {
							return false;
				}else if(txtBulstat!="")
				{
					var str = new String(txtBulstat.value);
					str = str.split("");
                   	var okBulst=CheckBulstat(str);
					if(okBulst==false)
					{
						alert(txtBulstat.value+' е невалиден идент. номер!');
					    return false;
					}else  if(txtTaxNo.value!="")
					{   
						
						if(txtTaxNo.value!='BG'+txtBulstat.value && txtTaxNo.value!='bg'+txtBulstat.value)
						{
							alert(txtTaxNo.value+' е невалиден идент. номер по ДДС!');
					        return false;
						}
						else 
						{
							if (isEmpty(txtAddress2, 'Въведете лице за контакти!')) {
							return false;
							} else if (isAlphabet(txtAddress2, 'Въведете лице за контакти на кирилица!')==false){
								return false;
							}else if (isEmpty(txtPhone, 'Въведете телефон!')) {
							return false;
							}else if (isPhone(txtPhone, 'Въведете телефон!')==false) {
							return false;
							}
							else if (isEmpty(txteMail, 'Въведете email!')) {
							return false;
							}else if(validateEmailv2(txteMail.value)==false) { 
							   strError = "Въведете валиден e-mail! ";               
								 alert(strError); 
								 return false;
						    } 
			 	   
						}//else 
						
					}
					else 
					{
						if (isEmpty(txtAddress2, 'Въведете лице за контакти!')) {
							return false;
						} else if (isAlphabet(txtAddress2, 'Въведете лице за контакти на кирилица!')==false){
								return false;
						}else if (isEmpty(txtPhone, 'Въведете телефон!')) {
							return false;
						}else if (isPhone(txtPhone, 'Въведете телефон!')==false) {
							return false;
						}else if (isEmpty(txteMail, 'Въведете email!')) {
							return false;
						}else if(validateEmailv2(txteMail.value)==false) { 
							   strError = "Въведете валиден e-mail! ";               
								 alert(strError); 
								 return false; } 
			 	   
					}
				}
				
					
		}//with
}


function isEmpty(elem, helperMsg){
	if(elem.value.length == 0){
		alert(helperMsg);
		elem.focus(); // set the focus to this input
		return true;
	}
	return false;
}
function isNumeric(elem, helperMsg){
	var numericExpression = /^[0-9]+$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}
function isAlphabet(elem, helperMsg){
	var alphaExp = /^[абвгдежзийклмнопрстуфхцчшщьъюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЮЯ№.% "]+$/;
	if(elem.value.match(alphaExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}
function isAlphanum(elem, helperMsg){
	var alphaExp = /^[-+0123456789абвгдежзийклмнопрстуфхцчшщьъюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЮЯ№.*% \/()"a-zA-Z]+$/;
	if(elem.value.match(alphaExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}
function isPhone(elem, helperMsg){
	var emailExp = /^[0123456789+ ()\/]+$/;
	if(elem.value.match(emailExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function CheckBulstat(bulstat)
{
var arbulstat=new Array(13);
var sum=0;
var ren=0;
var j=0;
var okBulstat=false;

if( bulstat.length=="9")
{
	
	for(j=0;j<9;j++)
	{
		if(j<8)
		{	sum=sum+bulstat[j]*(j+1);
		
		}else if(j==8)
		{
			ren=parseInt(sum)%11;
			if(ren<"10")
			{
				if(ren==bulstat[8])
				{
					okBulstat=true;
					
				}
				else  {okBulstat=false;}
			}
			else if(ren=="10")
			{
				for(j=0;j<9;j++)
				{
					sum=sum+(bulstat[j]*(j+3));
					
					ren=parseInt(sum)%11;
					if(ren!="10")
					{
						if(ren==bulstat[8])
						{
						  okBulstat=true;
						
						}
						else  {okBulstat=false; }
					}
					else if(bulstat[8]=="0")
					{
						okBulstat=true;
						
					}
					else {okBulstat=false; }
				}//for
			}//if(ren==10)
		}//else if(j<8)
	}//for
}//if 9
else if( bulstat.length=="13")
{
	sum=bulstat[8]*2+bulstat[9]*7+bulstat[10]*3+bulstat[11]*5;
	ren=parseInt(sum)%11;
	if(ren<"10")
	{
	    if(ren==bulstat[12])
		{
			okBulstat=true;document.write('TRUE');
		}else okBulstat=false;
	}
	else if(ren=="10")
	{
		sum=bulstat[8]*4+bulstat[9]*9+bulstat[10]*5+bulstat[11]*7;
		ren=parseInt(sum)%11;
		if(ren<"10")
		{
			if(ren==bulstat[12])
			{
				okBulstat=true;document.write('TRUE');
			}else if(ren=="10")
			{
				if(bulstat[12]==0) {okBulstat=true;document.write('TRUE');}
				else okBulstat=false;
			}else okBulstat=false;
		}
	}

}//else if(13)
return okBulstat;
}

function validateEmailv2(email)
{
// a very simple email validation checking. 
// you can add more complex email checking if it helps 
    if(email.length <= 0)
	{
	  return true;
	}
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }// if
      return true;
    }
return false;
}
