jQuery.noConflict();
jQuery(document).ready(
		function()
		{				
                jQuery("#valor_propiedad_uf").blur(
				function (){
                    calcula_valor_peso(jQuery("#valor_propiedad_uf"),jQuery("#valor_propiedad_peso"));				
                });
				jQuery("#valor_propiedad_peso").blur(function (){
                    calcula_valor_uf(jQuery("#valor_propiedad_peso"),jQuery("#valor_propiedad_uf"));
                });
				jQuery("#monto_pie").blur(function (){
                    calcula_valor_peso(jQuery("#monto_pie"),jQuery("#monto_pie_peso"));
                });
				jQuery("#monto_pie_peso").blur(function (){
                    calcula_valor_uf(jQuery("#monto_pie_peso"),jQuery("#monto_pie"));
                });
	            jQuery("#btn_limpiar").click(function(){
				jQuery("#warning").hide("slow");
				});
	            
		});	
				

function formatea_numeros(nro) {
	  var match;
	  var valor = nro;
	  match = /[^0-9\,\.]/g;	  
	  valor = valor.replace(match, '');	
	  match = /[\.]/g;	  // separador de miles
	  valor = valor.replace(match, '');	
	  match = /[\,]/;	  // separador decimal
	  valor = valor.replace(match, '.');	
    return valor;
	    
};  

