
function todos_presup(check_todos){
			
	marcar =(check_todos.checked)? 'true':'false';	
	
	//form=document.form_presup_mult;
	form=document.form_presup_mult;
	
    
    for (i = 0; i < form.length; i++) {       	    	
		if ((form.elements[i].name.indexOf('pres_ide')) >= 0) { 			
			eval('form.elements['+i+'].checked='+marcar+';');			   								
		}	
		
		
	}	
 }
 
/*
function mutiples_presupuestos(){
 	
 	var total=0;
    
    form=document.form_presup_mult;
    
    for (i = 0; i < form.length; i++) {       	
		if ((new String(form.elements[i].name).indexOf('pres_ide')) >= 0) { 
			if (form.elements[i].checked){
			   total++;			   
			}   			
		}	
	}	    
    
    if (total>0) 
    	form.submit();    	
    else
    	alert('Seleccione alguna empresa a la cual solicitar presupuestos');	
            
  }*/

function mutiples_presupuestos(){
 	
 	var total=0;
    
    //form=document.form_presup_mult;
    form=document.form_presup_mult;
    
    for (i = 0; i < form.length; i++) {       	
		if ((new String(form.elements[i].name).indexOf('pres_ide')) >= 0) { 
			if (form.elements[i].checked){
			   total++;			   
			}   			
		}	
	}	    
    
    if (total>0) 
    	form.submit();    	
    else
    	alert('Seleccione alguna empresa a la cual solicitar presupuestos');	
            
  }


function Comprobacion_valores_buscar(){
  
   var miform=document.FormBuscar;
   var Nombre=miform.CadenaNombre.value;

   if (Comprobar_caracteres(Nombre))
   {
      miform.CadenaNombre.focus();
      return false;
   }
   /*
   else if (Nombre.length<4)
   {
      alert("Introduzca una cadena de búsqueda con logitud mayor a 4");
      miform.CadenaNombre.focus();
      return false;
   }
   */
   else
   {
      return true;
   }
}

 // comprueba que estan todos los datos para el alta temporal en el envio de presupestos 
 function nodatos_alta_presup(){
      
      mal=false;
      
      var form=document.FormSolicitarPresupuestos;
      if (form.nombre_empresa.value=='') mal=true;campo='Nombre Empresa';form.nombre_empresa.focus;
      if ((form.personacontacto.value=='')&&(!mal)){ mal=true;campo='Persona Contacto';form.personacontacto.focus;};
      if ((form.telefono.value=='')&&(!mal)){ mal=true;campo='Teléfono';form.telefono.focus;};
      if ((form.email.value=='')&&(!mal)&&(!mal)){ mal=true;campo='Email';form.email.focus;};
      
      if (mal){
	      alert('Por favor, rellene el campo obligatorio: '+ campo);
	      return(true);
      }
      return(false);
   
   }
  
//comprobacion del foromulario de solicitud de presupuestos
function Comprobacion_valores_buscarP()
{
 	
   var miform=document.FormSolicitarPresupuestos;
   
   
   if (miform.Dia.value==''){
      alert('Indique el día');
      return(false);
   } 
   
   if (miform.Anno.value==''){
      alert('Indique el año');
      return(false);
   } 
   
   if (miform.descripcion_presupuesto.value==''){
      miform.descripcion_presupuesto.focus();
      alert('Indique la descripción del servicio / producto en el que esta interesado');
      return(false);
   } 
   
    //Comprobamos que la descripción no tenga caracteres "raros"
   if (Comprobar_caracteres(miform.descripcion_presupuesto.value)){
      miform.descripcion_presupuesto.focus();
      return false;
   }

    //este usuario esta identificado en el sistema, no se muestra el campo de login   
   if (typeof(miform.Usuario1)=="undefined"){
   	 miform.action='index.phtml'; //nos quedamos en merca, ya esta identificado.
   	 return(true);
   	} 
    	
   //tenemos 2 formas de enviar los presupuestos, rellenando identificacion de usuario o introduciendo datos de empresa      
   //el usuario o la clave no han sido especificados Y los datos de alta no son correctos(falta alguno)
   if (((miform.Usuario1.value=='') || (miform.Password1.value=='')) && (nodatos_alta_presup())){   	
	   	//alert('Para enviar su solicitud de presupuestos, debe introducir los campos obligatorios, o bien, identificarse en caso de ser usuario registrado.');
	   	return(false);
   }else{
   	
   	 //si alguno de estos 2 datos está vacío y hemos llegado aqui es porque el usuario se está registrando(temporal)
   	 if ((miform.Usuario1.value=='') || (miform.Password1.value=='')){   	 	
	   	 	if (!miform.acepto.checked) {alert('Es necesario que acepte las condiciones');miform.acepto.focus();return(false);}
	   	 	miform.action='index.phtml';
	   	 	miform.alta_temporal.value=1;   	 	
	   	 	return(true);
   	  }
   	  
   	
   }   	   
   
   	if (!miform.acepto.checked) {alert('Es necesario que acepte las condiciones');miform.acepto.focus();return(false);}

   return(true);
   
}

