// Función aniadida al objeto Number para escribir decimales
Number.prototype.toVdosString = toVdosString;

function toVdosString(n,ss){ // n == nº de decimales [ss == cadena que puede sufijarse a la cadena número]
	var st = this.toFixed(n);
	var decre= (n==8)?/\.\d{8}$/
		: (n==7)?/\.\d{7}$/
		: (n==6)?/\.\d{6}$/
		: (n==5)?/\.\d{5}$/
		: (n==4)?/\.\d{4}$/
		: (n==3)?/\.\d{3}$/
		: (n==2)?/\.\d{2}$/
		: (n==1)?/\.\d{1}$/
		: /\.\d{0}[^\.]$/;
	var period=/\./
	var t = period.exec(st);//var t = tre.exec(st);
	var after = RegExp.rightContext;
	var before = RegExp.leftContext;
	var thre = /(-?\d+)(\d{3})/;
	while (thre.test(before)) {
		before = before.replace(thre, "$1.$2");
	}
	if(st.search(decre)!=-1){
		st = st.replace(decre,',')+ after;
		starr = st.split(',');
		starr[0] = before;
		st = starr[0]+','+starr[1];
	}
	if(ss){
		st += ss;
	}
	return st;
}


// CONSTANTES (simuladas) para realizar cálculos y presentar resultados en vistas del informe
var _365 = 365;// número de días del anio
var CLC = 4;// número de decimales para cálculos
var RND_2 = 2;// expresa número con 2 decimales tras la coma
var RND_6 = 6;// expresa número con 6 decimales tras la coma
var EUR=" EUR";// sufijo identificador de divisa en Euros, separado de la cantidad por un espacio
var P100="%";// sufijo identificador de valores expresados en tanto por 100

//----------------------------------------------------------------------- //
// Funciones JavaScript para el Catálogo de Cestas de Fondos de Inversión //
//----------------------------------------------------------------------- //
// Array de Alertas
var compToolsAlert = new Array();


function submitcEvolForm(f){
	var selected=0;
	for (var i=0; i<f.isinList.length; i++)
		if (f.isinList.options[i].selected==true)
			selected++;
	if (selected>0 && selected<11){

		var startDay = document.getElementById('startDay');
		var startMonth = document.getElementById('startMonth');
		var startYear = document.getElementById('startYear');
		var endDay = document.getElementById('endDay');
		var endMonth = document.getElementById('endMonth');
		var endYear = document.getElementById('endYear');

		if (startMonth.value != -1 && startYear.value != -1 && endMonth.value != -1 && endYear.value != -1){
			if (setStartDate(f)&& setEndDate(f) && checkDates(f)){

				var datei = new Date (startYear.value,startMonth.value,startDay.value);
				var datef = new Date (endYear.value,endMonth.value,endDay.value);

				document.getElementById('idate').value=datei.getTime();
				document.getElementById('fdate').value=datef.getTime();

				f.submit();
			}
		} else {
			alert(compToolsAlert['setDate']);
		}

	} else
		alert(compToolsAlert['setAlertMinMaxSelected']);

}
function startEvolForm()
{
	if (isinListVec!=''){
		isin = isinListVec.split(',');
		cboIsin = document.getElementById('isinList');
		for(var i=0; i < cboIsin.length;i++){
			for (var j=0; j < isin.length;j++){
				if (cboIsin.options[i].value==isin[j])
					cboIsin.options[i].selected=true;
			}
		}
	} else {
		cboIsin = document.getElementById('isinList');
		for(var i=0; i < cboIsin.length;i++){
			if (cboIsin.options[i].value==isinCfi){
				cboIsin.options[i].selected=true;
			}
		}
	}
	if (idate!= 0 && fdate!=0){
		cbo_month_start = document.getElementById('startMonth');
		cbo_year_start = document.getElementById('startYear');

		cbo_month_end = document.getElementById('endMonth');
		cbo_year_end = document.getElementById('endYear');

		var dateini = new Date (idate);
		var datefin = new Date (fdate);

		cbo_month_start.value=dateini.getMonth();
		cbo_year_start.value=dateini.getFullYear();
		cbo_month_start.selected =dateini.getMonth();
		cbo_year_start.selected =dateini.getFullYear();

		cbo_month_end.value=datefin.getMonth();
		cbo_year_end.value=datefin.getFullYear();
		cbo_month_end.selected =datefin.getMonth();
		cbo_year_end.selected =datefin.getFullYear();
	}
}
//------------------------------------------------------------- //
// Funciones JavaScript para las vistas de Carteras Subyacentes //
//------------------------------------------------------------- //

// Seleccionamos el tipo de cartera elegido por el usuario
function startCartEstrucForm() {
	if (tipoC_selected != ''){
		cboTipoC = document.getElementById('tipoC');
		for(var i=0; i < cboTipoC.length;i++){
			if (cboTipoC.options[i].value==tipoC_selected)
				cboTipoC.options[i].selected=true;
		}
	}
}

// Se encarga de habilitar o deshabilitar el combo
// en funcion de la opcion elegida del combo tipoC
function changeTipoC() {
	cboTipoC = document.getElementById('tipoC');
	if (cboTipoC.options[cboTipoC.selectedIndex].value=='-1')
		document.getElementById('tipoC_submit').disabled=true;
	else
		document.getElementById('tipoC_submit').disabled=false;
}

// Envio del formulario de compfiCatVsFrefForm
function submitCartEstrucForm(f) {
	f.submit();
}

////////////////// Dinamizacion del applet info{fi,ppi}{x,u}Caract /////////////////////

var ising;
function submitRentEvolForm(f) {
	if (document.getElementById('nrefg').checked==true)
		document.getElementById('ising').value=ising;
	else
		document.getElementById('ising').value='';

	f.submit();
}
function resetRentEvolForm() {
	document.getElementById('nrefg').checked=false;
	document.getElementById('diffm').options[7].selected=true;
}

