//parámetros de la calculadora
var cnu_hombre=185
var cnu_mujer=200
var tasa=Math.pow(1.065, 1/12)-1
var tasa_anual=0.065
var total_acumulado
edad_inicio=25
edad_fin=65 

function cambia_tasa(campo){
	tasa_temp=Number(campo.value/100)
	tasa_anual = tasa_temp
	tasa= eval(Math.pow(eval(tasa_anual+1),1/12)-1)
actualiza(document.forms[1])
} 

function formato(cifra){
   cifra=String(cifra)
   largo=cifra.length
   j=0
   i=largo-1
   tmp=""
   do
	 if (j==3){
		tmp="."+tmp
		j=0}
	    else{
	    tmp=cifra.charAt(i)+tmp
		j=j+1	    
		i=i-1}
   while (i>=0)
   return tmp
}


function cambia_anos(forma)
{
   forma.anos_ahorro.value=eval(forma.edad_fin.value-forma.edad_inicio.value)
} 

function cambia_total_aportado(forma)
{
   forma.total_aportado.value=formato(eval(12*forma.monto.value*forma.anos_ahorro.value))
} 


function cambia_total_acumulado(forma){
aportes=forma.monto.value*12
agnos_intereces=0
var acumulado= new Array()
    agnos_ahorro=eval(forma.edad_fin.value-forma.edad_inicio.value)
    
	for (i = 1; i <= agnos_ahorro; i++)
	{
		if(i == 1)
		{
			acumulado[i]=aportes*(1+tasa_anual) 
		}
		else{
	
			acumulado[i]=(aportes+acumulado[i-1])*(1+tasa_anual) 
		}
	}
    total_acumulado=acumulado[agnos_ahorro]
    if(document.form1.sexo[0].checked)
	{
		    if(forma.edad_fin.value<65)
            {
                agnos_intereces=65-forma.edad_fin.value
	         } 
	}   
	else
  	{
		    if(forma.edad_fin.value<60)
            {
                agnos_intereces=60-forma.edad_fin.value
	         } 
   	}
    if(agnos_intereces!=0)
    {
        	for (i = 1; i <= agnos_intereces; i++)
	        {
		        if(i == 1)
		        {
			        acumulado[i]=total_acumulado*(1+tasa_anual) 
		        }
		        else
               {
			        acumulado[i]=acumulado[i-1]*(1+tasa_anual) 
		        }

	        }
        agnos_ahorro=agnos_intereces
    } 
	total_acumulado=acumulado[agnos_ahorro]
    forma.total_acumulado.value=formato(Math.round(acumulado[agnos_ahorro]))
}  


function cambia_sueldo_extra(forma){
if(document.form1.sexo[0].checked)
   forma.sueldo_extra.value=formato(Math.round(total_acumulado/cnu_hombre))
else
   forma.sueldo_extra.value=formato(Math.round(total_acumulado/cnu_mujer))
} 


function actualiza(forma)
{
	cambia_anos(forma)
	cambia_total_aportado(forma)
	cambia_total_acumulado(forma)
	cambia_sueldo_extra(forma)
} 

function actualiza2(forma, campo1,campo2){

if (campo1.form.sexo.value=="M"){
	campo1.value=25
	campo2.value=65
	}
	else {
	campo1.value=25
	campo2.value=60
	}
	cambia_anos(forma)
	cambia_total_aportado(forma)
	cambia_total_acumulado(forma)
	cambia_sueldo_extra(forma)
} 


function ver_monto(campo){
monto_tmp = Number(campo.value) 
if (isNaN(monto_tmp)){

	alert("Debe Ingresar Un número en el Monto a ahorrar.")
	campo.value=0
	actualiza(document.forms[1])}
else
	if (monto_tmp<0){
	alert("Debe ingresar un número positivo en el Monto a ahorrar.")
	campo.value=0
	actualiza(document.forms[1])}
	else
	actualiza(document.forms[1])
} 