function checkMail(x)
{	
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(x)) return(false);
	return(true);
}



function comprobar_solicitar_datos(){
	
	var miform=document.solicitardatos;
   
   
   if (miform.nombre_empresa_remitente.value==''){
      alert('Indique el nombre de la empresa');
      return(false);
   } 
   if (miform.contacto_remitente.value==''){
      alert('Indique la persona de contacto');
      return(false);
   } 
   if (miform.telefono_remitente.value==''){
      alert('Indique el teléfono de contacto');
      return(false);
   } 
   if (miform.email_remitente.value==''){
      alert('Indique un email');
      return(false);
   } 
   if (!checkMail(miform.email_remitente.value)){
      alert('Indique un email válido');
      return(false);
   } 
   if (!miform.acepto.checked){
      alert('Debe leer y aceptar la política de privacidad');
      return(false);
   } 
     
   	miform.submit();   	
   	
   }


function Comprobacion_valores_buscarE(tipo){  
	//Función que comprueba el formulario de búsqueda de empresas
	//Si tipo es 1, es un buscador light:
	if (tipo==1){
		var form=document.frmBuscadorLight;
	}else{
		var form=document.BuscarEmpresas;
	}
  
  //Comprobamos que el nombre de empresa contenga al menos 2 caracteres
  if(form.nombre_empresa.value.length <= 1){
  	alert ("No es posible realizar búsquedas con menos de 2 caracteres.");
  	form.nombre_empresa.focus();
  	form.nombre_empresa.select();
  }else{
  	form.submit();
  }
}


function Comprobar_caracteres(cadena)
{

/* Esta funcion compruba que la cadena que se ha pasado como parametro no
  contine ni la comilla simple ni la secuencia de >cadena<.
  Cuando  encuentra una de estas cadenas da un mensaje de error y devuelve
  true */
  cont1 = cadena.search("<!");
  cont2 = cadena.search("--");

  if (((cont1 != -1)&&(cont2 != -1))&& (cadena.search("<!") == (cadena.search("--")-2))){
        alert("La cadena de caracteres <!"+"-- no es valida");
        return true;
  }
  if (cadena.search("'")!=-1){
        alert("Caracter erroneo de entrada: '");
        return true;
  }
  else if ((cadena.search("<")!=-1)  && (cadena.search(">")!=-1)){
        alert("Caracteres errornes de entrada: < >");
        return true;
  }
  else if (cadena.search("&")!=-1){
        alert("Caracter erroneo de entrada: &");
        return true;
  }
  else if (cadena.search("€")!=-1){
        alert("Caracter erroneo de entrada: €");
        return true;
  }

  // No se comprobara else if (cadena.search("%")!=-1){
  //      alert("Caracter erroneo de entrada: %");
  //      return true;
  // }
  else if (cadena.search("\"")!=-1){
        alert('Caracter erroneo de entrada: "');
        return true;
  }
  else if (cadena.search("·")!=-1){
        alert('Caracter erroneo de entrada: ·');
        return true;
  }
  else if (cadena.search("¬")!=-1){
        alert('Caracter erroneo de entrada: ¬');
        return true;
  }
  else if ((cadena.search("ç")!=-1)||(cadena.search("Ç")!=-1)){
        alert('Caracter erroneo de entrada: ç');
        return true;
  }
  else if ((cadena.search("ñ")!=-1)||(cadena.search("Ñ")!=-1)){
        alert('Caracter erroneo de entrada: ñ');
        return true;
  }
  else if ((cadena.search("º")!=-1)||(cadena.search("ª")!=-1)){
        alert('Caracter erroneo de entrada: º/ª');
        return true;
  }
  else if ((cadena.search("¿")!=-1)||(cadena.search("¡")!=-1)){
        alert('Por favor, no introduzca signos de admiración o interrogación');
        return true;
  }
  else if ((cadena.search("á")!=-1)||(cadena.search("é")!=-1)||(cadena.search("í")!=-1)||(cadena.search("ó")!=-1)||(cadena.search("ú")!=-1)||
           (cadena.search("Á")!=-1)||(cadena.search("É")!=-1)||(cadena.search("Í")!=-1)||(cadena.search("Ó")!=-1)||(cadena.search("Ú")!=-1)){
        alert('Por favor, no introduzca tildes');
        return true;
  }
  else{
        return false;
  }
}
function login(){

	
	
	form=document.formlogin;
	
	if (form.Usuario1.value=='') {alert('Introduzca su nombre de usuario');form.Usuario1.focus();return(false)}
	if (form.Password1.value=='') {alert('Introduzca su contraseña');form.Password1.focus();return(false)}
	
	return(true);

}



