	
	var atsignup = false;
	
	function check_customerlogin(theForm) {
		var allOK = false;
		allOK = theForm.user.value != "" && theForm.pass.value != "";
		return allOK;
	}
	
	
	function footerLogin(theForm) {
		if (check_customerlogin(theForm)) 
		{		
			url= "https://www.freecall.com/myaccount/?part=fplogin&password="+theForm.pass.value+"&username="+theForm.user.value;			
			newWin = window.open(url, "login", 'scrollbars=yes,status=yes,resizable,width=800,height=600');
			newWin.focus();
		} else {
			alert("Incorrect user/password combination");
		}
		return false;
	}	
	
	function isEmail(address) {
		var isValid = false;
		// basic checks (relying on lazy evaluation for correct behaviour!)
		// not empty
		// at least 7 characters (x@yy.zz)
		// has @
		// has only 1 @
		// has at least one . (domain.ext)
		isValid = (address!=null) 
		       && (address.length >= 7) 
		       && (address.indexOf('@')!=-1) 
		       && (address.indexOf('@') == address.lastIndexOf('@'))
		       && (address.indexOf('.')!=-1)
		;
		
		if (isValid) {
			var parts = address.split('@');
			var name  = parts[0].split('.');
			var host  = parts[1].split('.');
			var regName  = new RegExp("^([!#$%&*+-/0-9=?A-Z^_a-z{}~]+)$"); // at least length 1
			var regLabel = new RegExp("^(^[-0-9A-Za-z][-0-9A-Za-z]+)$"); // at least length 2
			var regExt   = new RegExp("^([A-Za-z]{2,63})$"); // at least length 2
			var i;
			for (i=0; i < name.length; i++) {
				isValid = isValid && (name[i].search(regName) != -1);
			}
			for (i=0; i < host.length-1; i++) {
				isValid = isValid && (host[i].search(regLabel) != -1) && (host[i].length <= 63);
			}
			isValid = isValid && (host[host.length-1].search(regExt) != -1);
		}
		return isValid;
	}	
	
	function checkRetrievePassword(thisform)
	{
		if (isEmail(thisform.email.value))
		{
		 	if (thisform.user.value!="") return true;
		 	else
		 	{
		 		alert("You are required to fill out all fields");
		 		return false;
		 	}
		}
		else 
		{
			alert("The entered email address is incorrect");
			return false;
		}
	}
	
	function checkNews()
	{
		if (isEmail(document.news.email.value))
		{
			document.news.submit();
			return true;
		}
		else 
		{
			alert("The entered email address is incorrect");
			return false;
		}
	}
	

	function checkNews2()
	{
		if (isEmail(document.news2.email.value))
		{
			document.news2.submit();
			return true;
		}
		else 
		{
			alert("The entered email address is incorrect");
			return false;
		}
	}


	function checkNews3()
	{
		if (isEmail(document.news3.email.value))
		{
			document.news3.submit();
			return true;
		}
		else 
		{
			alert("The entered email address is incorrect");
			return false;
		}
	}


	function checkNewsU()
	{
		if (isEmail(document.news2.email.value))
		{
			document.news2.submit();
			return true;
		}
		else 
		{
			alert("The entered email address is incorrect");
			return false;
		}
	}	
	
	
	function getCookie(name)
	{
	    var dc = document.cookie;
	    var prefix = name + "=";
	    var begin = dc.indexOf("; " + prefix);
	    if (begin == -1)
	    {
	        begin = dc.indexOf(prefix);
	        if (begin != 0) return null;
	    }
	    else
	    {
	        begin += 2;
	    }
	    var end = document.cookie.indexOf(";", begin);
	    if (end == -1)
	    {
	        end = dc.length;
	    }
	    var s = dc.substring(begin + prefix.length, end);
	    s = s.replace(new RegExp("\\+", 'g'), "%20");
	    return unescape(s);	    	    
	}	

 	function getUserName()
 	{
 		if (document.cookie != 'undefined' && document.cookie != "") 
 		{	
 			return getCookie("voipusername");
 		}
 		else return "";
 	}

