function email_check ( stringa )
{
	var pat = /^[a-zA-Z-0-9\.\-\_]+\@[a-zA-Z-0-9\.\-\_]+\.[a-zA-Z-0-9\.\-\_]+$/ ;
	var ris = stringa.match( pat ) ;
	
	if(stringa == "") {
		return true;
	}
	
	if ( ris == null ) {
		return false ;
	}
	
	return true ;
}


function date_check ( stringa )
{
	var pat = /^(\d{1,2})[\-\/](\d{1,2})[\-\/](\d{2,4})$/ ;
	var ris = stringa.match( pat );
	
	if(stringa == "") {
		return true;
	}
	
	if ( ris == null ) {
		return false ;
	}
	
	if ( ris[1] > 31 ) {
		return false ;
	}
	
	if ( ris[2] > 12 ) {
		return false ;
	}
	
	return true;
}


function num_check ( stringa )
{
	var pat = /^\d+$/ ;
	var ris = stringa.match( pat );
	
	if(stringa == "") {
		return true;
	}
	
	if ( ris == null ) {
		return false ;
	}
	
	return true;
}


function alfa_check ( stringa )
{
	var pat = /^[a-zA-Z]+$/ ;
	var ris=stringa.match( pat );
	
	if(stringa == "") {
		return true;
	}
	
	if ( ris == null ) {
		return false ;
	}
	
	return true;
}


function alfanum_check ( stringa )
{
	var pat = /^\w+$/ ;
	var ris=stringa.match( pat );
	
	if(stringa == "") {
		return true;
	}
	
	if ( ris == null ) {
		return false ;
	}
	
	return true;
}

function login_check ( stringa )
{
	var pat = /^[a-z0-9\.\-]+$/ ;
	var ris=stringa.match( pat );
	
	if(stringa == "") {
		return true;
	}
		
	if ( ris == null ) {
		return false ;
	}
	
	return true;
}


function alfanumext_check ( stringa )
{
	var pat = /^[\w\s]+$/ ;
	var ris = stringa.match( pat );
	
	if(stringa == "") {
		return true;
	}
	
	if ( ris == null ) {
		return false ;
	}
	
	return true;
}


function notnull_check ( stringa )
{
	var pat = /^.+$/ ;
	var ris = stringa.match( pat );
	
	if ( ris == null ) {
		return false ;
	}
	
	return true;
}


function tel_check ( stringa )
{
	var pat = /^\d*[\s\/\-]*\d+$/ ;
	var ris = stringa.match( pat )
	
	if(stringa == "") {
		return true;
	}
	
	if ( ris == null ) {
		return false ;
	}
	
	return true;
}


function password_check ( stringa1, stringa2 )
{
	/*if ( stringa1 == "" || stringa2 == "" ) {
		return false ;
	}
	*/
	
	if ( stringa1 != stringa2 ) {
		return false ;
	}
	
	return true;
}


function checked_check ( elemento )
{
	if ( ! elemento.checked ) {
		return false ;
	}
	
	return true;
}


function selected_check ( elemento )
{
	if ( elemento.selectedIndex == 0 ) {
		return false ;
	}
	
	return true;
}

function creditcard_check ( theinput, cardtype )
{
	val=theinput.value
	len=val.length
	
	if(stringa == "") {
		return true;
	}
	
	for(position=0;position<len;)
	{
		if(val.charAt(position)==' ' || val.charAt(position)=='-')
		{
			val=val.substring(0,position)+val.substring(position+1,len)
			len--
		}
		else
			position++
	}
	if(len<13)
		return false
	if(cardtype!='unknown')
	{
		if(isNaN(first=parseInt(val.charAt(0),10)))
			return false
		if(isNaN(second=parseInt(val.charAt(1),10)))
			return false
		if(isNaN(third=parseInt(val.charAt(2),10)))
			return false
		if((cardtype=='mastercard') && (len!=16 || first!=5 || second<1 || second>5))
			return false
		if((cardtype=='visa') && ((len!=16 && len!=13) || first!=4))
			return false
		if((cardtype=='amex') && (len!=15 || first!=3 || (second!=4 && second!=7)))
			return false
		if((cardtype=='dinersclub' || cardtype=='carteblanche') && (len!=14 || first!=3 || ((second!=0 || third<0 || third>5) && second!=6 && second!=8)))
			return false
		if((cardtype=='discover') && (len!=16 || first!=5 || second<1 || second>5))
			return false
		if((cardtype=='enroute') && (len!=15 || (val.substring(0,4)!='2014' && val.substring(0,4)!='2149')))
			return false
		if((cardtype=='jcb') && ((len!=16 || first!=3) && (len!=15 || (val.substring(0,4)!='2031' && val.substring(0,4)!='1800'))))
			return false
	}
	for(check=0,position=1;position<=len;position++)
	{
		if(isNaN(digit=parseInt(val.charAt(len-position),10)))
			return false
		if(!(position % 2))
			digit=parseInt('0246813579'.charAt(digit),10)
		check+=digit
	}
	return((check % 10)==0)
	
}