function alta(){

	//window.location.href="index2.phtml?opt=nosotros&sec=registrarse#REGISTRO";	
	
	window.location.href="index.phtml?opt=nosotros&sec=registrarse#REGISTRO";	
	//window.location.href="https://www.mercaempresas.com/index2.phtml?opt=nosotros&sec=registrarse#REGISTRO";	


}

function changecss(obj,style){
	
	//alert (obj+ ' ' + style);
	objs=document.getElementById(obj);
	objs.className=style;
	
	obj=obj+ '_enlace';
	
	//style+='_style';
	
	objs=document.getElementById(obj);
	objs.className=style;
	
	
 }	
 
 //******************** FUNCIONES SELECT DINAMICOS **************************** \\
 
function RellenarConCeros(objeto,total){
	if(objeto.value.length <= (total-1)){
		tam = objeto.value.length;
		for(x=0;x<(total-tam);x++){
			objeto.value = "0"+objeto.value;
		}
	}
}

function opcionCambiada(select,input){
	var obj1   = document.getElementById(select);  
	var obj2   = document.getElementById(input);   
		
	if (obj1.value == 0){
		obj2.disabled=false;
	}
	else{
		obj2.disabled=true;
	}
	obj2.value='';
}

function opcionCambiada2(select,input,select2){
	var obj1   = document.getElementById(select);  
	var obj2   = document.getElementById(input);   
	var obj3	 = document.getElementById(select2);	
	if (obj1.value == 0){
		obj2.disabled=false;
	}
	else{
		obj2.disabled=true;
	}
	if (obj1.value==1){
		obj3.disabled=false;
	}else{
		obj3.disabled=true;
	}	
	obj2.value='';
	obj3.value='';	
}
function opcionCambiadaTarjeta(select,input1,input2,input3,input4){
	var obj1   = document.getElementById(select);  
	var obj2   = document.getElementById(input1);   	
	var obj3	 = document.getElementById(input2);	
	var obj4	 = document.getElementById(input3);	
	var obj5	 = document.getElementById(input4);	
	
	if ((obj1.value == 5)||(obj1.value == 6)||(obj1.value == 7)||(obj1.value == 8)){		
		
		obj2.disabled=false;
		obj3.disabled=false;
		obj4.disabled=false;
		obj5.disabled=false;
	}
	else{
		obj2.disabled=true;
		obj3.disabled=true;
		obj4.disabled=true;
		obj5.disabled=true;		
	}
	
	obj2.value='';
	obj3.value='';	
	obj4.value='';	
	obj5.value='';	
	
}

function EsNumeroEntero(valor){
   var cadena = valor.toString();
   var longitud = cadena.length;
   if (longitud == 0){return false;}
   var ascii = null;
   for (var i=0; i<longitud; i++) {
       ascii = cadena.charCodeAt(i);
       if (ascii < 48 || ascii > 57){return false;}
   }
   return true;
} 
//Función que comprueba si una tarjeta es válida.
function ValidarTJ(numa,numb,numc,numd) {
   var numero_tarjeta=numa+""+numb+""+numc+""+numd;
      // Comprobamos que solo hemos introducido numeros
   if (!EsNumeroEntero(numero_tarjeta)){
       alert("Debe introducir unicamente números");
       return false;
   }

   // Paso 1: Tomamos las cifras en posiciones impares y las multiplicamos por 2 y
   // sumamos el resultado
   var cadena = numero_tarjeta.toString();
   var longitud = cadena.length;
   var cifra = null;
   var cifra_cad=null;
   var suma=0;
   for (var i=0; i < longitud; i+=2){
       cifra = parseInt(cadena.charAt(i))*2;
       // Si la cifra resultante es mayor que 9 sumamos las cifras
       if (cifra > 9){
           cifra_cad = cifra.toString();
           cifra = parseInt(cifra_cad.charAt(0))+parseInt(cifra_cad.charAt(1));
       }
       suma+=cifra;
   }
   // Paso 2: Tomamos las cifras en posiciones pares y las sumamos
   for (var i=1; i < longitud; i+=2){
       suma += parseInt(cadena.charAt(i));
   }
      // Paso 3: Comprobamos que el resultado es múltiplo de 10
   if ((suma % 10) == 0){
       // Si todo es correcto enviamos el formulario
       return true
   } else {               
   		alert("El numero de tarjeta no es válido");
      return false
   }
}
//Función que salta automaticamente en un formulario, de una casilla a otra.
function autojump(fieldName,nextFieldName,fakeMaxLength){
   var myForm=document.forms[document.forms.length - 1];      
   var myField=myForm.elements[fieldName];      
   myField.nextField=myForm.elements[nextFieldName];
   if (myField.maxLength == null)    
   myField.maxLength=fakeMaxLength;      
   myField.onkeydown=autojump_keyDown;      
   myField.onkeyup=autojump_keyUp;
}
function autojump_keyDown()  {    
	this.beforeLength=this.value.length;    
	downStrokeField=this;
}
function autojump_keyUp()  {    
	if (  (this == downStrokeField) &&   (this.value.length > this.beforeLength) &&   (this.value.length >= this.maxLength)  )  
	this.nextField.focus();    
	downStrokeField=null; 
}

