// JavaScript Document


/****  funciones necesarias para ajax ****/
function objetus(){
	var objetus=false; // siempre poner a false porque en el 2do intento da error
	try{
		objetus = new ActiveXObject("Msxml2.XMLHTTP");
	}catch(e){
		try{
			objetus =  new ActiveXObject("Microsoft.XMLHTTP");
		}catch(E){
			objetus = false;			
		}
	
	}
	if(!objetus && typeof XMLHttpRequest!='undefined'){
		objetus = new XMLHttpRequest();
	}
	return objetus;

}
function envia_form(){
	// asigna argumentos
	for (i=0;i<arguments.length;i++) {
		//alert("El argumento " + i + " es: " + arguments[i]);
		if (i==0) {
			accion=arguments[i];
			//alert(accion);
		}			
		if (accion=='traer_datos'){
			switch (i) 
			{ 
			   case i==1 : 
				 w_nrocto=arguments[i];
				  break; 
			   case i==2 : 
				  w_nrodoc=arguments[i]; 
				  break; 
			   case i==3 : 
				  w_email=arguments[i]; 
				  break; 
			}			
		}	
		if (accion=='actu_datos'){
			var arr=new Array(13);
			arr=arguments[i];
		//		alert(i+'..  '+arguments[i]+arr[7]);
			if (i==1){
				
				_values_send = "domcob="+arr[0]+"&domcor="+arr[1]+"&dompar="+arr[2]+"&telcob="+arr[3]+"&telcor="+arr[4];
				_values_send += "&telpar="+arr[5]+"&telcel="+arr[6]+"&email="+arr[7]+"&codemp="+arr[8]+"&nrocto="+arr[9];
				_values_send += "&origen="+arr[10]+"&nrodoc="+arr[11]+"&nomape="+arr[12]
				
				_id='resultado';
				_url="actu.php?";
			}		
		}	
	}
	var _objetus = false;
	_objetus = objetus();
	if (accion=='carga'){
		_values_send = null;
		_id = 'form';
		_url = "form.php?";
	}
	if (accion=='trae_datos'){
		_values_send = "w_nrocto="+w_nrocto+"&w_nrodoc="+w_nrodoc+"&w_email="+w_email;
		_id = 'datos';
		_url = "datos.php?";			
	}
	_objetus.open("POST",_url,true);
	_objetus.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	_objetus.send("&"+_values_send);
	_objetus.onreadystatechange=function (){
		if(_objetus.readyState==4){
			if(_objetus.status==200){
				document.getElementById('form').innerHTML=''
				document.getElementById(_id).innerHTML=_objetus.responseText;
			}				
		}else{
			document.getElementById('form').innerHTML='Cargando Datos..'
				
		}
	
	}		

}	


/****  funciones de usuario ****/
function hola(){	
	alert("hola")
	}

/*** funcion 'carga_form' que muestra el formulario inicial **/
function carga_form(){
	limpiar('form')
	limpiar('datos')
	limpiar('resultado')
	envia_form('carga')
	
}
/*** funcion 'trae datos' del asegurado (de ctacte o de domi_actu), recibe el formulario inicial **/
function trae_datos(obj){
	w_nrodoc=obj.txtnrodoc.value
	w_nrocto=obj.txtnrocto.value
	w_email=obj.txtemail_ini.value
	res = "";
	/// valida datos
	res=valida(obj)
	if (trim(res)==""){
		limpiar('form')
		envia_form('trae_datos',w_nrodoc,w_nrocto,w_email)
	}else{
		alert(res)	
	}	
}

/**  funcion 'actu_datos' que actualiza los datos originales en tabla domi_actu o los inserta si no existiesen **/
function actu_datos(f,origen){
	/** verifica si hubo cambios ***/
 // alert(origen)
  var j=1;
  var modi=false;
  for(i=0; i < f.elements.length; i++) {
   if (f.elements[i].type != "button" && f.elements[i].type != "submit" && f.elements[i].type != "reset") {
    
		elem = f.elements[i];
		
		if (elem.name!="txtnrocto" && elem.name!="txtcodemp" && elem.name!="txtnomape" && elem.name!="txtnrodoc"){
			//alert(i)
			// guarda primer elemento
			if(j==1){
				var texto1 = elem.value;	//modificado
				var nombre1 =elem.name;
			}else{
				
				//alert('Elemento original ('+elem.name+'): \n'+trim(elem.value))
				//alert('Elemento modificado ('+nombre1+'): \n'+trim(texto1))
				
				if(trim(texto1)!=trim(elem.value)){	// compara modificado con dato original
					modi=true;
				}
			}				
			if(j%2==0){
				j=1;
			}else{
				j++;
			}	
		}
	}
  } 
	if (modi){ // hubo cambios	
		// valida datos
		var datos=new Array(13);
		datos[0]=trim(f.DOM_COB.value);
		datos[1]=trim(f.DOM_COR.value);
		datos[2]=trim(f.DOM_PAR.value);
		datos[3]=trim(f.TEL_COB.value);
		datos[4]=trim(f.TEL_COR.value);
		datos[5]=trim(f.TEL_PAR.value);
		datos[6]=trim(f.txttelcel.value);
		datos[7]=trim(f.txtemail.value);
		datos[8]=trim(f.txtcodemp.value);
		datos[9]=trim(f.txtnrocto.value);
		datos[10]=origen;
		datos[11]=trim(f.txtnrodoc.value);
		datos[12]=trim(f.txtnomape.value);
		
		// valida mail
		res=valida2(datos[7]);
		
		if (!res){
			alert("Email no valido");	
			return 
		}
		limpiar('datos')
		envia_form('actu_datos',datos);
	
	}else{
		alert('modifique algun elemento!!')	
	}
}


function trim(stringToTrim) {
	// permite quitar espacios a izq y der del string
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}	

function valida2(txtemail){
		if(trim(txtemail)=="" || trim(txtemail).indexOf("@")==-1){
			return false;		
		}else{
			return true;	
		}		
}
function valida(frm){
		error=false;
		err_msg="";
			
		if(trim(frm.txtnrodoc.value)==""){
			error=true;
		}else{
			if(trim(frm.txtnrocto.value)==""){
				error=true;			
			}else{
				if(trim(frm.txtemail_ini.value)==""){
					error=true;		
				}			
			}			
		}
		if(error){
			//alert("Debe completar todos los datos!!");	
			err_msg = "Debe completar todos los datos!!";
			return err_msg
		}else{
			// contenido
			if(trim(frm.txtemail_ini.value).indexOf("@")==-1){
				error=true;
				err_msg+="Ingrese un E-Mail valido!!\n";		
			}
			
			if(isNaN(parseInt(trim(frm.txtnrodoc.value))) || parseInt(trim(frm.txtnrodoc.value))<=0){
				error=true;
				err_msg+="Cedula debe ser numerico y mayor a 0\n";
			}
			if(isNaN(parseInt(trim(frm.txtnrocto.value))) || parseInt(trim(frm.txtnrocto.value))<=0){
				error=true;
				err_msg+="Contrato debe ser numerico y mayor a 0\n";
			}			
			if(error){
				return err_msg
			}else{
				return "";
			}
		}	
	
}


function limpiar(id){
	document.getElementById(id).innerHTML="";
}