// CODIGO JSCRIPT PARA VALIDAR CAMPOS - SCS
// Enrique Nicolas Colasurdo
function validTelefono(cadena){

	var str = cadena.value;
	var partes = str.split("-");
	var esnumero = true;
	for(var i=0;i<partes.length;i++)
	{
		if(isNaN(partes[i]))
		{
			esnumero = false;
		}
	}
	if (!esnumero)
	{
		return false;
	}
}

function validarURL(url) {
  var re=/^http:\/\/\w+(\.\w+)*\.\w{2,3}$/;
  return re.test(url);
}

function validRequired(formField)
{
	var result = true;
	
	if (formField.value == "")
	{
		alert('Ingrese el campo en el formato correcto: DD/MM/AAAA');
		formField.focus();
		result = false;
	}
	
	return result;
}

function TDigitos(str)
{
	return inValidCharSet(str,"0123456789");
}

function inValidCharSet(str,charset)
{
	var result = true;

	for (var i=0;i<str.length;i++)
		if (charset.indexOf(str.substr(i,1))<0)
		{
			result = false;
			break;
		}
	
	return result;
}

function validDate(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		var elems = formField.value.split("/");
 		
 		result = (elems.length == 3);
 		
 		if (result)
 		{
  			var dia = parseInt(elems[0],10);
 			var mes = parseInt(elems[1],10);
 			var ano = parseInt(elems[2],10);
			result = TDigitos(elems[0]) && (dia > 0) && (dia < 32) &&
					 TDigitos(elems[0]) && (elems[0].length == 2)  &&
					 TDigitos(elems[1]) && (mes > 0) && (mes < 13) &&
					 TDigitos(elems[1]) && (elems[1].length == 2)  &&
					 TDigitos(elems[2]) && (elems[2].length == 4);
 		}
 		
  		if (!result)
 		{
 			alert('Por favor, ingrese la fecha en el formato correcto: dd/mm/aaaa');
			formField.focus();
		}
	} 
	
	return result;
}

function validateForm(theForm)
{
	if (theForm.value != "")
		{
		if (!validDate(theForm,"Fecha",true))
		return false;
		return true;
		}
}

function esnumero(campo)
	{
	if (isNaN(campo.value))
		{
		alert("Ingrese un Número Correcto");
		campo.select();
		return false;
		}
	}
	
function ValNumeros()
{
	if(event.keyCode<45 || event.keyCode>57){
		event.returnValue=false;
	}
}

function NumHora()
{
	if(event.keyCode<45 || event.keyCode>58){
		event.returnValue=false;
	}
}

function ValSoloNumeros()
{
	if(event.keyCode<48 || event.keyCode>57){
		event.returnValue=false;
	}
}

function esEmail(direccion)
{
	if (direccion.value != "")
	{
		var email=/^[A-Za-z0-9][\w-._]+[A-Za-z0-9]@[A-Za-z0-9]([\w-._]+[A-Za-z0-9]\.)+([A-Za-z]){2,4}$/;
		if (!email.test(direccion.value))
		{
			alert("La direccion de correo electronico provista es incorrecta");
			direccion.focus();
		}
	}
}


function esMail(direccion)
{
  var email=/^[A-Za-z0-9][\w-._]+[A-Za-z0-9]@[A-Za-z0-9]([\w-._]+[A-Za-z0-9]\.)+([A-Za-z]){2,4}$/;
  if (!email.test(direccion.value))
  {
	  alert("La direccion de correo electronico provista es incorrecta");
	  direccion.focus();
	  return false;
  }else{
    return true;
  }
}

function esCuit(cadena)
{
	var str = cadena.value;
	var mensaje = "CUIL/CUIT Incorrecto.\nEl Formato correcto es ##-########-#.";
	if (str!="")
		{
		var longitud = str.length;
		if (longitud < 13)
		{
			alert(mensaje);
			cadena.focus();
			cadena.select();
			return false;
		}
		if (!str.indexOf("-") == 2)
		{
			alert(mensaje);
			cadena.focus();
			cadena.select();
			return false;
		}
				
		if (str.lastIndexOf("-") != 11)
		{
			alert(mensaje);
			cadena.focus();
			cadena.select();
			return false;
		}
		var partes = str.split("-");
		var esnumero = true;
		for(var i=0;i<partes.length;i++)
		{
			if(isNaN(partes[i]))
			{
				esnumero = false;
			}
		}
		if (!esnumero)
		{
			alert(mensaje);
			cadena.focus();
			cadena.select();
			return false;
		}
	}
}

function TieneCaracteres(valor, caracteres) {
for (i = 0;  i < valor.length;  i++) {
		ch = valor.charAt(i);
		for (j = 0; j < caracteres.length; j++) {
			if (caracteres.charAt(j) == ch)
				break;
		}
		if (j>=caracteres.length)
			return false;
	}
	return true;
}

function SoloDigitos(valor) {
	return TieneCaracteres(valor, "0123456789");
}

function EsDecimal(valor)
{
	var cadena = valor.value;
	if (cadena != "")
	{
		if (!TieneCaracteres(cadena,"0123456789,"))
		{
			alert("El Monto Ingresado no es valido\nEn caso de ser decimal, utilice el separador \",\"");
			valor.focus();
			valor.select();
		}
	}
}

function EsNumero(valor) {
var cadena = valor.value;
	if (!TieneCaracteres(cadena, "0123456789,") || cadena.indexOf("0") == 0)
	{
		alert("Ingrese un Sueldo Valido");
		valor.focus();
		valor.select();
	}
}

function SoloCaracteres(valor) {
	return TieneCaracteres(valor, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþ \t\r\n\f");
}

function SoloCaracteresDigitos(valor) {
	return TieneCaracteres(valor, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþ0123456789-,. \t\r\n\f");
}

function esHora(cadena)
	{
	var str = cadena.value;
	var mensaje = "LA HORA ES INCORRECTA";
	if (str!="")
		{
		var longitud = str.length;
		var partes = str.split(":");
		var esnumero = true
		for (var i=0; i<partes.length; i++)
		{
			if(isNaN(partes[i]))
			{
				esnumero = false;
			}else{
			
				if(partes[0] < 1 || partes[0] > 24 || partes.length != 2)
				{
					esnumero = false
				}
				
				if( partes[1] < 0 || partes[1] > 59 || partes.length != 2)
				{
					esnumero = false
				}

			}

			if (!esnumero)
			{
				alert("Ingrese la hora en el formato correcto (HH:MM)");
				cadena.focus();
				cadena.select();
				return false;
			}
		}

	}
}