function ComprobarTarifa(){
	if(document.formulario.tipotarifa.selectedIndex != 0)
		InhibirIntervalos();
}

function GrabarContrato(){
	if(ValidarContrato()){
		document.formulario.contrato.disabled = false;
		document.formulario.orden.disabled = false;
		document.formulario.action = "secc_contrato/grabar_contrato.php";
		document.formulario.submit();
	}
	else
		return false;
}

function GrabarCliente(identificador){
	if(ValidarCliente()){
		document.formulario.action = "secc_cliente/grabar_cliente.php?id="+identificador;
		document.formulario.submit();
	}
	else
		return false;
}

function GrabarConductor(identificador){
	if(ValidarConductor()){
		document.formulario.action = "secc_conductor/grabar_conductor.php?id="+identificador;
		document.formulario.submit();
	}
	else
		return false;
}

function GrabarVehiculo(identificador){
	
	
	if(document.formulario.haycambios.value == 1){
		if(confirm("Al haber realizado cambios en el GRUPO y/o la TEMPORADA, se procederá a reiniciar los DATOS DE FACTURACIÓN. ¿Está seguro de que desea continuar?")){
			if(ValidarVehiculo()){
				document.formulario.action = "secc_vehiculo/grabar_vehiculo.php?id="+identificador;
				document.formulario.submit();
			}
			else
				return false;
		}
		else {
			window.location = "http://development.ari.es/human_dev/contratos.php?id="+identificador;
			return false;
		}
	}
	if(ValidarVehiculo()){
		document.formulario.action = "secc_vehiculo/grabar_vehiculo.php?id="+identificador;
		document.formulario.submit();
	}
	else
		return false;
}

function GrabarFacturacion(identificador){
	if(ValidarFacturacion()){
		document.formulario.action = "secc_facturacion/grabar_datos_facturacion.php?id="+identificador;
		document.formulario.submit();
	}
	else
		return false;
}
/*
function ValidarForm(){
	if((ValidarCliente()) && (ValidarContrato()) && (ValidarVehiculo())){
		document.formulario.action = "grabar_general.php";
		document.formulario.submit();
	}
	else
		return false;
}
*/
function ValidarVehiculo(){	
	
	if(document.formulario.idcontrato.value == ""){
		alert("Por favor, Guarde el contrato");
		return false;
	}
	
	if(document.formulario.km_salida.value == ""){
		alert("Error en los KM DE SALIDA DEL VEHICULO.");
		document.formulario.km_salida.focus();
		return false;
	}
	if(document.formulario.km_entrada.value == ""){
		document.formulario.km_entrada.value == 0;
		ActualizarTotal();
	}
	if(document.formulario.grupo.selectedIndex == 0){
		alert("Por favor, seleccione un GRUPO.");
		document.formulario.grupo.focus();
		return false;
	}
	if(document.formulario.temporada.selectedIndex == 0){
		alert("Por favor, seleccione una TEMPORADA.");
		document.formulario.temporada.focus();
		return false;
	}
	
	if(document.formulario.km_salida.value > document.formulario.km_entrada.value){
		alert("Km de salida no pueden ser mayores que los de entrada");
		return false;
	}
	/* 
	if(document.formulario.km_total.value < 0){
		alert("Km de salida no pueden ser mayores que los de entrada");
		return false;
	}*/
	
	
	return true;
}

function ValidarConductor(){
	if(document.formulario.idcontrato.value == ""){
		alert("Por favor, Guarde el contrato");
		return false;
	}
	if(document.formulario.nombre_conductor.value == ""){
		alert("Por favor, rellene el NOMBRE del CONDUCTOR");
		document.formulario.nombre_conductor.focus()
		return false;
	}
	if(document.formulario.apellidos_conductor.value == ""){
		alert("Por favor, rellene los APELLIDOS del CONDUCTOR");
		document.formulario.apellidos_conductor.focus()
		return false;
	}
	if(document.formulario.dir_conductor.value == ""){
		alert("Por favor, rellene la DIRECCIÓN del CONDUCTOR");
		document.formulario.dir_conductor.focus()
		return false;
	}
	if(document.formulario.cpostal.value == ""){
		alert("Por favor, rellene el CÓDIGO POSTAL del CONDUCTOR");
		document.formulario.cpostal.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.cpostal.value)){
			alert("Error en el CÓDIGO POSTAL del conductor");
			document.formulario.cpostal.focus;
			return false;
		}
	}
	if(document.formulario.loc_conductor.value == ""){
		alert("Por favor, rellene la LOCALIDAD del CONDUCTOR");
		document.formulario.loc_conductor.focus()
		return false;
	}
	if(document.formulario.pro_conductor.selectedIndex == 0){
		
		if(!document.formulario.pro_conductor.disabled){			
			alert("Por favor, elija la PROVINCIA del CONDUCTOR");
			document.formulario.pro_conductor.focus();
			return false;
  	}else{
	  	return true;	
		}
		
	}
	if(document.formulario.tel_conductor.value == ""){
		alert("Error en el TELÉFONO DEL CLIENTE.");
		document.formulario.tel_conductor.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.tel_conductor.value)){
			alert("Error en el TELÉFONO DEL CLIENTE.");
			document.formulario.tel_conductor.focus();
			return false;
		}
	}
	if(isNaN(document.formulario.fax_conductor.value)){
		alert("Error en el FAX DEL CLIENTE.");
		document.formulario.fax_conductor.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.fax_conductor.value)){
			alert("Error en el FAX DEL CLIENTE.");
			document.formulario.fax_conductor.focus();
			return false;
		}
	}
	return true;
}

