//***********************************************
// Archivo: Common.js
// Funcionalidad: Mantener las funciones de validación en el Cliente
// Autor: Alejandro Magna Salinas
// Ultima Modificación: 11 de Febrero 2000
//***********************************************

//Función que Envia un mensaje en la barra de Estado de Windows.
function link(txt)
{
		window.defaultStatus=txt;
		window.status = txt;
		return true;
}


function blancos(txt){
	for(i=0; i<txt.length ; i++) {
		if (txt.charAt(i)!= " "){
			return true;
		}
	}		
	return false;
}


function valemail(txt){
	if (txt.value == "" || txt.value.indexOf('@', 0) == -1 || txt.value.indexOf('.', 0) == -1) 
		return false;
	else 
		return true;
}


function EMAIL(txt){
	if (txt.value == "" || txt.value.indexOf('@', 0) == -1 || txt.value.indexOf('.', 0) == -1) 
		return false;
	else 
		return true;
}


// Funcion que identifica y el valor corresponde a un Caracter
function IsChar(c)
{
		if(isNaN(c) || c == " ")
		{
			return true;
		}
		return false;
}

// Funcion que elimina los separadores de la Fecha
function SoloNumeros(strF){
	strDia = strF.substring(0,2);
	strMes = strF.substring(3,5);
	strAno = strF.substring(6,10);
	return (strAno + strMes + strDia);
}

//Función que verifica formato de Fecha "dd/mm/yyyy"
function ddmmyyyy(strFec) {
	strS1 = strFec.substring(2,3);
	strS2 = strFec.substring(5,6);
	if ((strS1 == "/") && (strS2 == "/")){
		return true;
	}
	else {
		return false;
	}
}


// Funcion que calcula la edad Respecto de una Fecha			
function EdadActual(strF1, strF2){
	lngTotal = Number(SoloNumeros(strF1));
	lngTotal2 = Number(SoloNumeros(strF2));
	Edad = parseInt((lngTotal - lngTotal2)/10000);
	return Edad;
}

// Funcion de Validación del RUT
function valrut(strRUT)
{
				
		var strRUTsd = "";
		var intLen = 0;
		var iM = 2;
		var iSuma = 0;
		var sDig = "";
		var digito = "";
		var iCDig = "";
		
		for(i = 0; i < strRUT.length ; i++) {
			if(!IsChar(strRUT.charAt(i)) || strRUT.charAt(i) == 'k' 
			|| strRUT.charAt(i) == 'K') {
				strRUTsd = strRUTsd + strRUT.charAt(i);
			}
		}
		
		intLen = strRUTsd.length;
		digito = strRUT.charAt(strRUT.length - 1)
		//alert(strRUTsd);
		
		for(i = intLen - 2; i >= 0; i--) {
			//alert(iSuma);
			iCDig = strRUTsd.charAt(i);
			//alert(iCDig);
			iSuma = iSuma + iCDig * iM;
            iM++;
            if(iM > 7) 
				iM = 2;
			
		}

		iCDig = 11 - (iSuma % 11);
			
		if(iCDig == 10){
			sDig = "k";
		}
		else {
			if(iCDig == 11) {
				sDig = "0";
			}
			else {
				sDig = iCDig;
			}
		}
		
		if (sDig == digito) {
			return true;
		}
		else {
			return false;
		}
		//return sDig;
}


// Funcion de Validación del RUT
function RUT(strRUT)
{
				
		var strRUTsd = "";
		var intLen = 0;
		var iM = 2;
		var iSuma = 0;
		var sDig = "";
		var digito = "";
		var iCDig = "";
		
		for(i = 0; i < strRUT.length ; i++) {
			if(!IsChar(strRUT.charAt(i)) || strRUT.charAt(i) == 'k' 
			|| strRUT.charAt(i) == 'K') {
				strRUTsd = strRUTsd + strRUT.charAt(i);
			}
		}
		
		intLen = strRUTsd.length;
		digito = strRUT.charAt(strRUT.length - 1)
		//alert(strRUTsd);
		
		for(i = intLen - 2; i >= 0; i--) {
			//alert(iSuma);
			iCDig = strRUTsd.charAt(i);
			//alert(iCDig);
			iSuma = iSuma + iCDig * iM;
            iM++;
            if(iM > 7) 
				iM = 2;
			
		}

		iCDig = 11 - (iSuma % 11);
			
		if(iCDig == 10){
			sDig = "k";
		}
		else {
			if(iCDig == 11) {
				sDig = "0";
			}
			else {
				sDig = iCDig;
			}
		}
		
		if (sDig == digito) {
			return true;
		}
		else {
			return false;
		}
		//return sDig;
}

