/*Desarrollo realizado por Asesores Bancarios y Financieros www.abanfin.com
Prohibida la reproducción total o parcial por cualquier medio salvo autorización expresa de Asesores Bancarios y Financieros*/
/*última revisión 11/07/2005*/
//--------------------------------------------------------------------------------------
// Tomar el valor del índice de referencia
// Mibor,Euribor, IRPH Cajas, IRPH Bancos, IRPH Conjunto de Entidades, CECA

function indice(posicion)
{
// Últimos datos publicados: 04/06
	var vreferencia=new Array(3.399,3.401,4.2,4.055,4.132,4.875,"Junio de 2006.");
	referencia=vreferencia[posicion];
	return referencia;
}
//-----------------------------------------------------------------------------------
// Genera el desplegable de las escala de gravamen irpf
function tgravamen()
{
// Revisar esta función para mozzila
// Territorio Común
var vvalue = new Array(0,0.15,0.24,0.28,0.37,0.45)
var vopcion = new Array("Seleccione la adecuada","15 %","24 %","28 %","37 %","45 %")

while (document.all.escala.options.length) document.all.escala.options.remove(0);
	for (i=0; i<=5; i++)
	{
			oOption = document.createElement("OPTION");
			oOption.text=vopcion[i];
			oOption.value=vvalue[i];
			document.all.escala.add(oOption);
			document.all.escala.disabled=false;
	}

}
//-----------------------------------------------------------------------------------

// Calcula el tipo de gravamen en función de los ingresos

function tiposgravamen(residencia,importe,moneda)
{

// Territorio Comun, (1) 4161.60,14357.52,26842.32,46818
var tcomun=new Array(0.15,0.24,0.28,0.37,0.45)
var escalacomun = new Array(4161.60,14357.52,26842.32,46818,0,0)
// Comunidad Foral Navarra(2) 3468,7548,15708,28458,41718,54978
var tnavarra=new Array(0.14,0.225,0.255,0.28,0.365,0.42,0.44)
var escalanavarra = new Array(3468,7548,15708,28458,41718,54978)
// País Vasco, (3) 3746,6838,14151,28093,42659,62427
var tvasco=new Array(0,0.15,0.23,0.28,0.35,0.42,0.48)
var escalapv = new Array(3746,6838,14151,28093,42659,62427)

// Calculo del tipo a aplicar
// Territorio común, 10/01/2006 revisado conforme a la escala del 2006
if (moneda ===0 )
{ 
	for (i=0; i<=5; i++)
	{
	escalacomun[i]=Math.round(escalacomun[i]*166.386);
	escalanavarra[i]=Math.round(escalanavarra[i]*166.386);
	escalapv[i]=Math.round(escalapv[i]*166.386);
	}
}
if (residencia==1 && importe<=escalacomun[0]){tipo=tcomun[0]; return tipo;}
if (residencia==1 && importe<=escalacomun[1]){tipo=tcomun[1]; return tipo;}
if (residencia==1 && importe<=escalacomun[2]){tipo=tcomun[2]; return tipo;}
if (residencia==1 && importe<=escalacomun[3]){tipo=tcomun[3]; return tipo;}
if (residencia==1 && importe>escalacomun[3]){tipo=tcomun[4]; return tipo;}

// Navarra Modifica y revisada 26/01/2006

if (residencia==2 && importe<=escalanavarra[0]){tipo=tnavarra[0]; return tipo;}
if (residencia==2 && importe<=escalanavarra[1]){tipo=tnavarra[1]; return tipo;}
if (residencia==2 && importe<=escalanavarra[2]){tipo=tnavarra[2]; return tipo;}
if (residencia==2 && importe<=escalanavarra[3]){tipo=tnavarra[3]; return tipo;}
if (residencia==2 && importe<=escalanavarra[4]){tipo=tnavarra[4]; return tipo;}
if (residencia==2 && importe<=escalanavarra[5]){tipo=tnavarra[5]; return tipo;}
if (residencia==2 && importe>escalanavarra[5]){tipo=tnavarra[6]; return tipo;}

/* PaísVasco Modificado 7/05/2006 cuando encuentro los nuevos tipos
Ejercicio 2006*/
if (residencia==3 && importe<=escalapv[0]){tipo=tvasco[0];return tipo;}
if (residencia==3 && importe<=escalapv[1]){tipo=tvasco[1];return tipo;}
if (residencia==3 && importe<=escalapv[2]){tipo=tvasco[2];return tipo;}
if (residencia==3 && importe<=escalapv[3]){tipo=tvasco[3];return tipo;}
if (residencia==3 && importe<=escalapv[4]){tipo=tvasco[4];return tipo;}
if (residencia==3 && importe<=escalapv[5]){tipo=tvasco[5];return tipo;}
if (residencia==3 && importe>escalapv[5]){tipo=tvasco[4];return tipo;}

return tipo;
}