function ValidarCliente(){
	if(document.formulario.idcontrato.value == ""){
		alert("Por favor, Guarde el contrato");
		return false;
	}
	if(document.formulario.tipo_cliente.selectedIndex == 0){
		alert("Por favor, elija el TIPO DE CLIENTE.");
		document.formulario.tipo_cliente.focus();
		return false;
	}
	if(document.formulario.nif_cliente.value == ""){
		alert("Por favor, rellene el campo NIF/CIF del CLIENTE.");
		document.formulario.nif_cliente.focus();
		return false;
	}
	if(document.formulario.nombre_cliente.value == ""){
		alert("Por favor, rellene el NOMBRE del CLIENTE.");
		document.formulario.nombre_cliente.focus();
		return false;
	}
	return true;
}

function ValidarContrato(){
	
	var	obj1 = document.formulario.num1.value
	var obj2 = document.formulario.num2.value
	var obj3 = document.formulario.num3.value	
	var obj4 = document.formulario.num4.value
	
	if(document.formulario.contrato.value == ""){
		alert("Error en el CÓDIGO DEL CONTRATO.");
		document.formulario.contrato.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.contrato.value)){
			alert("Error en el CÓDIGO DEL CONTRATO");
			document.formulario.contrato.focus();
			return false;
		}
		if(document.formulario.contrato.value == "000000000"){
			alert("Error en el CÓDIGO DEL CONTRATO");
			document.formulario.contrato.focus();
			return false;
		}
	}
	if(document.formulario.orden.value == ""){
		alert("Error en el CÓDIGO DEL CONTRATO.");
		document.formulario.orden.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.orden.value)){
			alert("Error en el CÓDIGO DEL CONTRATO");
			document.formulario.orden.focus();
			return false;
		}
	}
	if(document.formulario.lugar_entrega.value == ""){
		alert("Error en el LUGAR DE ENTREGA.");
		document.formulario.lugar_entrega.focus();
		return false;
	}
	if(document.formulario.lugar_recogida.value == ""){
		alert("Error en el LUGAR DE RECOGIDA.");
		document.formulario.lugar_recogida.focus();
		return false;
	}
	if(document.formulario.fecha_entrega.value == ""){
		alert("Error en la FECHA DE ENTREGA.");
		document.formulario.fecha_entrega.focus();
		return false;
	}
	if(document.formulario.fecha_recogida.value == ""){
		alert("Error en la FECHA DE RECOGIDA.");
		document.formulario.fecha_recogida.focus();
		return false;
	}
	if(!ValidarFecha(document.formulario.fecha_recogida.value)){
		alert("Error en la FECHA DE RECOGIDA.");
		document.formulario.fecha_recogida.focus();
		return false;
	}
	else {
		fecha = document.formulario.fecha_recogida.value;
		arrayFecha = fecha.split("/");
		fechaformateada = arrayFecha[2]+"-"+arrayFecha[1]+"-"+arrayFecha[0];
		document.formulario.fecha_recogida_hidden.value = fechaformateada;
	}
	if(!ValidarFecha(document.formulario.fecha_entrega.value)){
		alert("Error en la FECHA DE ENTREGA.");
		document.formulario.fecha_entrega.focus();
		return false;
	}
	else {
		fecha = document.formulario.fecha_entrega.value;
		arrayFecha = fecha.split("/");
		fechaformateada = arrayFecha[2]+"-"+arrayFecha[1]+"-"+arrayFecha[0];
		document.formulario.fecha_entrega_hidden.value = fechaformateada;
	}
	
	if(!document.formulario.num1.disabled){
			if(!ValidarTJ(obj1,obj2,obj3,obj4)){
				
				return false;
			}
	}	
return true;
}