// Funcion de validación de Números
function isInputNumber(inputText){
	var inputLength = inputText.length;
  var isNumber = true;
  for (i = 0; i < inputLength; i++){
		var aChar = inputText.substring(i,i+1);
    if (aChar < "0" || aChar > "9")
			if ((aChar == "ƒ") || (aChar == ".") || (aChar == ",")){
				isNumber = true;
			}
			else{
				isNumber = false;
			}
	}
	if (inputLength == 0){
		isNumber = false;
	}
	return isNumber;
}


// Función de validación de Email

function valemail(txt){
	if (txt == "" || txt.indexOf('@', 0) == -1 || txt.indexOf('.', 0) == -1) 
		return false;
	else 
		return true;
}


// Función de validación de Fecha
function validaFecha(dia,mes,ano)
{
		//dia = document.frmBus_Pro.ntxtDia_ini.value;
		largodia= dia.length;
		if (largodia==1)
		{
		 dia= "0" + dia
		}
		//mes = document.frmBus_Pro.scbxMes_ini.options[document.frmBus_Pro.scbxMes_ini.selectedIndex].value
		largomes=mes.length;
			if (largomes==1)
			{
			mes= "0" + mes
			}
			//ano = document.frmBus_Pro.ntxtAno_ini.value;
			fec = dia + '-' + mes + '-' + ano
			if ( fec!="" )
			{
			largo = fec.length;
			if ( largo != 10 )
			{
			   
			    alert("Fecha Incorrecta. Intente ingresar nuevamente.")
			    //window.document.frmBus_Pro.ntxtDia_ini.focus();
			    //window.document.frmBus_Pro.ntxtDia_ini.select();
			    return false;
			   
			}	
			{
				di = fec.substring(0, 2);
				if (isNaN(di))
				{
					alert("Día ingresado en la fecha es incorrecto. Intente ingresar nuevamente.")
					//window.document.frmBus_Pro.ntxtDia_ini.focus();
					//window.document.frmBus_Pro.ntxtDia_ini.select();
					return false;
				}
				{
					d = parseInt(di);
					mi = fec.substring(3, 5);
					if (isNaN(mi))
					{
						alert("Mes ingresado en la fecha es incorrecto. Intente ingresar nuevamente.")
						return false;
					}
					{
						m = parseFloat(mi);
						ai=fec.substring(6, 10);
						if (isNaN(ai))
						{
							alert("Año ingresado en la fecha es incorrecto. Intente ingresar nuevamente.")
							//window.document.frmBus_Pro.ntxtAno_ini.focus();
							//window.document.frmBus_Pro.ntxtAno_ini.select();
							return false;
						}
						{
							a = parseInt(ai);
							if ((a<0) || (a>2100))
							{
								alert("Año ingresado en la fecha está fuera de rango. Intente ingresar nuevamente.")
								//window.document.frmBus_Pro.ntxtAno_ini.focus();
								//window.document.frmBus_Pro.ntxtAno_ini.select();
								return false;
							}
							{
								resto = a % 4;
								if (resto==0)
								{
									bis=1;
								}
								if (resto!=0)
								{
									bis=0;
								}
								
								{
									if ((m==1) || (m==3) || (m==5) || (m==7) || (m==8) || (m==10) || (m==12))
									{
										if ((d<0) || (d>31))
										{
											alert("Día ingresado en la fecha está fuera de rango. Intente ingresar nuevamente.")
											//window.document.frmBus_Pro.ntxtDia_ini.focus();
											//window.document.frmBus_Pro.ntxtDia_ini.select();
											return false;
										}
										{
												return true
										}
									
									}
									{
										if ((m==4) || (m==6) || (m==9) || (m==11))
										{
											if ((d<0) || (d>30))
											{
												alert("Día ingresado en la fecha está fuera de rango. Intente ingresar nuevamente.")
												//window.document.frmBus_Pro.ntxtDia_ini.focus();
												//window.document.frmBus_Pro.ntxtDia_ini.select();
												return false;
											}
											{
												return true
											}
										}
										{
											if (m==2)
											{
												if (bis==1)
												{
													if ((d<0) || (d>29))
													{
														alert("Día ingresado en la fecha está fuera de rango. Intente ingresar nuevamente.")
														//window.document.frmBus_Pro.ntxtDia_ini.focus();
														//window.document.frmBus_Pro.ntxtDia_ini.select();
														return false;
													}
													{
														return true
													}
													
												}
												{
													if ((d<0) || (d>28))
													{
														alert("Día ingresado en la fecha está fuera de rango. Intente ingresar nuevamente.")
														//window.document.frmBus_Pro.ntxtDia_ini.focus();
														//window.document.frmBus_Pro.ntxtDia_ini.select();
														return false;
													}
													{
														return true
													}
													
												}
											}
										}
									}
								}
							}
						}
					}
				}
			}
		}
		else
		{
			alert("Debe ingresar Fecha")
			//window.document.frmBus_Pro.ntxtDia_ini.focus();
			//window.document.frmBus_Pro.ntxtDia_ini.select();
			return false;
		}
	}

	

	
