
function abrirventana(pag)
{	
	eval("ventanas=window.open('"+ pag +"','ventana','toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes,copyhistory=no,width=580,height=490,left=100,top=10')");
}


/*'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Declaración:	RecargarPantalla()
' Misión:		Cuando recargamos una pantalla hay que ejecutar algunas funciones JScript.
' Entrada:		N/A
' Salida:		N/A 
' Retorno:		N/A
' Efectos:		Muestra u oculta la tabla de los objetos, y deshabilita 
'				los controles de dentro
' Observaciones:	N/A
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''*/
function RecargarPantalla(){
	
	OcultarControl('muerte_infarto','tr_muerte_infarto');
	CambiarCapitalMuerteInfarto();
	
	
	OcultarControl('invalidez_temporal','tr_invalidez_temporal');
	OcultarControl('invalidez_temporal','tr_invalidez_franquicia');
	CambiarCapitalInvalidezTemporal();
	OcultarControl('indemnizacion_hospitalizacion','tr_indemnizacion_hospitalizacion');
	OcultarControl('as_concertados','tr_as_concertados');
	OcultarControl('as_libre','tr_as_libre');
	BloquearDiasFranquicia();
	
	AsignarProfesion();
	
	FormatearCapital(window.document.MainForm.capital_muerte_accidente);
	FormatearCapital(window.document.MainForm.capital_invalidez_permanente);
}//function


var elementoMarcado = "";









//Función para generar Errores
function GenerarError ( vntElemento, strMensaje ) {
	//Si es un Explorer llamamos a marcarElemento
	if ( IE4 || IE5 ) {
		marcarElemento( vntElemento );
		elementoMarcado = vntElemento;
	} else {
		alert(strMensaje);
	}
}




function ValidateGeneralData(){
	var Provincia = window.document.MainForm.provincia.options[window.document.MainForm.provincia.selectedIndex].value;
	if (Provincia == ''){
		m_strMensaje = 'La provincia es un dato obligatorio.';
		GenerarError ( window.document.MainForm.elements['provincia'].id, m_strMensaje )
		return;
	}
	
	return(true);
}