function ValidarFacturacion(){
	if(document.formulario.idcontrato.value == ""){
		alert("Por favor, Guarde el contrato");
		return false;
	}
	if(document.formulario.precio_km.value == ""){
		alert("Por favor, rellene el PRECIO POR KM.");
		document.formulario.precio_km.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.precio_km.value)){
			alert("Error en el PRECIO POR KM.");
			document.formulario.precio_km.focus();
			return false;
		}
	}
	if(document.formulario.franquicia.value == ""){
		alert("Por favor, rellene el PRECIO DE LA FRANQUICIA.");
		document.formulario.franquicia.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.franquicia.value)){
			alert("Error en el PRECIO DE LA FRANQUICIA.");
			document.formulario.franquicia.focus();
			return false;
		}
	}
	if(document.formulario.suplementos.value == ""){
		alert("Por favor, rellene el PRECIO DEL SUPLEMENTO.");
		document.formulario.suplementos.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.suplementos.value)){
			alert("Error en el PRECIO DEL SUPLEMENTO.");
			document.formulario.suplementos.focus();
			return false;
		}
	}
	if(document.formulario.descuento.value == ""){
		alert("Por favor, rellene el DESCUENTO.");
		document.formulario.descuento.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.descuento.value)){
			alert("Error en el DESCUENTO.");
			document.formulario.descuento.focus();
			return false;
		}
	}
	if(document.formulario.gasolina.value == ""){
		alert("Por favor, rellene el PRECIO DE LA GASOLINA.");
		document.formulario.gasolina.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.gasolina.value)){
			alert("Error en el PRECIO DE LA GASOLINA.");
			document.formulario.gasolina.focus();
			return false;
		}
	}
	return true;
}


// ******** Función ActualizarTotal() ********
//  Se introducen los Km. salida al realizar el contrato. Cuando el vehículo se devuelve, se actualizan los Km. entrada ...
//  y se calcula el Total (son €):
//		 ==>> [ (Km. salida - Km. entrada) * Precio/Km ] <<==
//
//  La diferencia puede ser:
// 		- Positiva ==> suma en el Total del contrato
//		- Negativa ==> resta en el Total del contrato
//
//	Esto sólo tiene sentido al usar el tipo de tarifa "Día/Km"
// *******************************************

function ActualizarTotal(){
	if((document.formulario.km_salida.value != "") && (document.formulario.km_entrada.value != "")){
		if(!isNaN(document.formulario.km_salida.value) && !isNaN(document.formulario.km_salida.value))
		document.formulario.km_total=document.formulario.km_salida.value ;
	}
}

function InhibirImporte(){
	if(document.formulario.opcion.selectedIndex == "0")
		document.formulario.importe_opcion.disabled = false;
	else
		document.formulario.importe_opcion.disabled = true;
}

function InhibirIntervalos(){
	if(document.formulario.tipotarifa.selectedIndex == 0)
		document.formulario.intervalo.disabled = false;
	else
		document.formulario.intervalo.disabled = true;
}

function ValidarFecha(Cadena){
	var Fecha= new String(Cadena);	// Crea un string
	var RealFecha= new Date();	// Para sacar la fecha de hoy

	var Ano= new String(Fecha.substring(Fecha.lastIndexOf("/")+1,Fecha.length));
	var Mes= new String(Fecha.substring(Fecha.indexOf("/")+1,Fecha.lastIndexOf("/")));
	var Dia= new String(Fecha.substring(0,Fecha.indexOf("/")));

	if (isNaN(Ano) || Ano.length<4 || parseFloat(Ano)<1900){
		alert("Año ...");
		return false;
	}
	if (isNaN(Mes) || parseFloat(Mes)<1 || parseFloat(Mes)>12){
		alert("Mes ...");
		return false;
	}
	if (isNaN(Dia) || parseFloat(Dia)<1 || parseFloat(Dia)>31){
		return false;
	}
	if (Mes==4 || Mes==6 || Mes==9 || Mes==11 || Mes==2) {
		if (Mes==2 && Dia > 28 || Dia>30)
			return false;
	}
	return true;
}

function ActualizarFact(){
	if((document.formulario.grupo.selectedIndex != 0) && (document.formulario.temporada.selectedIndex != 0)){
		document.formulario.precio_km.value = preciokm[document.formulario.grupo.value][document.formulario.temporada.value];
		document.formulario.franquicia.value = franquicia[document.formulario.grupo.value][document.formulario.temporada.value];
		document.formulario.suplementos.value = suplementos[document.formulario.grupo.value][document.formulario.temporada.value];
		document.formulario.importe_opcion.value = importe_opcion[document.formulario.grupo.value][document.formulario.temporada.value];
	}
	else {
		document.formulario.precio_km.value = 0;
		document.formulario.franquicia.value = 0;
		document.formulario.suplementos.value = 0;
		document.formulario.importe_opcion.value = 0;
	}
}

function AbrirPopup(url, nombre_ventana, opciones){
	var win = window.open(url,nombre_ventana,opciones);
	win.focus();
}