function ver_edad(campo){ 

if (isNaN(campo.value)){

	alert("Las edades de inicio y término del ahorro deben ser números.")
	if (campo.name=="edad_inicio")
		campo.value=edad_inicio
	else
		campo.value=edad_fin
}
	else if((campo.form.sexo.value=="M")&&(campo.name=="edad_fin")&&(campo.value>65)){
		alert("La edad de inicio de ahorro no puede superar los 65 años para un hombre")
		campo.value=65}
			else if((campo.form.sexo.value=="F")&&(campo.name=="edad_fin")&&(campo.value>60)){
			alert("La edad de inicio de ahorro no puede superar los 60 años para una mujer")
			campo.value=60
			}
			else if (campo.value<=0){
				alert("Debe ingresar un valor positivo.")
				campo.value=25
				}
				else if (eval(campo.form.edad_inicio.value)>eval(campo.form.edad_fin.value)) {
							alert("La edad de término de ahorro debe ser mayor que la edad de inicio.")
							if (campo.name=="edad_inicio")
								campo.value=edad_inicio
							else
								campo.value=edad_fin
							}
							else {
							edad_inicio=campo.form.edad_inicio.value
							edad_fin=campo.form.edad_fin.value
							actualiza(campo.form)}
}


function sumar_inicio(campo, valor)
{


	if (campo.value<=0)
	{
	alert("Debe ingresar un valor positivo.")
	campo.value=25
	}


   if ((valor==-1)&&(eval(campo.form.edad_fin.value-campo.value)>=0)){
		campo.value=eval(campo.value-1)
		actualiza(document.forms[1])}
   else
		if ((eval(campo.value)>=eval(campo.form.edad_fin.value))&&(eval(campo.value<65))){
			
		alert("La edad de fin de ahorro debe ser mayor que la edad de inicio.")
		campo.value = campo.form.edad_fin.value}
		else
			if ((campo.form.sexo.value=="M")&&(campo.value>=65)){
			alert("La edad de fin de ahorro no puede superar los 65 años para un hombre")
			campo.value=25}
			else
				if ((campo.form.sexo.value=="F")&&(campo.value>=60)){
				alert("La edad de fin de ahorro no puede superar los 60 años para una mujer")
				campo.value=25
				actualiza(document.forms[1])}
				else{
				campo.value=eval(eval(campo.value)+1)
				actualiza(document.forms[1])
}}


function sumar_fin(campo, valor)
{


	if (campo.value<=0){
	alert("Debe ingresar un valor positivo.")
	}


   if ((valor==-1)&&(eval(campo.value-campo.form.edad_inicio.value)>0)){
		campo.value=eval(campo.value-1)
		actualiza(document.forms[1])}
		else if((valor==-1)&&(eval(campo.value-campo.form.edad_inicio.value)==0)){
		alert("La edad de fin de ahorro debe ser mayor que la edad de inicio.")
		if (campo.form.sexo.value=="M")
		campo.value = 65
		else
		campo.value = 60
		actualiza(document.forms[1])}
		else
		if ((eval(campo.value-campo.form.edad_inicio.value)==0)&&(campo.value<65)){
		campo.value=eval(eval(campo.value)+1)
		actualiza(document.forms[1])}
		else
		if ((eval(campo.value-campo.form.edad_inicio.value)<=0)&&(eval(campo.value<65))){
		alert("La edad de fin de ahorro debe ser mayor que la edad de inicio.")
		if (campo.form.sexo.value=="M")
		campo.value = 65
		else
		campo.value = 60
		actualiza(document.forms[1])}
			else
			if ((campo.form.sexo.value=="M")&&(campo.value>=65)){
			alert("La edad de fin de ahorro no puede superar los 65 años para un hombre")
			campo.value=65
			actualiza(document.forms[1])}
			else
				if ((campo.form.sexo.value=="F")&&(campo.value>=60)){
				//---
				alert("La edad de fin de ahorro no puede superar los 60 años para una mujer")
				campo.value=60
				actualiza(document.forms[1])}
				else{
				campo.value=eval(eval(campo.value)+1)
				actualiza(document.forms[1])}
}