function ValidateInsuredData(){
	
	//Validamos la fecha de nacimiento
	var intDay = window.document.forms['MainForm'].dia_nactomador.selectedIndex;
	var intMonth = window.document.forms['MainForm'].mes_nactomador.selectedIndex;
	var intYear = window.document.forms['MainForm'].ano_nactomador.selectedIndex;
		
	intDay = window.document.forms['MainForm'].dia_nactomador.options[intDay].value;
	intMonth = DameMesANumero(window.document.forms['MainForm'].mes_nactomador.options[intMonth].value);
	intYear = window.document.forms['MainForm'].ano_nactomador.options[intYear].value;
	
	//Fecha de nacimiento posterior a Hoy
	if ( DameDiasDiferencia(intDay, intMonth, intYear, diaHoy, mesHoy, anoHoy) > 0 ) {
		m_strMensaje = 'La fecha de nacimiento no es válida.';
		GenerarError( window.document.forms['MainForm'].ano_nactomador.id, m_strMensaje); 
		return;
	}
	
	
	var Edad = DimeAnosDiferencia(intDay, intMonth, intYear, diaHoy, mesHoy, anoHoy);
	
	if (Edad < 14){
		m_strMensaje = 'El asegurado debe tener al menos 14 años.';
		GenerarError ( window.document.forms['MainForm'].ano_nactomador.id, m_strMensaje )
		return;
	}
	
	var Sexo = window.document.MainForm.sexo.options[window.document.MainForm.sexo.selectedIndex].value;
	if (Sexo == ''){
		m_strMensaje = 'El Sexo es un dato obligatorio.';
		GenerarError ( window.document.MainForm.elements['sexo'].id, m_strMensaje )
		return;
	}
	
	var TipoTrabajador = window.document.MainForm.tipo_trabajador.options[window.document.MainForm.tipo_trabajador.selectedIndex].value;
	if (TipoTrabajador == ''){
		m_strMensaje = 'El tipo de trabajador es un dato obligatorio.';
		GenerarError ( window.document.MainForm.elements['tipo_trabajador'].id, m_strMensaje )
		return;
	}
	
	var AltaSS = window.document.MainForm.alta_ss.options[window.document.MainForm.alta_ss.selectedIndex].value;
	if (AltaSS == ''){
		m_strMensaje = 'El campo alta en el sistema de seguridad social es un dato obligatorio.';
		GenerarError ( window.document.MainForm.elements['alta_ss'].id, m_strMensaje )
		return;
	}
	
	var Desempleado = window.document.MainForm.desempleado.options[window.document.MainForm.desempleado.selectedIndex].value;
	if (Desempleado == ''){
		m_strMensaje = 'El campo actualmente esta desempleado es un dato obligatorio.';
		GenerarError ( window.document.MainForm.elements['desempleado'].id, m_strMensaje )
		return;
	}
	
	
	
	var ConduceMotos = window.document.MainForm.conduce_motos.options[window.document.MainForm.conduce_motos.selectedIndex].value;
	if (ConduceMotos == ''){
		m_strMensaje = 'El campo conduce motocicleta / ciclomotor es obligatorio.';
		GenerarError ( window.document.MainForm.elements['conduce_motos'].id, m_strMensaje )
		return;
	}
	
	
	if (window.document.MainForm.profesion.selectedIndex == -1){
		m_strMensaje = 'El campo Profesión es obligatorio.';
		GenerarError ( window.document.MainForm.elements['profesion'].id, m_strMensaje )
		return;
	}
	
	var Profesion = window.document.MainForm.profesion.options[window.document.MainForm.profesion.selectedIndex].value;
	
	if (Profesion == ''){
		m_strMensaje = 'El campo Profesión es obligatorio.';
		GenerarError ( window.document.MainForm.elements['profesion'].id, m_strMensaje )
		return;
	}
	return(true);
		
}	


function ValidateGuarantesData(){

	var CapitalMuerteAccidentes = CNum( window.document.MainForm.capital_muerte_accidente.value );
	if (CapitalMuerteAccidentes == 0){
		m_strMensaje = 'El campo Muerte por Accidente es obligatorio.';
		GenerarError ( window.document.MainForm.elements['capital_muerte_accidente'].id, m_strMensaje )
		return;
	}
	//El capital máximo es de 240404
	if (CapitalMuerteAccidentes > 240404){
		m_strMensaje = 'El capital máximo de Muerte por Accidente es de 240.404,00 Euros.';
		GenerarError ( window.document.MainForm.elements['capital_muerte_accidente'].id, m_strMensaje )
		return;
	}
	//El capital mínimo es de 6000
	if (CapitalMuerteAccidentes < 6000){
		m_strMensaje = 'El capital mínimo de Muerte por Accidente es de 6.000,00 Euros.';
		GenerarError ( window.document.MainForm.elements['capital_muerte_accidente'].id, m_strMensaje )
		return;
	}
	
	
	//Validaciones de Invalidez  Permanente
	
	var CapitalInvalidezPermanente = CNum(window.document.MainForm.capital_invalidez_permanente.value);
	
	//El capital máximo es de 240404
	if (CapitalInvalidezPermanente > 240404){
		m_strMensaje = 'El capital máximo de Invalidez Permanente es de 240.404,00 Euros.';
		GenerarError ( window.document.MainForm.elements['capital_invalidez_permanente'].id, m_strMensaje )
		return;
	}
	//El capital mínimo es de 6000
	if (CapitalInvalidezPermanente > 0 && CapitalInvalidezPermanente < 6000){
		m_strMensaje = 'El capital mínimo de Invalidez Permanente es de 6.000,00 Euros.';
		GenerarError ( window.document.MainForm.elements['capital_invalidez_permanente'].id, m_strMensaje )
		return;
	}
		
	
	return(true);
}

