var ajax;
var default_text = "( Seleccione )";

function MyAjax(){ 
	/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
	lo que se puede copiar tal como esta aqui */
	var xmlhttp=false;
	try {
		// Creacion del objeto AJAX para navegadores no IE
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e){
		try	{
			// Creacion del objet AJAX para IE
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		}catch(E){
			if (!xmlhttp && typeof XMLHttpRequest!='undefined') xmlhttp=new XMLHttpRequest();
		}
	}
	return xmlhttp; 
}

function selectClear(object){
	object.options.length = 0;
	opt = new Option(''+default_text+'', '-1');
	object.options[object.options.length] = opt;
}

function funcionCallback(){
	// Comprobamos si la peticion se ha completado (estado 4)
	if( ajax.readyState == 4 ){
		// Comprobamos si la respuesta ha sido correcta (resultado HTTP 200)
		if( ajax.status == 200 ){
			// Escribimos el resultado en la pagina HTML mediante DHTML
			if (ajax.responseText != 0){
				return true;
			}else{
				return false;
			}
		}
	}
}

function validarEncuesta(form){
	form = document.getElementById('encuesta');
	sw=0;
    for (i=0;i<form.respuesta.length && sw==0;i++) {
        if (form.respuesta[i].checked) sw=1;
    }
    if (!sw) {
        alert('ˇdebe seleccionar un(a) Respuesta!!');
		form.respuesta[0].focus();
        return false;
    }
    form.submit();
}


function carculaDespacho(comuna_id){
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=calculaDespacho&class=tarifa&comuna_id="+comuna_id, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			eval("var despacho =" + ajax.responseText);
			
			document.getElementById('hidden_despacho').value = despacho.precio;
			document.getElementById('lbl_despacho').innerHTML = formato_miles(despacho.precio);
			if(despacho.precio > 0){
				document.getElementById('valor_despacho').innerHTML = 'Valor Despacho '+ despacho.tanamo + ':';
				document.getElementById('hidden_total').value = parseInt(document.getElementById('hidden_subtotal').value) + parseInt(despacho.precio);	
				document.getElementById('lbl_total').innerHTML = formato_miles(parseInt(document.getElementById('hidden_subtotal').value) + parseInt(despacho.precio));	
			}
			//document.getElementById('despacho').value = unescape(despacho.precio);
	    }	
	}
}
function formato_miles(texto){
	var invertido = "";
	var i=0, j=0;
	var cnt=0;
	var etexto = new String("");
	var dtexto = new String(texto);
	var largo=0;
	 largo = dtexto.length;
	 for ( i=largo; i>=0 ; i--)
		if (dtexto.charAt(i) >= "0" && dtexto.charAt(i) <= "9")
			etexto = etexto + dtexto.charAt(i);
	  largo = etexto.length;
	  dtexto = "";
	  for ( i=0; i <= largo; i++ )
	  {
	    if ( cnt == 3 )
	    {
	      if (i!= largo)
		      dtexto = dtexto + '.';
	      dtexto = dtexto + etexto.charAt(i,1);
	      cnt = 1;
	    }
	    else
	    { 
	      dtexto = dtexto + etexto.charAt(i,1);
	      cnt++;
	    }
	  }
		etexto="";
		for ( i=dtexto.length; i>=0 ; i--)
		  etexto = etexto + dtexto.charAt(i,1);
	 return (etexto);
}


function changeCiudad(region_id){
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=searchCiudad&class=ciudad&region_id="+region_id, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			var objDDL = document.getElementById("ciudad_id");
			eval("var ciudades=" + ajax.responseText);
	     	
	     	if(ciudades.length > 0) {	
	     	 	objDDL.options.length = 0;
		     	
		     	for(i=0; i< ciudades.length;i++){
		  			//var text    		= unescape(ciudades[i].text);
		  			var text    		= unescape(ciudades[i].text.replace(/\+/gi," "));
		         	var value    		= unescape(ciudades[i].value);
		         	if(i==0){
		         		var option    = new Option('( Seleccione )', '0');
		         	}
		         	var option    = new Option(text, value);
		  
		         	try{
		            	objDDL.add(option,null);
		         	}catch (e){
		            	objDDL.add(option,-1);
		        	}
		     	}
		    	//objDDL.style.display = "block";
		    } else {
	     		selectClear(objDDL);
	     	}
	    }	
	}
}


function changeCiudadTarifaria(region_id){
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=searchCiudadTarifaria&class=ciudad&region_id="+region_id, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			var objDDL = document.getElementById("ciudad_id");
			eval("var ciudades=" + ajax.responseText);
	     	
	     	if(ciudades.length > 0) {	
	     	 	objDDL.options.length = 0;
		     	
		     	for(i=0; i< ciudades.length;i++){
		  			//var text    		= unescape(ciudades[i].text);
		  			var text    		= unescape(ciudades[i].text.replace(/\+/gi," "));
		         	var value    		= unescape(ciudades[i].value);
		         	if(i==0){
		         		var option    = new Option('( Seleccione )', '0');
		         	}
		         	var option    = new Option(text, value);
		  
		         	try{
		            	objDDL.add(option,null);
		         	}catch (e){
		            	objDDL.add(option,-1);
		        	}
		     	}
		    	//objDDL.style.display = "block";
		    } else {
	     		selectClear(objDDL);
	     	}
	    }	
	}
}