//-----------------------------------------------------------------------------------

// Calcula el tipo de ajuste de las plusvalías del régimen transitorio

function rtransitorio(activo,antiguedad,diasajuste)
{
// Acciones cotización oficial, exentos las adquiridas antes del 31/12/1991
var acciones=new Array(1,0.75,0.50,0.25,0.0)
// Fondos de inversion y acciones no cotizacas, exentos adquiridos antes 31/12/1988
var fondos=new Array(1,0.8572,0.7144,0.5716,0.4288,0.2860,0.1432,0)


// Calculo del régimen transitorio de las acciones cotizadas
if (activo==1 && antiguedad <= 730 + diasajuste){tajuste=acciones[0]; return tajuste;}
if (activo==1 && antiguedad > 730 + diasajuste && antiguedad <= 1095+diasajuste){tajuste=acciones[1]; return tajuste;}
if (activo==1 && antiguedad > 1095 + diasajuste && antiguedad <= 1460+diasajuste){tajuste=acciones[2]; return tajuste;}
if (activo==1 && antiguedad > 1460 + diasajuste && antiguedad <= 1825+diasajuste){tajuste=acciones[3]; return tajuste;}
if (activo==1 && (antiguedad > (1825 + diasajuste))){tajuste=acciones[4];return tajuste;}

// Calculo del régimen transitorio de los fondos de inversión y acciones no cotizadas
if (activo==2 && antiguedad <= 730+diasajuste){tajuste=fondos[0]; return tajuste;}
if (activo==2 && antiguedad > 730 + diasajuste && antiguedad <= 1095+diasajuste){tajuste=fondos[1]; return tajuste;}
if (activo==2 && antiguedad > 1095 + diasajuste && antiguedad <= 1460+diasajuste){tajuste=fondos[2]; return tajuste;}
if (activo==2 && antiguedad > 1460 + diasajuste && antiguedad <= 1825+diasajuste){tajuste=fondos[3]; return tajuste;}
if (activo==2 && antiguedad > 1825 + diasajuste && antiguedad <= 2190+diasajuste){tajuste=fondos[4]; return tajuste;}
if (activo==2 && antiguedad > 2190 + diasajuste && antiguedad <= 2555+diasajuste){tajuste=fondos[5]; return tajuste;}
if (activo==2 && antiguedad > 2555 + diasajuste && antiguedad <= 2920+diasajuste){tajuste=fondos[6]; return tajuste;}
if (activo==2 && antiguedad > 2920+diasajuste){tajuste=fondos[7]; return tajuste;}

return tajuste;
}

//-------------------------------------------------------------------------------------
/* Tomar el valor del coeficiente de actualización de los valores de compra en los territorios Forales de Álava, Guipuzcoa y Vizcaya*/

function coeficientepv(posicion)
{
//Orden de los coeficientes, publicados en el BOP número 237, 11/12/2003
/*1994 y anteriores,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004
var vcoeficiente = new Array(1.230,1.306,1.258,1.230,1.203,1.170,1.130,1.088,1.050,1.020,1);*/
/* Revisados a 11/01/2006 */
//1994 y anteriores,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006
var vcoeficiente = new Array(1.307,1.388,1.337,1.307,1.278,1.243,1.201,1.156,1.115,1.085,1.053,1.020,1);

coeficiente=vcoeficiente[posicion];
return coeficiente;
}

//-----------------------------------------------------------------------
//Otras cuestiones sobre normativa foral
// Navarra, exención de variación patrimonial cuando se trate de una transmisión onerosa y no supere los 3.000.- // Euros en el año natural 