function FillProfesiones(){
	var strOption;
	
	for (var intProfesiones=0;intProfesiones<=parent.datos1.MainForm.profesion.length-1;intProfesiones++){
		
		strOption = null;
		strPar1=parent.datos1.MainForm.profesion.options[intProfesiones].text;
		strPar2=parent.datos1.MainForm.profesion.options[intProfesiones].value;
		
		strOption = new Option(strPar1,strPar2);
		
		eval("parent.datos2.MainForm.profesion.options[intProfesiones]=strOption");
		
		
		if (intProfesiones==0) {
			parent.datos2.MainForm.profesion.options[intProfesiones].selected=true;
		}
	}
	
	
	var CadAux ='';
	for (var intC=0;intC<135;intC++){
		CadAux = CadAux + ' ';	
	}
	var strOption1 = new Option(CadAux ,'');
	document.MainForm.profesion.options[document.MainForm.profesion.length-1]=strOption1;
	document.MainForm.profesion.options[document.MainForm.profesion.length-1].selected=false;
	window.document.MainForm.profesion.selectedIndex = -1;
	parent.datos2.MainForm.letras.disabled=false;
	parent.datos2.MainForm.profesion.disabled=false;
	AsignarProfesion();
	
};

/*
function LoadProfesiones(){
	//Lanza la carga de modelos de una marca seleccionada
	parent.datos1.MainForm2.hddIDLetra.value=document.MainForm.letras.value;
	parent.datos1.MainForm2.hddType.value='1';
	parent.datos1.ClearProfesiones(2);
	

	parent.datos2.MainForm.letras.disabled=true;
	parent.datos2.MainForm.profesion.disabled=true;
	
	strOption1 = new Option('Cargando...','');
	document.MainForm.profesion.options[0]=strOption1;
	document.MainForm.profesion.options[0].selected=false;
	
	
	var CadAux = '';
	for (var intC=0;intC<135;intC++){
		CadAux = CadAux + ' ';	
	}
	strOption1 = new Option(CadAux,'');
	document.MainForm.profesion.options[1]=strOption1;
	document.MainForm.profesion.options[1].selected=false;
	
	
	parent.datos1.ThrowForm();
}
*/

function BloquearDiasFranquicia(){
	if ( IE4 || IE5 ) {
		var CapitalInvalidezTemporal = getObj('capital_invalidez_temporal').value;
		var FranquiciaInvalidezTemporal = getObj('franquicia_invalidez_temporal')
		if( CapitalInvalidezTemporal != '' ){
			//Desbloque los dias de franquicia
			
			FranquiciaInvalidezTemporal.disabled = false;
			FranquiciaInvalidezTemporal.style.background = 'window'
			
		}else{
			FranquiciaInvalidezTemporal.value = '0';
			//Bloqueo los dias de franquicia
			FranquiciaInvalidezTemporal.style.background = 'inactivecaptiontext'
			FranquiciaInvalidezTemporal.disabled = true;
			
		}//if
	}//if 
}//function

function AsignarProfesion(){
	if (window.document.MainForm.profesion.selectedIndex > -1){
		if (window.document.MainForm.profesion.options[window.document.MainForm.profesion.selectedIndex].value == ''){
			window.document.MainForm.profesion.size = 6;
		}else{	
			window.document.MainForm.profesion.size = 1;
		}
	}else{
		
		window.document.MainForm.profesion.size = 6;
	}
}

function OcultarControl(p_strIdRadio,p_strIdControl){
	
	var objElementoRadio = getObj(p_strIdRadio + '0');  
	var  objElemento = getObj(p_strIdControl);    
	
	if(objElementoRadio.checked){
		objElemento.style.visibility = 'visible';
		if (IE4 || IE5) {
			objElemento.style.display = 'inline';
		} else {
			objElemento.style.display = '';
		}
	}else{	
		objElemento.style.visibility = 'hidden';
		objElemento.style.display = 'none';
	}//if
}//function