function CalcularDiasAlquiler(){
	if((document.formulario.fecha_entrega.value != "") && (document.formulario.fecha_recogida.value != "")){
		if((ValidarFecha(document.formulario.fecha_entrega.value)) && (ValidarFecha(document.formulario.fecha_recogida.value))){
			dias = DiferenciaDias(document.formulario.fecha_entrega.value,document.formulario.fecha_recogida.value);
			document.formulario.dias_alquiler.value = total;
		}
		else{
			alert("Fecha(s) no válida(s)");
			document.formulario.dias_alquiler.value = "0";
		}
	}
}

// Esta función calcula la diferencia en días entre 2 fechas dadas
function DiferenciaDias(fecha1,fecha2){
	var Fecha1= new String(fecha1);
	var Ano1= new String(Fecha1.substring(Fecha1.lastIndexOf("/")+1,Fecha1.length));
	var Mes1= new String(Fecha1.substring(Fecha1.indexOf("/")+1,Fecha1.lastIndexOf("/")));
	var Dia1= new String(Fecha1.substring(0,Fecha1.indexOf("/")));

	var Fecha2= new String(fecha2);
	var Ano2= new String(Fecha2.substring(Fecha2.lastIndexOf("/")+1,Fecha2.length));
	var Mes2= new String(Fecha2.substring(Fecha2.indexOf("/")+1,Fecha2.lastIndexOf("/")));
	var Dia2= new String(Fecha2.substring(0,Fecha2.indexOf("/")));

	fentrega = Mes1+"/"+Dia1+"/"+Ano1;
	frecogida = Mes2+"/"+Dia2+"/"+Ano2;

	auxfec1=Date.parse(fentrega);
	auxfec2=Date.parse(frecogida);

	total = Math.round(auxfec2 - auxfec1)/(24*60*60*1000);

	return total;
}

function CalcularOcupacion(){
	var acobrar;
	var descuento;
	var dias_alquiler;
	var interv;
	var km_total;
	var precio_intervalo;
	var preciokm;

	if(document.formulario.grupo.selectedIndex != 0){
		if(document.formulario.tipotarifa.selectedIndex == 0){
			dias_alquiler = document.formulario.dias_alquiler.value;
			precio_intervalo = document.formulario.ocu.value;

			document.formulario.ocu.value = (dias_alquiler * precio_intervalo);
		}
		else {
			dias_alquiler = document.formulario.dias_alquiler.value;
			precio_intervalo = document.formulario.ocu.value;
			preciokm = document.formulario.precio_km.value;
			km_total = document.formulario.km_total.value;

			document.formulario.ocu.value = ((dias_alquiler * precio_intervalo) + (preciokm * km_total));
		}

		if(document.formulario.descuento.value != 0){
			descuento = (parseFloat(document.formulario.ocu.value) * (parseFloat(document.formulario.descuento.value) / 100));
			acobrar = parseFloat(document.formulario.ocu.value) - parseFloat(descuento);
		}
		else
			acobrar = parseFloat(document.formulario.ocu.value);

		if(document.formulario.opcion.selectedIndex == 1){
			document.formulario.franquicia.value = 0;
			document.formulario.franquicia.disabled = true;
		}

		acobrar = parseFloat(acobrar) + parseFloat(document.formulario.franquicia.value) + parseFloat(document.formulario.extras.value) ;
		acobrar = parseFloat(acobrar) + parseFloat(document.formulario.suplementos.value) + parseFloat(document.formulario.gasolina.value);

		acobrar = Decimales(acobrar,2);
		document.formulario.importecobrar.value = acobrar;

		afacturar = parseFloat(acobrar) * (1 + (parseFloat(document.formulario.igic.value) / 100));
		afacturar = Decimales(afacturar,2);
		document.formulario.importefacturar.value = afacturar;
		document.formulario.totalalquiler.value = afacturar;

		document.formulario.totaldebe.value = document.formulario.totalalquiler.value - document.formulario.totalpagosacuenta.value;
	}

	return false;
}

function Decimales(fixNumber, decimalPlaces){
	var div = Math.pow(10,decimalPlaces);
	fixNumber = Math.round(fixNumber * div) / div;
	return fixNumber;
}

function HayCambios(){
	document.formulario.haycambios.value = 1;
}


