/******
*
* Form validation functions
*
* 2006-03-29 - Di3g0
*
******/

function SwitchCheckBoxes( form, option )
{
	cant=0;
	if ( option == "all" ) { checked = true; }
	else if ( option == "none" ) { checked = false; }
	for ( i=0; i < form.length; i++ ) {
		if ( form.elements[i].type == "checkbox" && form.elements[i].name == "id[]" ) {
			form.elements[i].checked = checked;
		}
	}
	if ( option == "all" ) { return "none"; }
	else if ( option == "none" ) { return "all"; }
}

function CheckSlashes ( value )
{
  var disallowed = "\"'";

	for ( var i=0; i < value.length; i++ ) {
		if ( disallowed.indexOf( value.charAt(i) ) != -1 ) { return true; }
	}
	
	return false;
}

function FieldFilled ( value )
{
	if ( value == "" ) { return false; }
	
  var str = " \t\n\r";

  for ( var i=0; i < value.length; i++ ) {
		if ( str.indexOf( value.charAt(i) ) == -1 ) { return true; }
	}
	
	return false;
}

function ValidEmail ( mail )
{
	// Expresion regular para validar el email
	regexp = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/;
	if ( regexp.test(mail) ) {
		return true;
	}
	return false;
}

function IsInt ( val )
{
  var allowed = "1234567890";	
	var value = Trim( val );

  for ( var i=0; i < value.length; i++ ) {
		if ( allowed.indexOf( value.charAt(i) ) == -1 ) { return false; }
	}
	
	return true;
}

function IsPhone ( val )
{
  var allowed = "1234567890-() ";
	var value = Trim( val );

  for ( var i=0; i < value.length; i++ ) {
		if ( allowed.indexOf( value.charAt(i) ) == -1 ) { return false; }
	}
	
	return true;
}

function Ltrim ( str )
{
	 for ( var i=0; i < str.length ; i++ ) {
		if ( str.charAt(i) != " " ) { break; }
	 }
	 return str.substring( i );
}
function Rtrim ( str )
{
	 for ( var i=str.length; i >= 0 ; i-- ) {
		if ( str.charAt(i) != " " ) { break; }
	 }
	 return str.substring( 0, i );
}
function Trim ( str )
{
	return Ltrim( Rtrim( str ) );
}

function PrintError ( message, object )
{
	if ( object != null ) {
		if ( object.type=="text" || object.type=="textarea" || object.type=="password" ) { object.select(); }
		object.focus();
	}
	alert( message );
	return false;
}

function IsDate (year, month, day)
{
	month--;
	
	var objTempDate = new Date(year,month,day);

	return ( ( objTempDate.getFullYear()==year && objTempDate.getMonth()==month && objTempDate.getDate()==day ) ? true : false );
}

function IsTime (intHour, intMinute, intSecond)
{
	var objTempTime = new Date( 0, 0, 1, intHour, intMinute, intSecond );

	return ( ( objTempTime.getHours()==intHour && objTempTime.getMinutes()==intMinute && objTempTime.getSeconds()==intSecond ) ? true : false );
}