//Función que bloquea el campo en Netscape
	function BlockControl(objControl,nextObject){
		//Para Netscape hacemos que pierda el foco y se lo ponemos al campo propietario tomador	
		objControl.blur();
		window.document.forms.MainForm[nextObject].focus();
	}

function CambiarCapitales(){
	//Cambio el capital de por muerte de miocardio
	CambiarCapitalMuerteInfarto();
	//Cambio el capital de Invalidez temporal
	CambiarCapitalInvalidezTemporal();
}


function CambiarCapitalMuerteInfarto(){
	 
	var dblCapitalMuerte = GetCapital(window.document.MainForm.capital_muerte_accidente) ;
	var dblCapitalInfarto = 0;	
	var dblCapitalMaximo = 60000;	
	
	if (window.document.MainForm.muerte_infarto[0].checked){
		
		for (var intCount=0;intCount<=window.document.MainForm.capital_muerte_infarto.length-1;intCount++){
			dblCapitalInfarto = CNum(window.document.MainForm.capital_muerte_infarto.options[intCount].value);		
			if (dblCapitalInfarto>=dblCapitalMaximo){
				window.document.MainForm.capital_muerte_infarto.selectedIndex = intCount;
				return;
			}else if(dblCapitalInfarto == dblCapitalMuerte){
				window.document.MainForm.capital_muerte_infarto.selectedIndex = intCount;
				return;
			}else if (dblCapitalInfarto > dblCapitalMuerte){
				
				window.document.MainForm.capital_muerte_infarto.selectedIndex = intCount - 1;
				return;
			}
		}
	
	}else{
	
		window.document.MainForm.capital_muerte_infarto.selectedIndex = -1;
	}
	
}


function CambiarCapitalInvalidezPermanente(){
	var dblCapitalMuerte = GetCapital(window.document.MainForm.capital_muerte_accidente);
	
	var dblCapitalInvalidez = 0;	
	
	if (window.document.MainForm.invalidez_permanente[0].checked){
		
		for (var intCount=0;intCount<=window.document.MainForm.capital_invalidez_permanente.length-1;intCount++){
			dblCapitalInvalidez = CNum(window.document.MainForm.capital_invalidez_permanente.options[intCount].value);		
			if(dblCapitalInvalidez == dblCapitalMuerte){
				window.document.MainForm.capital_invalidez_permanente.selectedIndex = intCount;
				return;
			}else if (dblCapitalInvalidez > dblCapitalMuerte){
				
				window.document.MainForm.capital_invalidez_permanente.selectedIndex = intCount - 1;
				return;
			}
		}
	
	}else{
	
		window.document.MainForm.capital_invalidez_permanente.selectedIndex = -1;
	}
	
}