// ************************************************************************************ //
//																						//
// Esta función contiene las comprobaciones para los datos identificativos del cliente  //
//																						//
// ************************************************************************************ //
function Temporal(){
	if(document.formulario.numero_doc.value == ""){
		alert("Error en el NÚMERO DE DOCUMENTO.");
		document.formulario.numero_doc.focus();
		return false;
	}
	if(document.formulario.lugarexp_doc.value == ""){
		alert("Error en el LUGAR DE EXPEDICIÓN DEL DOCUMENTO.");
		document.formulario.lugarexp_doc.focus();
		return false;
	}
	if(!ValidarFecha(document.formulario.fechaexp_doc.value)){
		alert("Error en la FECHA DE EXPEDICIÓN DEL DOCUMENTO.");
		document.formulario.fechaexp_doc.focus();
		return false;
	}
	else {
		fecha = document.formulario.fechaexp_doc.value;
		arrayFecha = fecha.split("/");
		fechaformateada = arrayFecha[2]+"-"+arrayFecha[1]+"-"+arrayFecha[0];
		document.formulario.fechaexp_doc_hidden.value = fechaformateada;
	}
	if(!ValidarFecha(document.formulario.caduc_doc.value)){
		alert("Error en la FECHA DE CADUCIDAD DEL DOCUMENTO.");
		document.formulario.caduc_doc.focus();
		return false;
	}
	else {
		fecha = document.formulario.caduc_doc.value;
		arrayFecha = fecha.split("/");
		fechaformateada = arrayFecha[2]+"-"+arrayFecha[1]+"-"+arrayFecha[0];
		document.formulario.caduc_doc_hidden.value = fechaformateada;
	}
	if(document.formulario.nombre_conductor.value == ""){
		alert("Error en el NOMBRE DEL CLIENTE.");
		document.formulario.nombre_conductor.focus();
		return false;
	}
	if(document.formulario.apellidos_conductor.value == ""){
		alert("Error en los APELLIDOS DEL CLIENTE.");
		document.formulario.apellidos_conductor.focus();
		return false;
	}
	if(document.formulario.dir_conductor.value == ""){
		alert("Error en la DIRECCIÓN DEL CLIENTE.");
		document.formulario.dir_conductor.focus();
		return false;
	}
	if(document.formulario.loc_conductor.value == ""){
		alert("Error en la LOCALIDAD DEL CLIENTE.");
		document.formulario.loc_conductor.focus();
		return false;
	}
	if(document.formulario.cp_conductor.value == ""){
		alert("Error en el CÓDIGO POSTAL DEL CLIENTE.");
		document.formulario.cp_conductor.focus();
		return false;
	}
	else {
		if(isNaN(document.formulario.cp_conductor.value)){
			alert("Error en el CÓDIGO POSTAL DEL CLIENTE.");
			document.formulario.cp_conductor.focus();
			return false;
		}
	}
}


function loadSubFamilias(combo,idFamilia,subCombo,idSubFamilia,nombreLista) {
					
	if (idFamilia != '') {
		if (typeof(nombreLista) != "undefined") {
			eval("var listaSubFamiliasSel = "+nombreLista+"[idFamilia];");		
			eval("var listaSubFamiliasIdSel = "+nombreLista+"Id[idFamilia];");	
		} else {
			var listaSubFamiliasSel = listaSubFamilias[idFamilia];		
			var listaSubFamiliasIdSel = listaSubFamiliasId[idFamilia];		
		}
	} else {
		var listaSubFamiliasSel = false;
	}
	var isNS = (navigator.appName == 'Netscape');
	
	var formulario = combo.form;
	var comboSubFamilias = document.getElementById(subCombo);		
	
	clear(comboSubFamilias);
	
	if(listaSubFamiliasSel) {
		var arraySubFamilias = listaSubFamiliasSel.split(",");
		var arraySubFamiliasId = listaSubFamiliasIdSel.split(",");
		var siguienteSel = false;
		for (var lSubFamilias=0;lSubFamilias<arraySubFamilias.length;lSubFamilias++) {
		
			optSubFamilia = new Option(arraySubFamilias[lSubFamilias], arraySubFamiliasId[lSubFamilias]);

			if ((siguienteSel) && (!isNS))
				optSubFamilia.selected=true;
							
			siguienteSel = false
			if (arraySubFamiliasId[lSubFamilias]==idSubFamilia) {
				if (isNS) {
					optSubFamilia.selected=true;
				} else {
					siguienteSel = true;
				}
			}				    	
			comboSubFamilias.options[comboSubFamilias.length] = optSubFamilia;
		}
		if ((siguienteSel) && (!isNS)) {
			comboSubFamilias.options[comboSubFamilias.length-1].selected=true;	
		}	
		
		if(arraySubFamilias.ubound<=1) {
			optSubFamilia.options[1].selected = true;
		}
		comboSubFamilias.disabled=false;
	} else {
		comboSubFamilias.disabled=true;	
	}	
}
function clear(combo){

  for(var c=combo.length;c>0;c--){
        combo.options[c] = null;
    }
    combo.options[0].selected = true;
}

function vamos_dd(){	
	capa_scroll=document.getElementById('dd')
	if (capa_scroll)	capa_scroll.innerHTML='<iframe height="24" width="100%" src="http://www.diariodirecto.com/ultimahora.asp?estilo=http://www.mercaempresas.com/estilo.css" id="contenidos" name="contenidos" scrolling="no" frameborder="0" width="680" height="19"></iframe></td>';
}	
