function emailCheck (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) 
	{
		alert("E-mail адреса не коректна, перевірте @ та . ")
		return false
	}

var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) 
	{
    		alert("Ім'я користувача e-mail не вказане")
    		return false
	}

var IPArray=domain.match(ipDomainPat)

if (IPArray!=null) 
	{
    		for (var i=1;i<=4;i++) 
			{
	    			if (IPArray[i]>255) 
					{
			      		alert("IP адреса призначення не коректна!")
						return false
	    				}
    			}
    		return true
	}

var domainArray=domain.match(domainPat)

if (domainArray==null) 
	{
		alert("Ім'я домену не задане.")
	    	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>3) 
	{
   		alert("Ім'я домену чи країни вказано не вірно.")
   		return false
	}

if (len<2) 
	{
	   	var errStr="Ця адреса не містить ім'я хосту!"
   		alert(errStr)
		return false
	}

return true;
}