
/**
 * Funcion que hace una simulacion generica para un deposito
 * 
 * @param {Number} importe Importe del deposito en el momento de la contratacion
 * @param {String} tae Tae del deposito
 * @param {Number} plazo Plazo del deposito
 * @param {Number} pago_anuales Pagos anuales que proporciona el deposito (si no se indica se considera und eposito a vencimiento)
 * 
 * @return {JSON} Objeto de respuesta con el improte a vencimiento, intereses totales a percibir, intereses totales e intereses periodicos 
 */
function calcular_deposito(importe, tae, plazo, pagos_anuales)
{	
	//Por defecto calculamos a vencimiento
	var a_vencimiento = true;
	
	//Si hay pagos anuales es periodico
	if (pagos_anuales)
	{
		a_vencimiento = false;				
	}

	//Nominal del deposito
	var nominal = 0;

	//Objeto de respuesta del metodo
	var respuesta = 
		{
			importe_vencimiento: 0,
			intereses_totales_percibir: 0,
			intereses_totales: 0,
			intereses_periodicos: 0
		}
	
	if (a_vencimiento)
	{
		//Calculamos el nominal
		nominal = (Math.pow((tae + 1),(1 / (12 / plazo))) - 1) * 12 / plazo;
		
		//Calculamos los intereses totales a percibir
		respuesta.intereses_totales_percibir = nominal * (plazo / 12) * importe;
		
		//Calculamos el improte a vencimiento
		respuesta.importe_vencimiento = respuesta.intereses_totales_percibir + importe;
	}
	else
	{
		//Calculamos el nominal
		nominal = (Math.pow(tae + 1, (1 / (pagos_anuales))) - 1) * pagos_anuales;
		
		//Calculamos los intereses periodicos
		respuesta.intereses_periodicos = nominal * (1/pagos_anuales) * importe;
		
		//Calculamos los intereses totales a percibir
		respuesta.intereses_totales_percibir = respuesta.intereses_periodicos * (pagos_anuales / (12 / plazo));
		
		//Calculamos el importe a vencimiento
		respuesta.importe_vencimiento = respuesta.intereses_periodicos + importe;
	}
	
	//Calculamos los intereses totales (lo multiplicamos por 100 para pasarlo a %)
	respuesta.intereses_totales = (respuesta.intereses_totales_percibir / importe) * 100;
	
	return respuesta;
}

function mostrar_resultado(resultado)
{
	var doc = document.frm1;
	var pat, nombreAux;
	var linkContratacion = "";
	
	pat=/On Depósito/i;
	nombreAux = nombreProducto.replace(pat, "").substr(0, 10);
	
	if (doc.LinkFichaProducto.value!="")
	{
		nombreAux = "<a href='" + doc.LinkFichaProducto.value + "' title='" + nombreProducto + "'>" + nombreAux + "<img src='images/wvio004m_gifTransparente.gif' height='1px' width='1px' title='" + nombreProducto + "'></a>";
	}

	if (doc.LinkContratacion.value!="")
	{
		linkContratacion = "<a class=botonAzul2 href='" + doc.LinkContratacion.value + "' title='Contratar depósito " + nombreProducto + "'>Contrataci&oacute;n<img src='images/wvio004m_gifTransparente.gif' alt=' " + nombreProducto + "'></a>";
	}
	else
	{
		linkContratacion = "&nbsp;";
	}
	
	escribir("divR0", "<table cellpadding=0 cellspacing=0 width='90'><tr><td class=txtCalculo>" + nombreAux + "</td></tr></table>");
	escribir("divR1", "<table cellpadding=0 cellspacing=0 width='90'><tr><td class=txtCalculo>"+ formateaNum(outputA, 2)+" <b>Eur</b></td></tr></table>");
	escribir("divR2", "<table cellpadding=0 cellspacing=0 width='90'><tr><td class=txtCalculo>"+ formateaNum(outputB, 2) +" <b>Eur</b></td></tr></table>");
	escribir("divR3", "<table cellpadding=0 cellspacing=0 width='90'><tr><td class=txtCalculo>"+ formateaNum(outputG, 2)+" <b>&nbsp;%&nbsp;</b></td></tr></table>");
	escribir("divR4", "<table cellpadding=0 cellspacing=0 width='90'><tr><td class=txtCalculo>"+ formateaNum(outputC, 2)+" <b>Eur</b></td></tr></table>");
	escribir("divR5", linkContratacion);
}