function CambiarCapitalInvalidezTemporal(){
	var strOption;
	var strPar1 = '';
	var strPar2 = '';
	var dblValorActual = '';
	var dblCapitalMuerte = GetCapital(window.document.MainForm.capital_muerte_accidente);
	
	var dblCapitalInvalidezPermanente = GetCapital(window.document.MainForm.capital_invalidez_permanente);
	var intSelected = 0;
	
	var dblCapitalSumaMuerteInvalidez = dblCapitalMuerte + dblCapitalInvalidezPermanente;
	
	var dblCapitalMaximo = (dblCapitalSumaMuerteInvalidez * (1/4))/1000 ;
	if (CNum(dblCapitalMaximo)<3){
		dblCapitalMaximo = 3;
	}
	
	//recupero el valor actual
	if( CNum(window.document.MainForm.capital_invalidez_temporal.selectedIndex)>=0){;
		dblValorActual = window.document.MainForm.capital_invalidez_temporal.options[window.document.MainForm.capital_invalidez_temporal.selectedIndex].value;
	}else{
		dblValorActual = 0;
	}
	
	/*
	//Vacío el combo.
	if (IE4 || IE5) {
		
		parent.datos1.ClearInvalidezTemporal(2);
	
		for (var intInvalidezTemporal=0;intInvalidezTemporal<=parent.datos1.MainForm.capital_invalidez_temporal.length-1;intInvalidezTemporal++){
			
			strOption = null;
			strPar1=parent.datos1.MainForm.capital_invalidez_temporal.options[intInvalidezTemporal].text;
			strPar2=parent.datos1.MainForm.capital_invalidez_temporal.options[intInvalidezTemporal].value;
			
			if (CNum(strPar2) <= dblCapitalMaximo){
				strOption = new Option(strPar1,strPar2);
				eval("parent.datos2.MainForm.capital_invalidez_temporal.options[intInvalidezTemporal]=strOption");
				if (CNum(dblValorActual) == CNum(strPar2)){
					parent.datos2.MainForm.capital_invalidez_temporal.options[intInvalidezTemporal].selected=true;
				}
				if (intInvalidezTemporal==0){
					parent.datos2.MainForm.capital_invalidez_temporal.options[intInvalidezTemporal].selected=true;
				}
			
			}else{
				intInvalidezTemporal = parent.datos1.MainForm.capital_invalidez_temporal.length+1;
			}
		}
		
	}
	*/
	
}


function PrepararCapitales(){
	//Se habilitan los controles bloqueados
	window.document.forms['MainForm'].capital_muerte_infarto.disabled = false;
	window.document.forms['MainForm'].capital_invalidez_permanente.disabled = false;
	window.document.forms['MainForm'].capital_invalidez_temporal.disabled = false;
	//Reseteo las garantías que no hemos seleccionado.
	
	//Muerte por infarto de miocardio
	if (window.document.MainForm.muerte_infarto[1].checked){
		window.document.MainForm.capital_muerte_infarto.selectedIndex = -1;
	}		
	
	//Invalidez temporal
	if (window.document.MainForm.invalidez_temporal[1].checked){
		window.document.MainForm.capital_invalidez_temporal.selectedIndex = -1;
		//Franquicia Invalidez permanente
		window.document.MainForm.franquicia_invalidez_temporal.selectedIndex = -1;
	}
	//Asist.Sanitaria en centros concertados
	if (window.document.MainForm.as_concertados[1].checked){
		window.document.MainForm.capital_as_concertados.selectedIndex = -1;
	}
	//Asist.Sanitaria en centros de libre elección
	if (window.document.MainForm.as_libre[1].checked){
		window.document.MainForm.capital_as_libre.selectedIndex = -1;
	}
	//Indemnización Diaria por Hospitalización por Accidente y/o Enfermedad
	if (window.document.MainForm.indemnizacion_hospitalizacion[1].checked){
		window.document.MainForm.capital_hospitalizacion.selectedIndex = -1;
	}	

}


function GetCapital( p_objCapitalIn ) {
	
	var Capital;
	p_CapitalOut = p_objCapitalIn.value;
	while ( p_CapitalOut.indexOf('.') != -1) {
		
		p_CapitalOut = p_CapitalOut.replace('.', '');
	}

	return(CNum(p_CapitalOut));
}


function FormatearCapital (p_objCapitalIn){
	
	p_objCapitalIn.value = codificarEuro(replaceString('.', '',p_objCapitalIn.value));
}

function GetQuitarPuntos( p_objCapitalIn ) {
	
	var Capital;
	p_CapitalOut = p_objCapitalIn.value;
	while ( p_CapitalOut.indexOf('.') != -1) {
		
		p_CapitalOut = p_CapitalOut.replace('.', '');
	}

	return(p_CapitalOut);
}