function formatCurrency(num, dec) 
{
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+'.'+
	num.substring(num.length-(4*i+3));
	if (dec) {
	  return (((sign)?'':'-') + num + ',' + cents); // esto es para formatear decimales.
	}
	else {  
	  return (((sign)?'':'-') + num);
	};  
};


	function validar(){
		var valor_propiedad;
		var valor_propiedad_peso;
		var monto_pie;
		var monto_pie_peso;
		var monto_credito;
		var monto_credito_peso;
		var porc_financiamiento;
		var dividendo;
		

		if (document.formulario.monto_pie.value == '')
		{
			document.formulario.monto_pie.value = 0;
			document.formulario.monto_pie_peso.value = 0;
		}
		
		actualiza_montos();
		valor_propiedad = parseInt(document.formulario.valor_propiedad_uf.value);
		monto_pie = parseInt(document.formulario.monto_pie.value);
		monto_credito = parseFloat(document.formulario.monto_credito.value);
		porc_financiamiento = parseInt(document.formulario.porc_financiamiento.value);
               
                var vpp = document.formulario.valor_propiedad_peso.value.toString().replace('.','',true).replace('.','').replace('.','');
                var vmp = document.formulario.monto_pie_peso.value.toString().replace('.','',true).replace('.','').replace('.','');
                //document.write(vpp);
                //document.write(" ");
                //document.write(vmp);

                if (parseFloat(vpp) <= parseFloat(vmp))
                {
                        alert('El monto credito no puede ser mayor o igual al valor de la propiedad');
                        document.formulario.monto_pie.value = "";
                        document.formulario.monto_pie_peso.value = "" ;
                        document.formulario.monto_pie.focus;
			return false;
                } 
                
		celda_valor_propiedad = document.formulario.valor_propiedad_uf;
		celda_monto_pie = document.formulario.monto_pie;
		
		if  (isNaN(valor_propiedad))
		{
			mostrar('El valor de la propiedad debe ser num�rico');
			celda_valor_propiedad.focus();
			return false;
		}
		
		if (isNaN(monto_pie))
		{
			mostrar('El valor del monto del pie debe ser num�rico');
			celda_monto_pie.focus();
			return false;
		}
		valor_propiedad = parseFloat(formatea_numeros(document.formulario.valor_propiedad_uf.value));
		monto_pie = parseFloat(formatea_numeros(document.formulario.monto_pie.value));
		
		if (monto_pie > valor_propiedad )
			{
			alert("Monto del pie no puede ser mayor al valor propiedad");
                        document.formulario.monto_pie.value = "";
                        document.formulario.monto_pie_peso.value = "" ;
                        document.formulario.monto_pie.value.focus;
			return false;
			}
 
	document.formulario.submit();
  }
  
  	function actualiza_montos(){
		var valor_propiedad;
		var valor_propiedad_peso;
		var monto_pie;
		var monto_pie_peso;
		var formulario = document.formulario;
		var monto_credito;
		var monto_credito_peso;
		var porc_financiamiento;
		
		monto_credito = document.formulario.monto_credito;
		monto_credito_peso = document.formulario.monto_credito_peso;
		porc_financiamiento = document.formulario.porc_financiamiento;
		
		valor_propiedad = parseFloat(formatea_numeros(document.formulario.valor_propiedad_uf.value));
		valor_propiedad_peso = parseInt(formatea_numeros(document.formulario.valor_propiedad_peso.value));
		monto_pie = parseFloat(formatea_numeros(document.formulario.monto_pie.value));
		monto_pie_peso = parseInt(formatea_numeros(document.formulario.monto_pie_peso.value));

		if (monto_pie > valor_propiedad )
			{
			alert("Monto del pie no puede ser mayor al valor propiedad");
                                    document.formulario.monto_pie.value = "";
                                    document.formulario.monto_pie_peso.value = "";
                                    document.formulario.monto_pie.focus();
			return false;
			}else{	
		        if  ( (!isNaN(valor_propiedad)) && (!isNaN(valor_propiedad_peso)) && 
			        (!isNaN(monto_pie)) && (!isNaN(monto_pie_peso)))
		        {	
			        monto_credito.value = formatCurrency(valor_propiedad - monto_pie,true);
			        monto_credito_peso.value = formatCurrency(valor_propiedad_peso - monto_pie_peso,false);
			        porc_financiamiento.value = Math.round((parseFloat(formatea_numeros(monto_credito.value)) / valor_propiedad) * 100)
			
		        }
       
            }
		
  	}
	
  	function calcula_valor_peso(celda_valor_uf,celda_peso){
		var uf = jQuery('#valor_uf').val();
                var uff = uf.substr(0, 5);
		uf = parseFloat(formatea_numeros(uf))
  		var val_peso;
  		if (celda_valor_uf.val()== ''){
  			celda_peso.val('');
  		} else {	
  	    	valor=parseFloat(formatea_numeros(celda_valor_uf.val()));
            if ( isNaN(valor)) 
			{
            	mostrar("Debe ingresar un valor num�rico");
            	celda_valor_uf.focus();
            	return false;
           	} else 
			{
           		if (valor < 0)
				{
           			mostrar("El valor debe ser un n�mero positivo");
           			celda_valor_uf.focus();
           			return false;
           		}
           		val_peso = valor * uff;
	    		celda_peso.val(formatCurrency(val_peso, false));  
	    		celda_valor_uf.val(formatCurrency(valor, true));
	    	}
	    }
	    actualiza_montos();
  	}
  		
  	function calcula_valor_uf(celda_valor_peso,celda_uf){
		var uf = jQuery('#valor_uf').val();
                var uff = uf.substr(0, 5);
		uf = parseFloat(formatea_numeros(uf))
  		var val_peso;
  		if (celda_valor_peso.val() == ''){
  			celda_uf.val('');
  		} else {
  	    	valor=parseFloat(formatea_numeros(celda_valor_peso.val()));
            if ( isNaN(valor)) {
            	mostrar("Debe ingresar un valor num�rico");
            	celda_valor_peso.focus();
            	return false;
           	} else {
           		if (valor < 0){
           			mostrar("El valor debe ser un n�mero positivo");
           			celda_valor_peso.focus();
           			return false;
           		}
           		val_peso = valor / uff;
	    		celda_uf.val(formatCurrency(val_peso, true));
	    		celda_valor_peso.val(formatCurrency(valor, false));
	    	}
	    }
	    actualiza_montos();
  	}	
	
function mostrar(error) {
	jQuery("#warning").toggle();
	jQuery("#warning").html('<p class="mensaje_error">'+error+'</p>');
	//jQuery("#warning").css('background','#ffcccc');	
	
}


