  var digits = "0123456789";
  var phoneNumberDelimiters = "()-+ ";
  var validWorldPhoneChars = phoneNumberDelimiters + "+";
  var minDigitsInIPhoneNumber = 7;

function CheckSendForm(fbg) {
   var tele=fbg.phone.value; 
   var email=fbg.mail.value;
   var flag=1;
   var errmsg='';
   if (CheckMail(email))
     flag=0;
   else { 
     errmsg += "błędny adres e-mail\n";        
   }
   if (CheckPhone(tele)) {
     flag=0;  
   }      
   else {   
     errmsg += "błędny numer telefonu\n";     
   }
   if (flag==0) {
      SendForm(fbg);   
   }       
   else {
        errmsg += "podaj przynajmniej jedno z dwóch:\nadres e-mail lub numer telefonu.";
        alert(errmsg);  
   }   
}    

function CheckSendFormM(fbg) {
   var tele=fbg.phone.value; 
   var email=fbg.mail.value;
   var flag=1;
   var errmsg='';
   if (CheckMail(email))
     flag=0;
   else { 
     errmsg += "błędny adres e-mail\n";        
   }
   if (CheckPhone(tele)) {
     flag=0;  
   }      
   else {   
     errmsg += "błędny numer telefonu\n";     
   }
   if (flag==0) {
      SendFormM(fbg);   
   }       
   else {
        errmsg += "podaj przynajmniej jedno z dwóch:\nadres e-mail lub numer telefonu.";
        alert(errmsg);  
   }   
}    


function CheckName(str) {
  
}  

function CheckMail(emailStr) {
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
var matchArray=emailStr.match(emailPat)
if (matchArray==null) {
	return false
}
var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) {
 
//    alert("The part of your email address before the '@' doesn't seem to be valid.")
    return false
}

var IPArray=domain.match(ipDomainPat)
if (IPArray!=null) {
	  for (var i=1;i<=4;i++) {
	    if (IPArray[i]>255) {
//	        alert("Destination IP address is invalid!")
		return false
	    }
    }
    return true
}

var domainArray=domain.match(domainPat)
if (domainArray==null) {
//	 alert("Part of your email address after the '@' doesn't seem to be valid")
    return false
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length
if (domArr[domArr.length-1].length<2 || 
    domArr[domArr.length-1].length>6) {
//   alert("The address must end in a top level domain (e.g. .com), or two letter country.")
   return false
}

if (len<2) {
   var errStr="This address is missing a hostname!"
//   alert(errStr)
   return false
}
  return true;
}



function CheckPhone(numer) {
	if ((numer==null)||(numer=="")){
//		alert("	źle");
		return false;
	}
	if (checkInternationalPhone(numer)==false){
//		alert("źle");
		return false;
	}	
	return true;
}

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    return true;
}

function stripCharsInBag(s, bag) { 
    var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
   s=stripCharsInBag(strPhone,validWorldPhoneChars);
   return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