function changeComuna(ciudad_id){
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=searchComuna&class=comuna&ciudad_id="+ciudad_id, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			var objDDL = document.getElementById("comuna_id");
			eval("var comunas=" + ajax.responseText);
	     	
	     	if(comunas.length > 0) {	
	     	 	objDDL.options.length = 0;
		     	
		     	for(i=0; i< comunas.length;i++){
		  			//var text    		= unescape(comunas[i].text);
		  			var text    		= unescape(comunas[i].text.replace(/\+/gi," "));
		         	var value    		= unescape(comunas[i].value);
		         	if(i==0){
		         		var option    = new Option('( Seleccione )', '0');
		         	}
		         	var option    = new Option(text, value);
		  
		         	try{
		            	objDDL.add(option,null);
		         	}catch (e){
		            	objDDL.add(option,-1);
		        	}
		     	}
		    	//objDDL.style.display = "block";
		    } else {
	     		selectClear(objDDL);
	     	}
	    }	
	}
}


function changeComunaTarifaria(ciudad_id){
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=searchComunaTarifaria&class=comuna&ciudad_id="+ciudad_id, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			var objDDL = document.getElementById("comuna_id");
			eval("var comunas=" + ajax.responseText);
	     	
	     	if(comunas.length > 0) {	
	     	 	objDDL.options.length = 0;
		     	
		     	for(i=0; i< comunas.length;i++){
		  			//var text    		= unescape(comunas[i].text);
		  			var text    		= unescape(comunas[i].text.replace(/\+/gi," "));
		         	var value    		= unescape(comunas[i].value);
		         	if(i==0){
		         		var option    = new Option('( Seleccione )', '0');
		         	}
		         	var option    = new Option(text, value);
		  
		         	try{
		            	objDDL.add(option,null);
		         	}catch (e){
		            	objDDL.add(option,-1);
		        	}
		     	}
		    	//objDDL.style.display = "block";
		    } else {
	     		selectClear(objDDL);
	     	}
	    }	
	}
}



function searchParticipante(string){
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=searchParticipante&class=participante&string="+string, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			var objDDL = document.getElementById("participante_id");
			alert(ajax.responseText);
			/*
			eval("var comunas=" + ajax.responseText);
	     	
	     	if(comunas.length > 0) {	
	     	 	objDDL.options.length = 0;
		     	
		     	for(i=0; i< comunas.length;i++){
		  			var text    		= unescape(comunas[i].text);
		         	var value    		= unescape(comunas[i].value);
		         	var defaultSelected = (value == region_id) ? true : false;
		         	var selected 		= (value == region_id) ? true : false;
		         	if(i==0){
		         		var option    = new Option('( Seleccione )', '0');
		         	}
		         	var option    = new Option(text, value, defaultSelected, selected);
		  
		         	try{
		            	objDDL.add(option,null);
		         	}catch (e){
		            	objDDL.add(option,-1);
		        	}
		     	}
		    	objDDL.style.display = "block";
		    } else {
	     		selectClear(objDDL);
	     	}
	     	*/
		}	
	}
}


function searchProducto(string){
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=searchProducto&class=producto&string="+string, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			var objDDL = document.getElementById("id_comuna");
			
			eval("var comunas=" + ajax.responseText);
	     	
	     	if(comunas.length > 0) {	
	     	 	objDDL.options.length = 0;
		     	
		     	for(i=0; i< comunas.length;i++){
		  			var text    		= unescape(comunas[i].text);
		         	var value    		= unescape(comunas[i].value);
		         	var defaultSelected = (value == region_id) ? true : false;
		         	var selected 		= (value == region_id) ? true : false;
		         	if(i==0){
		         		var option    = new Option('( Seleccione )', '0');
		         	}
		         	var option    = new Option(text, value, defaultSelected, selected);
		  
		         	try{
		            	objDDL.add(option,null);
		         	}catch (e){
		            	objDDL.add(option,-1);
		        	}
		     	}
		    	objDDL.style.display = "block";
		    } else {
	     		selectClear(objDDL);
	     	}
		}	
	}
}





function getMedicos(empresa_id){
	
	ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=getMedicos&class=medicos&empresa_id="+empresa_id, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
			var objDDL = document.getElementById("id_medico");
			
			eval("var medicos=" + ajax.responseText);
	     	
	     	if(medicos.length > 0) {	
	     	 	objDDL.options.length = 0;
		     	
		     	for(i=0; i< medicos.length;i++){
		  			var text    		= unescape(medicos[i].text);
		         	var value    		= unescape(medicos[i].value);
		         	var defaultSelected = (value == empresa_id) ? true : false;
		         	var selected 		= (value == empresa_id) ? true : false;
		         	if(i==0){
		         		var option    = new Option('( Seleccione )', '0');
		         	}
		         	var option    = new Option(text, value, defaultSelected, selected);
		  
		         	try{
		            	objDDL.add(option,null);
		         	}catch (e){
		            	objDDL.add(option,-1);
		        	}
		     	}
		    } else {
	     		selectClear(objDDL);
	     	}
		}	
	}
}


function cargaPrestaciones(empresa_id){
    
    getElementId('cargando').style.display = 'block';
    ajax = MyAjax();
	ajax.open( "GET", "ajax_remote.php?_method=cargaPrestaciones&class=prestacion&empresa_id="+empresa_id, true );
	ajax.send( null );
	
	ajax.onreadystatechange=function(){
		
		if(funcionCallback()){
	        getElementId('cargando').style.display = 'none';
	        getElementId('boton_cargando').style.display = 'none';
	        
    		alert('Se cargarón un total de '+ajax.responseText+ ' prestaciones.');
		}	
	}  
}