function getUserName()
{
	if (document.cookie != 'undefined' && document.cookie != "") 
	{	
		return getCookie("voipusername");
	}
	else return "";
}

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 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 checkNews4()
{
	if (isEmail(document.news4.email.value))
	{
		document.news4.submit();
		return true;
	}
	else
	{
		alert("The entered email address is incorrect");
		return false;
	}
}

