// JavaScript Document

var busqueda = null;
var orden = null;
var formUsuario = true;
var formEmail = true;


function cambiaMunicipios(campo_origen, campo_destino){

	form = $('#' + campo_origen + ' option:selected').parents('form:visible');
	
	idForm = '#'+ form.attr("id");
	
	$.ajax({ 
		  url: url + 'index/cambiamunicipios',
		  type: 'POST',
		  data:'id='+ $(idForm + ' #' + campo_origen + ' option:selected').val(),
		  success: function(data){
				$(idForm + ' #' + campo_destino + '>option').remove();
				
				$.each(data.munis, function(index, value) {
					$(idForm + ' #' + campo_destino).append(
					        $('<option></option').val(index).html(value)
					    );										
				 });
		  }, 
		  dataType:'json'
		});  
	
}

Array.prototype.in_array=function(){ 
    for(var j in this){ 
        if(this[j]==arguments[0]){ 
            return true; 
        } 
    } 
    return false;     
} 

if (!Array.prototype.indexOf) 
{ 
  Array.prototype.indexOf = function(elt /*, from*/) 
  { 
    var len = this.length; 

    var from = Number(arguments[1]) || 0; 
    from = (from < 0) 
         ? Math.ceil(from) 
         : Math.floor(from); 
    if (from < 0) 
      from += len; 

    for (; from < len; from++) 
    { 
      if (from in this && 
          this[from] === elt) 
        return from; 
    } 
    return -1; 
  }; 
}  

///////////////////////
// ****** INIT ***** //
///////////////////////
function init(){
	$('hr').after('<div class="hr">&nbsp;</div>').remove(); //sustituye los hr por un línea customizadarl
}

//////////////////////////
// ****** EVENTOS ***** //
//////////////////////////
function eventos(){
	
//////////////////////////////////////
// ****** CAJA BUSCADORES HOME***** //
//////////////////////////////////////

	$('#buscadorCajaNaranja #cajaNaranjaEspecialista a').click(function(){
		$('#cajaNaranjaClinica').removeClass('select');
		$('#cajaNaranjaClinicaBox').css({'display':'none'});
		
		$('#cajaNaranjaEspecialista').addClass('select');
		$('#cajaNaranjaEspecialistaBox').css({'display':'block'});
	});
	
	$('#buscadorCajaNaranja #cajaNaranjaClinica a').click(function(){
		$('#cajaNaranjaEspecialista').removeClass('select');
		$('#cajaNaranjaEspecialistaBox').css({'display':'none'});		
		
		$('#cajaNaranjaClinica').addClass('select');
		$('#cajaNaranjaClinicaBox').css({'display':'block'});		
	});
		
///////////////////////////////////
// ****** TABLA RESULTADOS ***** //
///////////////////////////////////

	// HOVER CABECERA
	$('#tablaResultado:not(.ajax) th:not(.activo)').hover(function(){
			
			if(!$(this).hasClass('activo')){
				
				//$(this).addClass('hoverl');		
				$(this).addClass('activo');	
				$(this).find('a').removeClass('oculto');
				
			}						
			
		},function(){
			
			/*if(!$(this).hasClass('activo')){
				
				//$(this).removeClass('hoverl');										
				
					
			}*/						
			
			$(this).find('a').addClass('oculto');
			$(this).removeClass('activo');
			
		});

	//CLICK CABECERA
	$('#tablaResultado:not(.ajax) th').click(function(){
										   
			if(!$(this).hasClass('activo')){
				
				$('#tablaResultado th a').addClass('oculto');
				$('#tablaResultado th').removeClass('activo');
				$(this).removeClass('hoverl').addClass('activo');
				$('#tablaResultado th.activo a').removeClass('oculto');
				
			}else{
				
				$('#tablaResultado th.activo a').toggleClass('dos');
				
				if ($('#sentido').val() == 'DESC') {
				
					$('#sentido').val('ASC');
					
				}else {
				
					$('#sentido').val('DESC');
					
				}									
				
			}
			
			$('#orden').val($(this).attr('id'));
			$('#frmBusqueda').submit();
			
		});
	//TOOLTIP COLABORADOR
	$('.starTrigger').hover(
			function(){
				$('#lightboxTooltip').fadeIn(100);
				$(document).mousemove(function(e){
					$('#lightboxTooltip').css({'top':e.pageY-50,'left':300});
				});
			},
			function(){
				$('#lightboxTooltip').fadeOut(100);
			}
		);
		$(document).mousemove(function(e){
			$('#lightboxTooltip').css({'top':e.pageY,'left':e.pageX});
		});
	
////////////////////////
//****BÚSQUEDA*******//
///////////////////////

		$('#buscadorEspecialistas').validate({
			submitHandler:function(form)
			{
				
				url = '';
			
				if ($('#buscadorEspecialistas #provincias_idprovincia').val()!='0'){
					
					//url += '/provincia/' + $('#provincias_idprovincia').val() + '-' + uriSanitize($('#provincias_idprovincia :selected:first').text());
					url += '/provincia/' + uriSanitize($('#buscadorEspecialistas #provincias_idprovincia :selected:first').text());
					
				}
			
				if ($('#buscadorEspecialistas #municipios_idmunicipio').val()!='0'){
					
					//url += '/localidad/' + $('#municipios_idmunicipio').val() + '-' + uriSanitize($('#municipios_idmunicipio :selected:first').text());
					url += '/localidad/' + uriSanitize($('#buscadorEspecialistas #municipios_idmunicipio :selected:first').text());
					
				}
				
				if ($('#buscadorEspecialistas #especialidades_idespecialidad').val()!='0'){
					
					//url += '/especialidad/' + $('#especialidades_idespecialidad').val() + '-' + uriSanitize($('#especialidades_idespecialidad :selected:first').text());
					url += '/especialidad/' + uriSanitize($('#buscadorEspecialistas #especialidades_idespecialidad :selected:first').text());
					
				}
				
				if ($('#buscadorEspecialistas #mutuas_idmutua').val()!='0'){
					
					//url += '/seguros/' + $('#mutuas_idmutua').val() + '-' + uriSanitize($('#mutuas_idmutua :selected:first').text());
					url += '/seguros/' + uriSanitize($('#buscadorEspecialistas #mutuas_idmutua :selected:first').text());
					
				}								
				
				form.action = form.action +  url + '/pagina/1';
				form.submit();
			}
		});
		
		$('#buscadorCentros').validate({
			submitHandler:function(form)
			{
				
				url = '';
			
				if ($('#buscadorCentros #provincias_idprovincia').val()!='0'){
					
					//url += '/provincia/' + $('#provincias_idprovincia').val() + '-' + uriSanitize($('#provincias_idprovincia :selected:first').text());
					url += '/provincia/' + uriSanitize($('#buscadorCentros #provincias_idprovincia :selected:first').text());
					
				}
			
				if ($('#buscadorCentros #municipios_idmunicipio').val()!='0'){
					
					//url += '/localidad/' + $('#municipios_idmunicipio').val() + '-' + uriSanitize($('#municipios_idmunicipio :selected:first').text());
					url += '/localidad/' + uriSanitize($('#buscadorCentros #municipios_idmunicipio :selected:first').text());
					
				}
				
				if ($('#buscadorCentros #especialidades_idespecialidad').val()!='0'){
					
					//url += '/especialidad/' + $('#especialidades_idespecialidad').val() + '-' + uriSanitize($('#especialidades_idespecialidad :selected:first').text());
					url += '/especialidad/' + uriSanitize($('#buscadorCentros #especialidades_idespecialidad :selected:first').text());
					
				}
				
				if ($('#buscadorCentros #mutuas_idmutua').val()!='0'){
					
					//url += '/seguros/' + $('#mutuas_idmutua').val() + '-' + uriSanitize($('#mutuas_idmutua :selected:first').text());
					url += '/seguros/' + uriSanitize($('#buscadorCentros #mutuas_idmutua :selected:first').text());
					
				}								
				
				form.action = form.action +  url + '/pagina/1';
				form.submit();
			}
		});
		
////////////////////////
// ****** LOGIN ***** //
////////////////////////

	//Recordatorio
	$('.loginOlvidado').click(function(){
		$('.copyRecordatorio').fadeIn(300);
		$('#loginRecordarPass').fadeIn(300);
	});
	
	$('#loginForm, #loginLB').validate({
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){
			$("#mensajeError").show();
			$("#mensajeError").html("Debe rellenar el e-mail y la contraseña.");
		}
		
	});
	
	$('#loginRedSocialLB').validate({
		invalidHandler: function(form, validator){
			$("#mensajeError").show();
			$("#mensajeError").html("Debe marcar el checkbox.");
		}
	});
	
	$('#loginRecordarPass').validate({
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){
			$("#mensajeErrorPass").show();
			$("#mensajeErrorPass").html("Debe rellenar el e-mail.");
		}
		
	});
	
////////////////////////
// **** CONTACTO **** //
////////////////////////	
	
	
	$('#contacto').validate({
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){
			$("#mensajeError").show();
			$("#mensajeError").html("Debe rellenar el e-mail y la contraseña.");
		}
		
	});
	
////////////////////////
// **** REGISTRO **** //
////////////////////////	
	
	$('#registroUsuario').validate({
		rules: {	
			password: {
				minlength: 6
			},				    
		    conf_password: {
		      equalTo: "#password",						      
		      required: function(element) {
						 return $("#password").val()!="";
					}
		    },
		    conf_email: {
			      equalTo: "#email",						      
			      required: function(element) {
							 return $("#email").val()!="";
						}
			    },
			usuHombre: {		      						     
		      required: function(element) {
			  			if ($("#usuMujer").is(":checked"))
						 	return false;
						else
							return true;
					}
		    },
			usuMujer: {		      						     
		      required: function(element) {
			  			if ($("#usuHombre").is(":checked"))
						 	return false;
						else
							return true;
					}
		    },
			usuLegales: "required"
						    
		},
		groups: {
    		sexo: "usuMujer usuHombre"
  		},		
		submitHandler: function(form){
		 	
			if (formUsuario && formEmail) {
				form.submit();
			}						
		},
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){			
			$("#mensajeError").html("Debe rellenar de forma correcta todos los campos obligatorios y aceptar las condiciones legales.");
			$("#mensajeError").show();
			var targetOffset = $("#rastro").offset().top
			$('html,body').animate({scrollTop: targetOffset}, 500);
		}
	});				
	
	$.validator.addMethod('usuariosinuso',function(value, element){
		return formUsuario;				
		
	},$.validator.format("El usuario ya está siendo utilizado"));
	
	$.validator.addMethod('emailsinuso',function(value, element){
		return formEmail;				
		
	},$.validator.format("El email ya está siendo utilizado"));
	
	$('#registroUsuario #usuario, #profesionalPaso01 #usuario').blur(function(){
		
		comprobarUsuario ('usuario');
		
	});
	
	$('#registroUsuario #email, #profesionalPaso01 #email').blur(function(){
		
		comprobarUsuario ('email');
		
	});
	
	$('#registroUsuario #usuHombre').click(function(){
		
		if ($(this).is(":checked")) {
			$('#usuMujer').attr('checked', false);
			if ($('#avatarBox img').attr("src")=='../img/registro_avatar_el.gif' || $('#avatarBox img').attr("src")=='../img/registro_avatar_ella.gif')
				$('#avatarBox img').attr("src", "../img/registro_avatar_el.gif");
		}
		else {
			$('#usuMujer').attr('checked', true);
			
			if ($('#avatarBox img').attr("src")=='../img/registro_avatar_el.gif' || $('#avatarBox img').attr("src")=='../img/registro_avatar_ella.gif')
				$('#avatarBox img').attr("src", "../img/registro_avatar_ella.gif");
		}
		
	});
	
	$('#registroUsuario #usuMujer').click(function(){
		
		if ($(this).is(":checked")) {
			$('#usuHombre').attr('checked', false);
			if ($('#avatarBox img').attr("src")=='../img/registro_avatar_el.gif' || $('#avatarBox img').attr("src")=='../img/registro_avatar_ella.gif')
				$('#avatarBox img').attr("src", "../img/registro_avatar_ella.gif");
		}
		else {
			$('#usuHombre').attr('checked', true);
			if ($('#avatarBox img').attr("src")=='../img/registro_avatar_el.gif' || $('#avatarBox img').attr("src")=='../img/registro_avatar_ella.gif')
			$('#avatarBox img').attr("src", "../img/registro_avatar_el.gif");			
		}
		
	});
		  
	/*$('#usuLabelLegales, #proLabelLegal').click(function(){
		NewWindow('/condiciones','condiciones','650','600','yes','center');return false;
	});*/
		
/*-----------------------
 * REGISTRO PROFESIONAL--
 -----------------------*/		
		  
	$('#profesionalPaso01').validate({
		rules: {	
			password: {
				minlength: 6
			},				    
		    conf_password: {
		      equalTo: "#password",						      
		      required: function(element) {
						 return $("#password").val()!="";
					}
		    },
		    conf_email: {
			      equalTo: "#email",						      
			      required: function(element) {
							 return $("#email").val()!="";
						}
			    },
			usuHombre: {		      						     
		      required: function(element) {
			  			if ($("#usuMujer").is(":checked"))
						 	return false;
						else
							return true;
					}
		    },
			usuMujer: {		      						     
		      required: function(element) {
			  			if ($("#usuHombre").is(":checked"))
						 	return false;
						else
							return true;
					}
		    },
			proLegal: "required"
			    
		},
		groups: {
    		sexo: "usuMujer usuHombre"
  		},		
		submitHandler: function(form){
		 	
			if (formUsuario && formEmail) {
				form.submit();
			}						
		},
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){			
	  		if ($('#proLegal').length){
	  			$("#mensajeError").html("Debe rellenar de forma correcta todos los campos obligatorios y aceptar las condiciones legales.");
	  		}else{
	  			$("#mensajeError").html("Debe rellenar de forma correcta todos los campos obligatorios.");
	  		}
			$("#mensajeError").show();
			
			var targetOffset = $("#rastro").offset().top
			$('html,body').animate({scrollTop: targetOffset}, 500);
		}
	});						  
	
	$('#proConsultaSi').click(function(){
		
		if ($('#proConsultaSi:checked').length==1)
		
			$('#consultasMutuas').show();		
			$('#advertencia').hide();
		
	});
	
	$('#proConsultaNo').click(function(){
		
		if ($('#proConsultaNo:checked').length==1)
		
			$('#consultasMutuas').hide();
			$('#advertencia').show();
		
	});
	
	$('#profesionalPaso02').validate({
		rules: {				  
		    provincias_idprovincia: {		      						     
		      required: function(element){
			  	if ($('#proConsultaSi:checked').length == 1) {
			  		return true;
			  	}
			  	else {
			  		return false;
			  	}
			  }
		    },
			municipios_idmunicipio: {		      						     
		      required: function(element) {
					 if ($('#proConsultaSi:checked').length==1){
						 return true;
					}else{
						return false;
					}
				}					
		    },
			direccion: {		      						     
		      required: function(element) {
					 if ($('#proConsultaSi:checked').length==1){
						 return true;
					}else{
						return false;
					}				
		    	}
			},
			telefono: {		      						     
		      required: function(element) {
					if ($('#proConsultaSi:checked').length==1){
						 return true;
					}else{
						return false;
					}
		    	}			    
			}
		},			
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		submitHandler: function (form, validator){
			
			if (mutuas.length>0){
				$('#listMutuas').val(mutuas.join('_'));
			}else{
				$('#listMutuas').val('');	
			}
			
			form.submit();
			
		},
		invalidHandler: function(form, validator){			
			$("#mensajeError").html("Debe rellenar de forma correcta todos los campos obligatorios.");
			$("#mensajeError").show();
			
			var targetOffset = $("#rastro").offset().top
			$('html,body').animate({scrollTop: targetOffset}, 500);
		}
	});						 		

	$('#profesionalPaso02 #btnAddMutua, #centroLightbox #btnAddMutua').click(function(){
	
		mutua = $('#proMutuas  option:selected').text();
		idmutua = $('#proMutuas').val();
			
		if (!mutuas.in_array(idmutua)){
			/*
			var li = $("<li>");
			var span = $('<span>');
			var a = $("<a>");
			
			li.attr("id","li"+idmutua);
			li.attr("class","mutuaAdded");
			
			span.attr("class","nombreMutua");
			span.append(mutua);								
			
			a.attr("id","btnRemoveMutua");
			a.attr("onclick","eliminaMutua('"+idmutua+"');");
			a.attr("href","javascript:;");			
			a.attr("title","Quitar esta mutua del listado");
			a.append ("(Eliminar)");
			
			li.append(span);
			li.append("&nbsp;&nbsp;");
			li.append(a);
			
			$("#mutuas").append(li);
			*/
			$("#mutuas").append('<li id="li'+idmutua+'" class="mutuaAdded"><span class="nombreMutua">'+mutua+'</span>&nbsp;&nbsp;<a id="btnRemoveMutua" href="javascript:;" title="Quitar esta mutua del listado" onclick="eliminaMutua(\''+idmutua+'\');">(Eliminar)</a></li>');
	
			mutuas[mutuas.length] = idmutua;
			
			$("#proMutuas").val('');
			
		}
				
	});					
	
	$('ul.paginadoAjax li a').live('click', function(){
		
		$.ajax({
			type: 'POST',
			data: 'pagina=' + $(this).attr("id") + '&nombre=' + $('#nombre').val() + '&provincias_idprovincia=' + $('#provincias_idprovincia').val() + '&municipios_idmunicipio=' + $('#municipios_idmunicipio').val() + '&especialidades_idespecialidad=' + $('#especialidades_idespecialidad').val() + '&mutuas_idmutua=' + $('#mutuas_idmutua').val() + '&orden=' + $('#orden').val() + '&sentido=' + $('#sentido').val(),
			url: url + urlControlador + '/paginadocentros',
		  	dataType:'json', 		  
		  	success: function(data){
			
				$('#tablaResultado').fadeOut('slow', function(){
					$('.paginadoAjax').remove();
					$('#tablaResultado').replaceWith(data.centros);	
				});		    	
		    	$('#tablaResultado').fadeIn(500);
		    	
				overCabecera();				
				
		  	} 		  	
		}); 
		return false;
	});
			
	overCabecera();

	//CLICK CABECERA
	$('#tablaResultado.ajax th').live('click',function(){
										   
			if(!$(this).hasClass('activo')){
				
				$('#tablaResultado th a').addClass('oculto');
				$('#tablaResultado th').removeClass('activo');
				$(this).removeClass('hoverl').addClass('activo');
				$('#tablaResultado th.activo a').removeClass('oculto');
				
			}else{
				
				$('#tablaResultado th.activo a').toggleClass('dos');
				
				if ($('#sentido').val() == 'DESC') {
				
					$('#sentido').val('ASC');
					
				}else {
				
					$('#sentido').val('DESC');
					
				}									
				
			}
			
			$('#orden').val($(this).attr('id'));
			
			$.ajax({
				type: 'POST',
				data: 'pagina=1&nombre=' + $('#nombre').val() + '&provincias_idprovincia=' + $('#provincias_idprovincia').val() + '&municipios_idmunicipio=' + $('#municipios_idmunicipio').val() + '&especialidades_idespecialidad=' + $('#especialidades_idespecialidad').val() + '&mutuas_idmutua=' + $('#mutuas_idmutua').val() + '&orden=' + $('#orden').val() + '&sentido=' + $('#sentido').val(),
				url: url + 'registro/paginadocentros',
			  	dataType:'json', 		  
			  	success: function(data){
				
					$('#tablaResultado').fadeOut('slow', function(){
						$('.paginadoAjax').remove();
						$('#tablaResultado').replaceWith(data.centros);	
					});		    	
			    	$('#tablaResultado').fadeIn(500);
			    	
					// HOVER CABECERA
					overCabecera();
					
			  	} 		  	
			}); 
			return false;
			
		});
	
	$('#profesionalPaso03').validate({				
		submitHandler: function (form, validator){
			
			/*if (centros.length>0){
				$('#listCentros').val(centros.join('_'));
			}*/				
			
			form.submit();
			
		}		
	});		
	
	$('#centroLightbox').validate({			
		submitHandler: function(form){		 		
			if (experto.length>0){
				$('#listExperto').val(experto.join('_'));
			}					
								
			if (mutuas.length>0){
				$('#listMutuas').val(mutuas.join('_'));
			}													
									
			if ($('#perfil').val()==1){
			
				var urlNuevoCentro = 'perfil/agregarcentronuevo'; 
				
			}else{
				
				var urlNuevoCentro = urlControlador + '/agregarcentronuevo';
				
			}
			
			$.ajax({
				type: 'POST',
				data: 'nombre=' + $('#nombre').val() + '&email=' + $('#email').val() + '&direccion=' + $('#direccion').val() + '&direccion2=' + $('#direccion2').val() + '&provincias_idprovincia=' + $('#provincias_idprovincia').val() + '&municipios_idmunicipio=' + $('#municipios_idmunicipio').val() + '&cp=' + $('#cp').val() + '&telefono=' + $('#telefono').val() + '&telefono2=' + $('#telefono2').val() + '&fax=' + $('#fax').val() + '&web=' + $('#web').val() + '&horario=' + $('#horario').val() + '&experto=' + $('#listExperto').val() + '&mutuas=' + $('#listMutuas').val(),
				url: url + urlNuevoCentro,
			  	dataType:'json', 		  
			  	success: function(data){
							
					if (!data.error){
						
						parent.centros[parent.centros.length] = data.idcentro;
						parent.$('#tablaCentrosSeleccionados tbody').append('<tr' + ((parent.centros.length%2)?' class="impar"':'')  + ' id="tr' + data.idcentro + '"><td>' + data.nombre + '</td><td>' + data.direccion + '</td><td><a class="btnRemoveCentro" href="javascript:;" onclick="eliminaCentro(\'' + data.idcentro + '\')" title="Eliminar centro de la lista"> Eliminar centro de la lista</a></td></tr>');
						
						parent.$.fancybox.close();
									
					}										
					
			  	} 		  	
			}); 			
			
			return false;	
									
		},
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){			
			$("#mensajeError").html("Debe rellenar de forma correcta todos los campos obligatorios.");
			$("#mensajeError").show();
			
			var targetOffset = $("#mensajeError").offset().top
			$('html,body').animate({scrollTop: targetOffset}, 500);
		}
	});	
	
	$('#profesionalPaso04').validate({				
		submitHandler: function (form, validator){
			
			var noasignado = false;
			
			for (var key in centros) {
			
				if (!centros[key])
					noasignado = true;	
			
			}			
			
			if (noasignado) {
			
				$("#mensajeError").html("Debe agregarle una especialidad a todos los centros que lo permitan.");
				$("#mensajeError").show();
			
				var targetOffset = $("#rastro").offset().top
				$('html,body').animate({scrollTop: targetOffset}, 500);
				
				return false;
					
			}else{
				
				form.submit();
				
			}			
			
		}		
	});					  
		  
	$('#profesionalPaso05').validate({				
		submitHandler: function (form, validator){
			
			/*if (experto.length>0){
				$('#listExperto').val(experto.join('_'));
			}*/				
			
			var noasignado = false;
			
			for (var key in centros) {
			
				if (!centros[key])
					noasignado = true;	
			
			}			
			
			if (noasignado && $('#paso').val()!=4) {
			
				$("#mensajeError").html("Debe agregarle una especialidad a todos los centros que lo permitan en el paso \"04 - Especialidades\".");
				$("#mensajeError").show();
			
				var targetOffset = $("#rastro").offset().top
				$('html,body').animate({scrollTop: targetOffset}, 500);
				
				return false;
					
			}else{							
				
				form.submit();
				
			}								
			
		}	
	});				  
		  
//********************
//**** CENTROS *******
//********************

	$('#centroPaso01').validate({	
		rules: {				  
		    provincias_idprovincia: {		      						     
		      required: function(element){
			  	if ($('#fin').val() == 0) {
			  		return true;
			  	}
			  	else {
			  		return false;
			  	}
			  }
		    },
			municipios_idmunicipio: {		      						     
		      required: function(element) {
					 if ($('#fin').val() == 0) {
						 return true;
					}else{
						return false;
					}
				}					
		    },
			direccion: {		      						     
		      required: function(element) {
					 if ($('#fin').val() == 0) {
						 return true;
					}else{
						return false;
					}				
		    	}
			},
			telefono: {		      						     
		      required: function(element) {
					if ($('#fin').val() == 0) {
						 return true;
					}else{
						return false;
					}
		    	}			    
			}
		},					   
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		submitHandler: function (form, validator){
						
			if ($('#fin').val() == 1) {
			
				if (direcciones>0)
					form.submit();
				else{
					
					$("#mensajeError").html("Debe agregar al menos una dirección.");
					$("#mensajeError").show();
					
					var targetOffset = $("#rastro").offset().top
					$('html,body').animate({scrollTop: targetOffset}, 500);
										
				}
												
			}else{								
				
				$.ajax({
					type: 'POST',
					data:'iddireccion=' + $('#iddireccion').val() + '&direccion=' + $('#direccion').val() + '&direccion2=' + $('#direccion2').val() + '&cp=' + $('#cp').val() + '&provincias_idprovincia=' + $('#provincias_idprovincia').val() + '&municipios_idmunicipio=' + $('#municipios_idmunicipio').val() + '&telefono=' + $('#telefono').val() + '&telefono2=' + $('#telefono2').val() + '&fax=' + $('#fax').val() + '&email=' + $('#email').val() + '&web=' + $('#web').val() + '&horario=' + $('#horario').val(),
					url: url + urlControlador + '/agregardireccion',
				  	dataType:'json', 		  
				  	success: function(data){
							
						//si estoy editando una dirección, cojo el valor de su posición y modifico los valores cambiados				
						if ($('#iddireccion').val() != '') {
						
							$('#centroPaso01 li a#agregar').html('<span>Agregar</span>');
							
							$('#tablaProSeleccionados tr#tr' + $('#iddireccion').val() + ' td:first').html($('#direccion').val());
							
							$('#iddireccion').val('');
														
							
						}else {
						
							$('#tablaProSeleccionados tbody').append('<tr' + ((direcciones % 2) ? ' class="impar"' : '') + ' id="tr' + direcciones + '"><td>' + $('#direccion').val() + '</td><td class="botonTablaProSeleccionados"><a class="btnRemoveCentro" href="javascript:;" onclick="eliminaDireccionCentro(' + direcciones + ')" title="Eliminar dirección de la lista"> Eliminar dirección de la lista</a></td><td class="botonTablaProSeleccionados"><a class="btnModifyCentro" href="javascript:;" onclick="editarDireccionCentro(' + direcciones + ')" title="Editar dirección de la lista"> Editar dirección de la lista</a></td></tr>');
							
							direcciones++;
							
						}				
						
						$('#direccion').val('');
						$('#direccion2').val('');
						$('#cp').val('');
						$('#telefono').val('');
						$('#telefono2').val('');
						$('#fax').val('');
						$('#web').val('');
						$('#horario').val('');
						$('#email').val('');
						$('#provincias_idprovinca>option').remove();
						$('#municipios_idmunicipio>option').remove();
						
						$('#provincias_idprovincia').val(0);
						$('#municipios_idmunicipio').append(
					        $('<option></option').val(0).html('Seleccione municipio')
					    );																						
						
						var targetOffset = $("#dirAgregadas").offset().top
						$('html,body').animate({scrollTop: targetOffset}, 500);
						
				  	} 		  	
				}); 
				return false;
								
			}
			
		},
		invalidHandler: function(form, validator){			
			$("#mensajeError").html("Debe rellenar de forma correcta todos los campos obligatorios.");
			$("#mensajeError").show();
			
			var targetOffset = $("#rastro").offset().top
			$('html,body').animate({scrollTop: targetOffset}, 500);
			
		}
	});					  
		 	
	$('#centroPaso02').validate({		
		submitHandler: function (form, validator){
			
			if (contEspecialidades>0)
				form.submit();
			else{
				
				$("#mensajeError").html("Debe agregar al menos una especialidad.");
				$("#mensajeError").show();
				
				var targetOffset = $("#rastro").offset().top
				$('html,body').animate({scrollTop: targetOffset}, 500);
				
				return false;
									
			}
		}
		
	});	
	
	/**** PAginado de los resultados de la búsqueda del paso 3 de los centros ****/
	$('ul.paginadoAjaxCentros li a').live('click', function(){
		
		$.ajax({
			type: 'POST',
			data: 'pagina=' + $(this).attr("id") + '&nombre=' + $('#nombre').val() + '&provincias_idprovincia=' + $('#provincias_idprovincia').val() + '&municipios_idmunicipio=' + $('#municipios_idmunicipio').val() + '&especialidades_idespecialidad=' + $('#especialidades_idespecialidad').val() + '&mutuas_idmutua=' + $('#mutuas_idmutua').val() + '&orden=' + $('#orden').val() + '&sentido=' + $('#sentido').val(),
			url: url + urlControlador + '/paginadoprofesionales',
		  	dataType:'json', 		  
		  	success: function(data){
			
				$('#tablaResultado').fadeOut('slow', function(){
					$('.paginadoAjaxCentros').remove();
					$('#tablaResultado').replaceWith(data.centros);	
				});		    	
		    	$('#tablaResultado').fadeIn(500);
		    	
				overCabeceraCentros();				
				
		  	} 		  	
		}); 
		return false;
	});
			  
	overCabeceraCentros();

	//CLICK CABECERA
	$('#tablaResultado.ajaxCentros th').live('click',function(){
										   
		if(!$(this).hasClass('activo')){
			
			$('#tablaResultado th a').addClass('oculto');
			$('#tablaResultado th').removeClass('activo');
			$(this).removeClass('hoverl').addClass('activo');
			$('#tablaResultado th.activo a').removeClass('oculto');
			
		}else{
			
			$('#tablaResultado th.activo a').toggleClass('dos');
			
			if ($('#sentido').val() == 'DESC') {
			
				$('#sentido').val('ASC');
				
			}else {
			
				$('#sentido').val('DESC');
				
			}									
			
		}
		
		$('#orden').val($(this).attr('id'));
		
		$.ajax({
			type: 'POST',
			data: 'pagina=' + $(this).attr("id") + '&nombre=' + $('#nombre').val() + '&provincias_idprovincia=' + $('#provincias_idprovincia').val() + '&municipios_idmunicipio=' + $('#municipios_idmunicipio').val() + '&especialidades_idespecialidad=' + $('#especialidades_idespecialidad').val() + '&mutuas_idmutua=' + $('#mutuas_idmutua').val() + '&orden=' + $('#orden').val() + '&sentido=' + $('#sentido').val(),
			url: url + urlControlador + '/paginadoprofesionales',
		  	dataType:'json', 		  
		  	success: function(data){
			
				$('#tablaResultado').fadeOut('slow', function(){
					$('.paginadoAjaxCentros').remove();
					$('#tablaResultado').replaceWith(data.centros);	
				});		    	
		    	$('#tablaResultado').fadeIn(500);
		    	
				overCabeceraCentros();				
				
		  	} 		  	
		}); 
		return false;
		
	});			  			  					 
		  
	$('#profesionalLightbox a.btnAddEsp, #centroLightbox a.btnAddEsp').click(function(){
	
		if ($("#proExperto").val()!=""){
			
			if (!experto.in_array(idexperto)){
				
				var li = $("<li>");				
				var a = $("<a>");
				
				li.attr("id","li"+idexperto);
				li.attr("class","especialidadSelect");
								
				li.append(nomExperto);								
				
				a.attr("class","eliminarEspecialidad");
				a.attr("onclick","eliminaExperto("+idexperto+");");
				a.attr("href","javascript:;");
				a.attr("title","Eliminar esta especialidad de la lista");
				a.append ("(Eliminar)");
								
				li.append("&nbsp;&nbsp;");
				li.append(a);
				
				$("#expertos").append(li);
		
				experto[experto.length] = idexperto;
				
				$("#proExperto").val('');
				
			}
			
		}
	});			  
		  
	$('#profesionalLightbox').validate({
		rules: {				
			usuHombre: {		      						     
		      required: function(element) {
			  			if ($("#usuMujer").is(":checked"))
						 	return false;
						else
							return true;
					}
		    },
			usuMujer: {		      						     
		      required: function(element) {
			  			if ($("#usuHombre").is(":checked"))
						 	return false;
						else
							return true;
					}
		    }
			    
		},
		groups: {
    		sexo: "usuMujer usuHombre"
  		},		
		submitHandler: function(form){
		 		
			if (experto.length>0){
				$('#listExperto').val(experto.join('_'));
			}					
				
			if ($("#usuMujer").is(":checked"))
				sexo = 2;
			else if ($("#usuHombre").is(":checked"))
				sexo = 1;
			else
				{
					$("#mensajeError").html('Tiene que seleccionar el campo "sexo"');
					$("#mensajeError").show();
				}
						
			$.ajax({
				type: 'POST',
				data: 'nombre=' + $('#nombre').val() + '&apellidos=' + $('#apellidos').val() + '&email=' + $('#email').val() + '&dia_nac=' + $('#dia_nac').val() + '&mes_nac=' + $('#mes_nac').val() + '&anio_nac=' + $('#anio_nac').val() + '&web=' + $('#web').val() + '&sexo=' + sexo + '&experto=' + $('#listExperto').val(),
				url: url + urlControlador + '/agregarprofesionalnuevo',
			  	dataType:'json', 		  
			  	success: function(data){
							
					if (!data.error){
						
						parent.profesionales[parent.profesionales.length] = data.idmedico;
						parent.$('#tablaProSeleccionados tbody').append('<tr' + ((parent.profesionales.length%2)?' class="impar"':'')  + ' id="tr' + data.idmedico + '"><td>' + data.nombre + '</td><td><a class="btnRemoveCentro" href="javascript:;" onclick="eliminaProfesional(\'' + data.idmedico + '\')" title="Eliminar profesional de la lista"> Eliminar profesional de la lista</a></td></tr>');
						
						parent.$.fancybox.close();
									
					}										
					
			  	} 		  	
			}); 			
			
			return false;	
									
		},
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){			
			$("#mensajeError").html("Debe rellenar de forma correcta todos los campos obligatorios.");
			$("#mensajeError").show();
			
			var targetOffset = $("#mensajeError").offset().top
			$('html,body').animate({scrollTop: targetOffset}, 500);
			
		}
	});	
	
	//Compruebo que todos los profesionales tengan alguna dirección y especialidad asignada, por lo que su valor debe ser mayor de cero.
	$('#centroPaso05').validate({
		
		submitHandler: function(form){
			
			var noasignado = false;
						
			for (var key in profesionales) {
			
				if (!profesionales[key])
					noasignado = true;	
			
			}			
			
			if (noasignado) {
			
				$("#mensajeError").html("Debe agregarle una especialidad a todos los profesionales asignados al centro.");
				$("#mensajeError").show();
				
				var targetOffset = $("#rastro").offset().top
				$('html,body').animate({scrollTop: targetOffset}, 500);
			
				return false;
					
			}else{
				
				form.submit();
				
			}
			
		}
		
	});
	
		  
};

function overCabecera()
{
	
		$('#tablaResultado.ajax th:not(.activo)').hover(function(){
					
			if (!$(this).hasClass('activo')) {
			
				//$(this).addClass('hoverl');		
				$(this).addClass('activo');
				$(this).find('a:first').removeClass('oculto');
				
			}
			
		},function(){		
		
			/*if(!$(this).hasClass('activo')){
		 
		 //$(this).removeClass('hoverl');
		 
		 
		 }*/
			$(this).find('a:first').addClass('oculto');
			$(this).removeClass('activo');
			
		}
	);
	
}

/********** REGISTRO PROFESIONALES **************/

function eliminaMutua(idmutua){
	
	$("#li"+idmutua).remove();
	mutuas.splice(mutuas.indexOf(idmutua.toString()), 1);	
	
}

function anadirCentro(iddireccion, nombre, direccion){								
	
	if (!centros.in_array(iddireccion)) {
	
		$.ajax({
			type: 'POST',
			data: 'iddireccion=' + iddireccion + '&nombre=' + nombre + '&direccion=' + direccion,
			url: url + urlControlador +'/agregarcentro',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
					
					centros[centros.length] = iddireccion;
					$('#tablaCentrosSeleccionados tbody').append('<tr' + ((centros.length%2)?' class="impar"':'')  + ' id="tr' + iddireccion + '"><td>' + nombre + '</td><td>' + direccion + '</td><td><a class="btnRemoveCentro" href="javascript:;" onclick="eliminaCentro(' + iddireccion + ')" title="Eliminar centro de la lista"> Eliminar centro de la lista</a></td></tr>');
					
					var targetOffset = $("#tablaCentrosSeleccionados").offset().top
					$('html,body').animate({scrollTop: targetOffset}, 500);
					
				}
			
			}
		});
		return false;				
		
	}
	
}

function eliminaCentro(iddireccion){
	
	if (centros.in_array(iddireccion)) {
	
		if (perfil){
			
			urlCentro = 'perfil/eliminarcentro';
			
		}else{
		
			urlCentro = urlControlador + '/eliminarcentro';
			
		}
		
		$.ajax({
			type: 'POST',
			data: 'iddireccion=' + iddireccion,
			url: url + urlCentro,
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
	
					$("#tr"+iddireccion).remove();
					centros.splice(centros.indexOf(iddireccion.toString()), 1);

				}
			
			}
		});
		return false;				
		
	}						
	
}

function anadirEspecialidadCentro(iddireccion, especialidad, idespecialidad, perfil)
{
	
	if (!especialidades[iddireccion])
	
		especialidades[iddireccion] = new Array();
	
	if (perfil){
	
		urlEspecialidadCentro = 'perfil/agregarespecialidadcentro';
		
	}else{
	
		urlEspecialidadCentro = urlControlador + '/agregarespecialidadcentro';
		
	}
	
	if (!especialidades[iddireccion].in_array(idespecialidad)) {		
	
		$.ajax({
			type: 'POST',
			data: 'iddireccion=' + iddireccion + '&especialidad=' + especialidad + '&idespecialidad=' + idespecialidad,
			url: url + urlEspecialidadCentro,
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
					
					especialidades[iddireccion][especialidades[iddireccion].length] = idespecialidad;
					$('#divCentro' + iddireccion + ' ol').append('<li class="especialidadSelect" id="esp' + idespecialidad + '">' + especialidad + '<a class="eliminarEspecialidad" onclick="eliminaEspecialidadCentro(\'' + iddireccion + '\', ' + idespecialidad + ',' + perfil + ')" title="Eliminar esta especialidad de la lista"> (Eliminar)</a></li>');
					
					centros[iddireccion]++;
					
				}
			
			}
		});
		return false;									
		
	}
		
}

function eliminaEspecialidadCentro(iddireccion, idespecialidad, perfil){
	
	if (especialidades[iddireccion].in_array(idespecialidad)) {
	
		if (perfil){
			
			urlEspecialidadCentro = 'perfil/eliminarespecialidadcentro';
			
		}else{
		
			urlEspecialidadCentro = urlControlador + '/eliminarespecialidadcentro';
			
		}
		
		$.ajax({
			type: 'POST',
			data: 'iddireccion=' + iddireccion + '&idespecialidad=' + idespecialidad,
			url: url + urlEspecialidadCentro,
			dataType: 'json',
			success: function(data){
			
				if (!data.error) {
				
					$('#divCentro' + iddireccion + ' ol li#esp' + idespecialidad).remove();
					especialidades[iddireccion].splice(especialidades[iddireccion].indexOf(idespecialidad.toString()), 1);
				
					centros[iddireccion]--;
					
				}
				
			}
		});
		return false;
		
	}
	
}

function anadirExpertoProfesional(perfil){								
	
	if ($("#proExperto").val()!=""){			
		
		if (!experto.in_array(idexperto)){
		
			if (perfil){
				
				urlExperto = 'perfil/agregarexperto';
				
			}else{
			
				urlExperto = urlControlador + '/agregarexperto';
				
			}
			
			$.ajax({
				type: 'POST',
				data: 'idexperto=' + idexperto + '&nombre=' + nomExperto,
				url: url + urlExperto,
				dataType: 'json',
				success: function(data){
				
					if (!data.error) {
					
						/*var li = $("<li>");
						var a = $("<a>");
						
						li.attr("id", "li" + idexperto);
						li.attr("class", "especialidadSelect");
						
						li.append(nomExperto);
						
						a.attr("class", "eliminarEspecialidad");
						a.attr("onclick", "eliminaExpertoProfesional('" + idexperto + "'," + perfil + ")");
						/*a.attr("href", "javascript:;");
						a.attr("title", "Eliminar esta especialidad de la lista");
						a.append("(Eliminar)");
						
						li.append("&nbsp;");
						li.append(a);*/
						
						$("#expertos").append('<li id="li' + idexperto + '" class="especialidadSelect">' + nomExperto + ' <a title="Eliminar esta especialidad de la lista" class="eliminarEspecialidad" onclick="eliminaExpertoProfesional(\'' + idexperto + '\',' + perfil + ')">(Eliminar)</a></li>');
						
						experto[experto.length] = idexperto;
						
						$("#proExperto").val('');
						
					}
					
					return false;
				}													
			});							
			
		}
	
	}
	
}

function eliminaExpertoProfesional(idexperto, perfil){
	
	if (experto.in_array(idexperto)){
		
		if (perfil){
			
			urlExperto = 'perfil/eliminarexperto';
			
		}else{
		
			urlExperto = urlControlador + '/eliminarexperto';
			
		}
		
		$.ajax({
			type: 'POST',
			data: 'idexperto=' + idexperto,
			url: url + urlExperto,
			dataType: 'json',
			success: function(data){
			
				if (!data.error) {
					
					$("#li"+idexperto).remove();
					experto.splice(experto.indexOf(idexperto.toString()), 1);
	
				}
				
				return false;
			}													
		});							
		
	}						
						
}

/*********   PARTE DE AGREGAR CENTROS        **********/

function overCabeceraCentros()
{
	
		$('#tablaResultado.ajaxCentros th:not(.activo)').hover(function(){
					
			if (!$(this).hasClass('activo')) {
			
				//$(this).addClass('hoverl');		
				$(this).addClass('activo');
				$(this).find('a:first').removeClass('oculto');
				
			}
			
		},function(){		
		
			/*if(!$(this).hasClass('activo')){
		 
		 //$(this).removeClass('hoverl');
		 
		 
		 }*/
			$(this).find('a:first').addClass('oculto');
			$(this).removeClass('activo');
			
		}
	);
	
}

function eliminaDireccionCentro(direccion)
{
	
	$.ajax({
		type: 'POST',
		data: 'direccion=' + direccion,
		url: url + urlControlador + '/eliminadireccion',
	  	dataType:'json', 		  
	  	success: function(data){
					
			direcciones--;		
			$('#tablaProSeleccionados tr#tr' + direccion).remove();
					
			
	  	} 		  	
	}); 
	return false;
		
}

function editarDireccionCentro(direccion)
{
	
	$.ajax({
		type: 'POST',
		data: 'direccion=' + direccion,
		url: url + urlControlador + '/editardireccion',
	  	dataType:'json', 		  
	  	success: function(data){
																				
			$('#direccion').val(data.direccion);
			$('#direccion2').val(data.direccion2);
			$('#cp').val(data.cp);
			$('#telefono').val(data.telefono);
			$('#telefono2').val(data.telefono2);
			$('#fax').val(data.fax);
			$('#web').val(data.web);
			$('#horario').val(data.horario);
			$('#email').val(data.email);
			$('#provincias_idprovincia').val(data.provincia);
			
			if (data.munis) {
				$.each(data.munis, function(index, value){
					$('#municipios_idmunicipio').append($('<option></option').val(index).html(value));
				});
			}
			
			$('#municipios_idmunicipio').val(data.municipio);
												
			$('#iddireccion').val(direccion);												
			$('#centroPaso01 li a#agregar').html('<span>Actualizar</span>');		
			
			var targetOffset = $("#olDirecciones").offset().top
			$('html,body').animate({scrollTop: targetOffset}, 500);
			
	  	} 		  	
	}); 
	return false;
		
}

function anadirEspecialidadDireccion(iddireccion, especialidad, idespecialidad)
{
	
	if (!especialidades[iddireccion])
	
		especialidades[iddireccion] = new Array();
	
	if (!especialidades[iddireccion].in_array(idespecialidad)) {
	
		$.ajax({
			type: 'POST',
			data: 'iddireccion=' + iddireccion + '&idespecialidad=' + idespecialidad + '&especialidad=' + especialidad,
			url: url + urlControlador + '/agregarespecialidaddireccion',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
					
					especialidades[iddireccion][especialidades[iddireccion].length] = idespecialidad;
					$('#divDireccion' + iddireccion + ' ol').append('<li class="especialidadSelect" id="esp' + idespecialidad + '">' + especialidad + ' <a class="eliminarEspecialidad" onclick="eliminaEspecialidadDireccion(' + iddireccion + ', ' + idespecialidad + ')" title="Eliminar esta especialidad de la lista">(Eliminar)</a></li>');
					contEspecialidades++;
					
				}
			
			}
		});
		return false;
		
	}
		
}

function eliminaEspecialidadDireccion(iddireccion, idespecialidad){
	
	if (especialidades[iddireccion].in_array(idespecialidad)) {
	
		$.ajax({
			type: 'POST',
			data: 'iddireccion=' + iddireccion + '&idespecialidad=' + idespecialidad,
			url: url + urlControlador + '/eliminarespecialidaddireccion',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
					
					$('#divDireccion' + iddireccion + ' ol li#esp' + idespecialidad).remove();
					especialidades[iddireccion].splice(especialidades[iddireccion].indexOf(iddireccion.toString()), 1);
					contEspecialidades--;
					
				}
			
			}
		});
		return false;
		
	}
	
}

function anadirExpertoCentro(){								
	
	if ($("#proExperto").val()!=""){			
		
		if (!experto.in_array(idexperto)){
							
			urlExperto = urlControlador + '/agregarexperto';		
			
			$.ajax({
				type: 'POST',
				data: 'idexperto=' + idexperto + '&nombre=' + nomExperto,
				url: url + urlExperto,
				dataType: 'json',
				success: function(data){
				
					if (!data.error) {											
						
						$("#expertos").append('<li id="li' + idexperto + '" class="especialidadSelect">' + nomExperto + ' <a title="Eliminar esta especialidad de la lista" class="eliminarEspecialidad" onclick="eliminaExpertoCentro(\'' + idexperto + '\')">(Eliminar)</a></li>');
						
						experto[experto.length] = idexperto;
						
						$("#proExperto").val('');
						
					}
					
					return false;
				}													
			});							
			
		}
	
	}
	
}

function eliminaExpertoCentro(idexperto){
	
	if (experto.in_array(idexperto)){
					
		urlExperto = urlControlador + '/eliminarexperto';
					
		
		$.ajax({
			type: 'POST',
			data: 'idexperto=' + idexperto,
			url: url + urlExperto,
			dataType: 'json',
			success: function(data){
			
				if (!data.error) {
					
					$("#li"+idexperto).remove();
					experto.splice(experto.indexOf(idexperto.toString()), 1);
	
				}
				
				return false;
			}													
		});							
		
	}						
						
}


function anadirMutuaCentro()
{
	
	//if ($("#proMutuas").val()!=""){
			
		mutua = $('#proMutuas  option:selected').text();
		idmutua = $('#proMutuas').val();
		
		if (!mutuas.in_array(idmutua)){						
			
			$.ajax({
			type: 'POST',
			data: 'idmutua=' + idmutua + '&mutua=' + mutua,
			url: url + urlControlador + '/agregarmutua',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
					
					var li = $("<li>");
					var span = $('<span>');
					var a = $("<a>");
					
					li.attr("id","li"+idmutua);
					li.attr("class","mutuaAdded");
					
					span.attr("class","nombreMutua");
					span.append(mutua);								
					
					a.attr("id","btnRemoveMutua");
					a.attr("onclick","eliminaMutuaCentro("+idmutua+");");
					a.attr("href","javascript:;");
					a.attr("title","Quitar esta mutua del listado");
					a.append ("(Eliminar)");
					
					li.append(span);
					li.append("&nbsp;&nbsp;");
					li.append(a);
					
					$("#mutuas").append(li);
			
					mutuas[mutuas.length] = idmutua;
					
					$("#proMutuas").val('');
					
				}
			
			}
		});
			
			
		}
		
	//}
	
	return false;	
		
}

function eliminaMutuaCentro (idmutua){
	
	
	if (mutuas.in_array(idmutua)) {
		
		$.ajax({
			type: 'POST',
			data: 'idmutua=' + idmutua,
			url: url + urlControlador + '/eliminarmutua',
			dataType: 'json',
			success: function(data){
			
				if (!data.error) {
				
					$("#li" + idmutua).remove();
					mutuas.splice(mutuas.indexOf(idmutua.toString()), 1);
					
				}
			}
		});
		
	}
}


function anadirProfesional(idmedico, nombre){
	
	if (!profesionales.in_array(idmedico)) {
	
		$.ajax({
			type: 'POST',
			data: 'idmedico=' + idmedico + '&nombre=' + nombre,
			url: url + urlControlador + '/agregarprofesional',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
					
					profesionales[profesionales.length] = idmedico;
					$('#tablaProSeleccionados tbody').append('<tr' + ((profesionales.length%2)?' class="impar"':'')  + ' id="tr' + idmedico + '"><td>' + nombre + '</td><td><a class="btnRemoveCentro" href="javascript:;" onclick="eliminaProfesional(\'' + idmedico + '\')" title="Eliminar profesional de la lista"> Eliminar profesional de la lista</a></td></tr>');
				
					var targetOffset = $("#dirProfAgregados").offset().top
					$('html,body').animate({scrollTop: targetOffset}, 500);
					
				}
			
			}
		});
		return false;			
		
	}
	
}

function eliminaProfesional(idmedico){
	
	if (profesionales.in_array(idmedico)) {
	
		$.ajax({
			type: 'POST',
			data: 'idmedico=' + idmedico,
			url: url + urlControlador + '/eliminarprofesional',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
	
					$("#tr"+idmedico).remove();
					profesionales.splice(profesionales.indexOf(idmedico.toString()), 1);

				}
			
			}
		});
		return false;			
		
	}						
	
}

function anadirDireccionProfesional(iddireccion, especialidad, idespecialidad, medico, idmedico)
{
	
	if (!especialidades[iddireccion])
	
		especialidades[iddireccion] = new Array();
		
	
	if (!especialidades[iddireccion]['p' + idmedico])
			
		especialidades[iddireccion]['p' + idmedico] = new Array();			
	
	if (!especialidades[iddireccion]['p' + idmedico].in_array(idespecialidad)) {
		
		$.ajax({
			type: 'POST',
			data: 'idmedico=' + idmedico + '&iddireccion=' + iddireccion  + '&idespecialidad=' + idespecialidad,
			url: url + urlControlador + '/agregardireccionprofesional',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
	
					tamano = especialidades[iddireccion]['p' + idmedico].length;
	
					especialidades[iddireccion]['p' + idmedico][tamano] = idespecialidad;															
										
					$('#esp' + iddireccion + ' #tablaProSeleccionados tbody').append('<tr' + ((tamano%2)?' class="impar"':'')  + ' id="tr' + idmedico + '_' + idespecialidad + '"><td>' + medico + '</td><td>' + especialidad + '</td><td><a class="btnRemoveCentro" href="javascript:;" onclick="eliminaDireccionProfesional(\'' + idmedico + '\', ' + iddireccion + ', ' + idespecialidad + ')" title="Eliminar especialista de la lista"> Eliminar especialista de la lista</a></td></tr>');
			
					profesionales['p' + idmedico]++;
														
				}
			}
		});	
	}
		
}

function eliminaDireccionProfesional(idmedico, iddireccion, idespecialidad){
	
	if (especialidades[iddireccion]['p' + idmedico].in_array(idespecialidad)) {
	
		$.ajax({
			type: 'POST',
			data: 'idmedico=' + idmedico + '&iddireccion=' + iddireccion + '&idespecialidad=' + idespecialidad,
			url: url + urlControlador + '/eliminardireccionprofesional',
			dataType: 'json',
			success: function(data){
			
				if (!data.error){
	
					$('#esp' + iddireccion + ' #tr' + idmedico + '_' + idespecialidad).remove();
					especialidades[iddireccion]['p' + idmedico].splice(especialidades[iddireccion]['p' + idmedico].indexOf(idespecialidad.toString()), 1);	
			
					profesionales['p' + idmedico]--;
			
				}
			}
		});	
	}
	
}

/*********     FIN PARTE DE AGREGAR CENTROS        **********/ 

function anadirEspecialidadCentroNuevoCentro(especialidad, idespecialidad)
{
	
	if (!especialidades.in_array(idespecialidad)){
				
		especialidades[especialidades.length] = idespecialidad;
		
		$('#divCentro0 ol').append('<li class="especialidadSelect" id="esp' + idespecialidad + '">' + especialidad + '<a class="eliminarEspecialidad" onclick="eliminaEspecialidadCentroNuevoCentro(' + idespecialidad + ')" title="Eliminar esta especialidad de la lista"> (Eliminar)</a></li>');
		
	}		
		
}

function eliminaEspecialidadCentroNuevoCentro(idespecialidad){
	
	$('#divCentro0 ol li#esp' + idespecialidad).remove();
	especialidades.splice(especialidades.indexOf(idespecialidad.toString()), 1);	
	
}

function eliminaExperto(idexperto){
	
	$("#li"+idexperto).remove();
	experto.splice(experto.indexOf(idexperto.toString()), 1);	
	
}

function comprobarUsuario(campo){
	
	$.ajax({ 
		  url: '../registro/compruebausuario',
		  type: 'POST',
		  data: campo + '='+ $('#' + campo).val(),
		  success: function(data){
		  						
				if (data.error) {
					$('#' + campo + '+ label.error' + campo).remove();
					$('#' + campo).after('<label class="error error' + campo + '">El ' + campo + ' ya está siendo utilizado</label>');					
					if (campo=='usuario')
						formUsuario = false;
					if (campo=='email')
						formEmail = false;					
				}
				else {
					$('#' + campo + '+ label.error' + campo).remove();
					if (campo=='usuario')
						formUsuario = true;
					if (campo=='email')
						formEmail = true;
				}
				
		  }, 
		  dataType:'json'
		}); 
	
}

/*************************
	VALORACION
*************************/
function valoracion(){
	/* HOVER */
	$('.preguntas ul:not(.e1,.e2,.e3,.e4,.e5) li').hover(
		function(){
			var cuala = $(this).attr('class');
			$(this).parent().addClass(cuala);
		},
		function(){
			$(this).parent().removeClass();
		}
	);
	/* CLICK */
	$('.preguntas ul:not(.e1,.e2,.e3,.e4,.e5) li').click(function(){		
		var cuala = $(this).attr('class');
		var resultado = cuala.substring(1);
		$(this).parents('li:first').find('input.recogedor').val(resultado);
		$(this).parent().removeClass();
		$(this).parent().addClass(cuala);
		//$(this).parent().find('li').unbind('mouseenter').unbind('mouseleave').unbind('click');
		$(this).parent().find('li').unbind('mouseenter').unbind('mouseleave');
	});
	
	/* MOSTRAR LIGHTBOX CONSEJOS  */
	$('#consejosEvaluacion').click(function(){
		lightboxPosiciona();
		$('#lightboxConsejos').fadeIn(250);
		
	});

	/* CERRAR LIGHTBOX CONSEJOS */
	$('#lightboxConsejos #btnCerrar').click(function(){
		$('#lightboxConsejos').fadeOut(200);
	});

	/* POSICIONA LIGHTBOX */
	function lightboxPosiciona(){
		var anchoVentana = $(window).width();
		var escrollTop = $(window).scrollTop();	
	
		var lightbox_X=(anchoVentana/2)-285;
		var lightbox_Y=escrollTop-150;
		$('#lightboxConsejos')
			.css({'left':lightbox_X})
			.stop()
			.animate({'top':lightbox_Y},500,'easeOutQuint');
	};
	
	$('#valoracionForm').validate({
		rules:{
			titulo:{
				required: true
			},
			descripcion:{
				required: true,
				opinion: true				
			}
		},
		highlight: function(element, errorClass) {
			$(element).addClass('highlight');
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass('highlight');
		},
		errorContainer: $("#mensajeErrorNoVisible"),
		errorPlacement: function(error, element) {
	    	error.appendTo( $("#mensajeErrorNoVisible"));	    		    
	  	},
		invalidHandler: function(form, validator){
			$("#mensajeErrorOp").show();
			$("#mensajeErrorOp").html("Debe rellenar de forma correcta el título y su opinión.");
			$("#btnEnviar").attr("href","#valoracionForm");
		}
		
	});
	
	$("#descripcion").limit("2000","#charsLeft");
	
	$.validator.addMethod('opinion',function(value, element){
		if (value.length>1000)
			return false;
		else
			return true
	},$.validator.format("La opinión tiene más de 2000 caracteres"));
	
}

/*************************
	LIGHTBOX LOGIN
*************************/
function lightboxLogin(){
	
	/* ACTIVAR LIGHTBOX LOGIN */
	//$('.darOpinion, .opinarLB, .addOpinion').click(function(){
	$('.aniadirProCli').click(function(){
		lightboxPosiciona();
		$('#lightboxLogin').fadeIn(250);
		
		//asigno al campo urlLB el valor del enlace al que debía dirigir.
		$('#urlLB').val($(this).attr('href'));
		
		return(false);
	});
	/* CERRAR LIGHTBOX LOGIN */
	$('#lightboxLogin .btnCerrar').click(function(){
		$('#lightboxLogin').fadeOut(200);
	});
	/* POSICIONA LIGHTBOX */
	function lightboxPosiciona(){
		var anchoVentana = $(window).width();
		var escrollTop = $(window).scrollTop();	
	
		var lightbox_X=(anchoVentana/2)-175;
		var lightbox_Y=escrollTop+150;
		$('#lightboxLogin')
			.css({'left':lightbox_X})
			.stop()
			.animate({'top':lightbox_Y},500,'easeOutQuint');
	};
}

function lightboxLoginRedSocial(){
	
	lightboxPosiciona();
	$('#lightboxLoginRedSocial').fadeIn(250);
	
	//asigno al campo urlLB el valor del enlace al que debía dirigir.
	//$('#urlLBRedSocial').val($(this).attr('href'));
		
	/* CERRAR LIGHTBOX LOGIN */
	$('#lightboxLoginRedSocial .btnCerrar').click(function(){
		$('#lightboxLoginRedSocial').fadeOut(200);
	});
	/* POSICIONA LIGHTBOX */
	function lightboxPosiciona(){
		var anchoVentana = $(window).width();
		var escrollTop = $(window).scrollTop();	
	
		var lightbox_X=(anchoVentana/2)-175;
		var lightbox_Y=escrollTop+150;
		$('#lightboxLoginRedSocial')
			.css({'left':lightbox_X})
			.stop()
			.animate({'top':lightbox_Y},500,'easeOutQuint');
	};
}

/*************************
LIGHTBOX INAPROPIADO
*************************/
function lightboxInapropiado(){
	
	/* ACTIVAR LIGHTBOX LOGIN */
	$('.inapropiadoLB').click(function(){
		lightboxPosiciona();
		$('#lightboxInapropiado').fadeIn(250);
		
		return(false);
	});
	/* CERRAR LIGHTBOX LOGIN */
	$('#lightboxInapropiado .btnCerrar').click(function(){
		$('#lightboxInapropiado').fadeOut(200);
	});
	/* POSICIONA LIGHTBOX */
	function lightboxPosiciona(){
		var anchoVentana = $(window).width();
		var escrollTop = $(window).scrollTop();	
	
		var lightbox_X=(anchoVentana/2)-175;
		var lightbox_Y=escrollTop+150;
		$('#lightboxInapropiado')
			.css({'left':lightbox_X})
			.stop()
			.animate({'top':lightbox_Y},500,'easeOutQuint');
	};
}


var win=null;
function NewWindow(mypage,myname,w,h,scroll,pos){
	
	if(pos=="random"){LeftPosition=(screen.availWidth)?Math.floor(Math.random()*(screen.availWidth-w)):50;TopPosition=(screen.availHeight)?Math.floor(Math.random()*((screen.availHeight-h)-75)):50;}
	if(pos=="center"){LeftPosition=(screen.availWidth)?(screen.availWidth-w)/2:50;TopPosition=(screen.availHeight)?(screen.availHeight-h)/2:50;}
	if(pos=="default"){LeftPosition=50;TopPosition=50}
	
	else if((pos!="center" && pos!="random" && pos!="default") || pos==null){LeftPosition=0;TopPosition=20}

	settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=yes';
	win=window.open(mypage,myname,settings);

	if(win.focus){win.focus();}
	
}

/******************
*  GOOGLE MAPS    *
******************/

var geocoder;  
var map;
var myOptions;

function inicializaGMaps() {   
	geocoder = new google.maps.Geocoder(); 
	var Latlng = new google.maps.LatLng(40.403, -3.709);    
	myOptions = {      
			zoom: 16, 
			mapTypeControl: false,
			navigationControl: false,    
			scaleControl: false,     
			center: Latlng,  
			draggable: false,    
			scrollwheel: false,
			keyboardShortcuts: false,
			disableDoubleClickZoom: true,
			mapTypeId: google.maps.MapTypeId.ROADMAP    
			};    	
}

function inicializaGMapsGrande() {   
	geocoder = new google.maps.Geocoder(); 
	var Latlng = new google.maps.LatLng(40.403, -3.709);    
	myOptions = {      
			zoom: 16, 
			mapTypeControl: true,
			navigationControl: true,    
			scaleControl: false,     
			center: Latlng,      			
			mapTypeId: google.maps.MapTypeId.ROADMAP    
			};    	
}

function direccion(direccion, capa, nombre, marcador, mostrarInfo) {		

	if (geocoder) {
		geocoder.geocode({
			'address': direccion
			}, 
			function(results, status) {
				if (status == google.maps.GeocoderStatus.OK) { 
				
					map = new google.maps.Map(document.getElementById(capa), myOptions);
					map.setCenter(results[0].geometry.location);

					//var contentString = '<div id="content">'+'<div id="siteNotice">'+'</div>'+'<h1 id="firstHeading" class="firstHeading">' + nombre + '</h1>'+'<div id="bodyContent">'+'<p><b>DIRECCION: </b>' + direccion + '</p>'+'<p><b>MAS DATOS: </b>M&aacute;s datos</p>'+'</div>'+'</div>';
					var arrDireccion = direccion.split(' ,');
					var contentString = '<h1 class="gmaps">' + nombre + '</h1><ul class="consulta"><li>' +  arrDireccion[0] + '</li><li>' + arrDireccion[1] + '(' + arrDireccion[2] + ')</li></ul>';
					var infowindow = new google.maps.InfoWindow({
						    content: contentString
						});


					var image = marcador;
					var marker = new google.maps.Marker({      
						position: results[0].geometry.location,       
						map: map,
						icon: image,      
						title:nombre
					}); 

					if (mostrarInfo){
						
						google.maps.event.addListener(marker, 'click', function() {  
								infowindow.open(map,marker);
							});
					}

				} else {
					$('#' + capa).html('No se ha podido ubicar la dirección.');
					$('#' + capa).next('.enlaceMapa').remove();
				}
		});    
	}
}
function rellenarCitas(dia, hora_inicio, hora_fin, intervalo)
{
    dia = 'd'+dia;
    hora_i_aux = hora_inicio.substring(0,2);
    minutos_i_aux = hora_inicio.substring(3,5);
    hora_f_aux = hora_fin.substring(0,2);
    minutos_f_aux = hora_fin.substring(3,5);
    
    /*alert(dia);
    alert(hora_i_aux);
    alert(minutos_i_aux);
    alert(hora_f_aux);
    alert(minutos_f_aux);*/
    
    if ($('.c'+dia+'').length == 0)
    {
        cont = 1;
        
        $('.numerodia_cadena').each(function(e){
            
            if ($(this).attr('id').substring(16,17)==dia.substring(1,2))
            {
                $('#'+$(this).attr('id')+'').css("color","#FF9600");
                
                cont_aux = 1;
                
                $('.dia_cadena td').each(function(e){
                    
                    if (cont == cont_aux)
                    {
                        $(this).css("color","#4e4e4e");
                    }
                    
                    cont_aux++;    
                });
            }      
            
            cont++;
        });
        
        $('#'+dia+'_content p').remove();
        
        content = '<div id="b1'+dia+'" class="c'+dia+'"><p id="h'+[hora_i_aux,minutos_i_aux].join("_")+dia+'" class="c'+dia+'_'+($('.c'+dia+' p').length+1)+'">'+[hora_i_aux,minutos_i_aux].join(":")+'</p></div>';
        $('#'+dia+'_content').append(content);
    }
    else
    {
        content = '<div id="b'+(($(".c"+dia+"").length)+1)+dia+'" class="c'+dia+'"><p id="h'+[hora_i_aux,minutos_i_aux].join("_")+dia+'" class="c'+dia+'_'+($('.c'+dia+' p').length+1)+'">'+[hora_i_aux,minutos_i_aux].join(":")+'</p></div>';
        $('#'+dia+'_content').append(content);
    }
    
    if (hora_i_aux == '00' || hora_i_aux == '01' || hora_i_aux == '02' || hora_i_aux == '03' || hora_i_aux == '04' ||
    hora_i_aux == '05' || hora_i_aux == '06' || hora_i_aux == '06' || hora_i_aux == '08' || hora_i_aux == '09')
        hora_i_aux = hora_i_aux.substring(1);
        
    hora_i = parseInt(hora_i_aux);
    minutos_i = parseInt(minutos_i_aux);
    hora_f = parseInt(hora_f_aux);
    minutos_f = parseInt(minutos_f_aux);
            
    while((hora_i<hora_f) || (hora_i==hora_f && minutos_i<minutos_f))
    {
        h_inicio = new Date('','','',hora_i,minutos_i,0);
    
        sh_fin = new Date('','','',hora_f,minutos_f,0);    
    
        hora_result = addTimeToDate(intervalo,'m',h_inicio,true);
            
        if ((hora_result.getHours()<hora_f) ||(hora_result.getHours()==hora_f && hora_result.getMinutes()<=minutos_f))
        {
            if (hora_result.getMinutes() >= 0 && hora_result.getMinutes() <= 9)
                minutos_aux = '0'+hora_result.getMinutes();
            else
                minutos_aux = hora_result.getMinutes();
                    
            if (hora_result.getHours() >= 0 && hora_result.getHours() <= 9)
                hora_aux = '0'+hora_result.getHours();
            else
                hora_aux = hora_result.getHours();                        
                    
                    
            content = '<p id="h'+[hora_aux,minutos_aux].join("_")+dia+'" class="c'+dia+'_'+($('.c'+dia+' p').length+1)+'">'+[hora_aux,minutos_aux].join(":")+'</p>';
            $('#b'+$('.c'+dia).length+dia+'').append(content);
        }
        
        hora_i = hora_result.getHours();
        minutos_i = hora_result.getMinutes();
    }        
    return true;
}

/*    
Time:Entero con la cantidad de unidades de tiempo a sumar a la fecha
Unit: String con el tipo de unidades que se agregaran a la fecha
      y: Años
      M: Meses
      w: Semanas
      d: Días
      h: Horas
      m: Minutos
      s: Segundos
      “”: (En blanco o cualquier otro) Milisegundos
Date: Objeto Date al que se le sumara el tiempo Indicado
dateReference: es un booleano
        true indica que
        se operará directamente en el objeto Date pasado en el tercer parámetro,
        de igual forma se retorna la referencia al final de su ejecución.
        false, la función creara un nuevo objeto Date y lo retornara
        al final de su ejecución sin afectar el objeto Date original

Retorno: Objeto Date, con la nueva fecha resultante de la suma de tiempos */
function addTimeToDate(time,unit,objDate,dateReference)
{
	    var dateTemp=(dateReference)?objDate:new Date(objDate);
	    switch(unit){
	        case 'y': dateTemp.setFullYear(objDate.getFullYear()+time); break;
	        case 'M': dateTemp.setMonth(objDate.getMonth()+time); break;
	        case 'w': dateTemp.setTime(dateTemp.getTime()+(time*7*24*60*60*1000)); break;
	        case 'd': dateTemp.setTime(dateTemp.getTime()+(time*24*60*60*1000)); break;
	        case 'h': dateTemp.setTime(dateTemp.getTime()+(time*60*60*1000)); break;
	        case 'm': dateTemp.setTime(dateTemp.getTime()+(time*60*1000)); break;
	        case 's': dateTemp.setTime(dateTemp.getTime()+(time*1000)); break;
	        default : dateTemp.setTime(dateTemp.getTime()+time); break;
	    }
	    return dateTemp;
}

function cambiaEstiloSemana(tipo,mouse,posicion)
{
    if (mouse=='over')
    {
        if (posicion!='')
        {
            $('#btn_semana_'+tipo+'_'+posicion).css("background-image","url(../img/"+tipo+"_semana_over.png)");
            $('#texto_semana_'+tipo+'_'+posicion).css("font-size","12px");
        }
        else
        {
            $('#btn_semana_'+tipo).css("background-image","url(../img/"+tipo+"_semana_over.png)");
            $('#texto_semana_'+tipo).css("font-size","12px");
        }
    }
    else
    {
        if (posicion!='')
        {
            $('#btn_semana_'+tipo+'_'+posicion).css("background-image","url(../img/"+tipo+"_semana.png)");
            $('#texto_semana_'+tipo+'_'+posicion).css("font-size","11px");
        }
        else
        {
            $('#btn_semana_'+tipo).css("background-image","url(../img/"+tipo+"_semana.png)");
            $('#texto_semana_'+tipo).css("font-size","11px");
        }
    }    
}

dias_semana = new Array("Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Domingo");

function cambiaSemana(tipo,dia_actual,mes_actual,anio_actual,posicion)
{    
    /*alert(dia_actual);
    alert(mes_actual);
    alert(anio_actual);*/
    
    dias_con_citas = new Array();
    
    $(".tr_numerodia_cadena td").each(function(e){
            if ($(this).attr('style')!=null)
            {
                dias_con_citas[$(this).attr('id').substring(16,17)] = $(this).attr('id').substring(16,17);
            }
            else
            {
                dias_con_citas[$(this).attr('id').substring(16,17)] = '';
            }
        });
    
    if (tipo == 'next')
    {
        $('#btn_semana_prev').css('visibility','visible');
        $('#texto_semana_prev').css('visibility','visible');
        
        $('#btn_semana_prev_superior').css('visibility','visible');
        $('#texto_semana_prev_superior').css('visibility','visible');
        
        id_ultimo = $(".numerodia_cadena:last").attr('id');
        diames = id_ultimo.substring(16).split('_');
        
        dia_semana = diames[0];
        dia = diames[1];
        mes = diames[2];
        anio = diames[3];
        
        fecha_actual = new Date();
        
        fecha_next = new Date(anio,mes-1,dia);      
        
        dia_semana_primero = $(".numerodia_cadena:first").attr('id').substring(16,17);
        
        $(".tr_numerodia_cadena td").each(function(e){
            $(this).remove(); 
        });
        
        for (i=1;i<8;i++)
        {
            fecha_next.setDate(fecha_next.getDate()+i);
            
            switch (fecha_next.getMonth())
            {
                 case 0:
                    m = "ene";
                    break;
                 case 1:
                    m = "feb";
                    break;
                case 2:
                    m = "mar";
                    break;
                case 3:
                    m = "abr";
                    break;
                case 4:
                    m = "may";
                    break;
                case 5:
                    m = "jun";
                    break;
                case 6:
                    m = "jul";
                    break;
                case 7:
                    m = "ago";
                    break;
                case 8:
                    m = "sep";
                    break;
                case 9:
                    m = "oct";
                    break;
                case 10:
                    m = "nov";
                    break;
                case 11:
                    m = "dic";
                    break;
            }
            
            if (dias_con_citas[dia_semana_primero]!='')
            {
                content = '<td id="numerodia_cadena'+dia_semana_primero+'_'+fecha_next.getDate()+'_'+(fecha_next.getMonth()+1)+'_'+fecha_next.getFullYear()+'" class="numerodia_cadena" style="color: #FF9600; ">'+fecha_next.getDate()+' '+m+'</td>';
            }
            else
            {
                content = '<td id="numerodia_cadena'+dia_semana_primero+'_'+fecha_next.getDate()+'_'+(fecha_next.getMonth()+1)+'_'+fecha_next.getFullYear()+'" class="numerodia_cadena">'+fecha_next.getDate()+' '+m+'</td>';
            }
            
            $(".tr_numerodia_cadena").append(content);
            
            fecha_next = new Date(anio,mes-1,dia);
            
            if ((parseInt(dia_semana_primero)+1)==8)
            {
                dia_semana_primero = 1;
            }
            else
            {
                dia_semana_primero = parseInt(dia_semana_primero) + 1;
            }
        }
    }
    else
    {
        id_ultimo = $(".numerodia_cadena:first").attr('id');
        diames = id_ultimo.substring(16).split('_');
        
        dia_semana = diames[0];
        dia = diames[1];
        mes = diames[2];
        anio = diames[3];
        
        fecha_actual = new Date();
        
        fecha_next = new Date(anio,mes-1,dia);
        
        $(".tr_numerodia_cadena td").each(function(e){
            $(this).remove(); 
        });
        
        enc = false;
        
        
        for (i=7;i>0;i--)
        {
           
                fecha_next.setDate(fecha_next.getDate()-i);
                        
                //alert(mes-1);
                //alert(fecha_next.getMonth());
                
                
                    switch (fecha_next.getMonth())
                    {
                         case 0:
                            m = "ene";
                            break;
                         case 1:
                            m = "feb";
                            break;
                        case 2:
                            m = "mar";
                            break;
                        case 3:
                            m = "abr";
                            break;
                        case 4:
                            m = "may";
                            break;
                        case 5:
                            m = "jun";
                            break;
                        case 6:
                            m = "jul";
                            break;
                        case 7:
                            m = "ago";
                            break;
                        case 8:
                            m = "sep";
                            break;
                        case 9:
                            m = "oct";
                            break;
                        case 10:
                            m = "nov";
                            break;
                        case 11:
                            m = "dic";
                            break;
                    }
                    
                    if (dias_con_citas[dia_semana]!='')
                    {
                        content = '<td id="numerodia_cadena'+dia_semana+'_'+fecha_next.getDate()+'_'+(fecha_next.getMonth()+1)+'_'+fecha_next.getFullYear()+'" class="numerodia_cadena" style="color: #FF9600; ">'+fecha_next.getDate()+' '+m+'</td>';
                    }
                    else
                    {
                        content = '<td id="numerodia_cadena'+dia_semana+'_'+fecha_next.getDate()+'_'+(fecha_next.getMonth()+1)+'_'+fecha_next.getFullYear()+'" class="numerodia_cadena">'+fecha_next.getDate()+' '+m+'</td>';
                    }                    
                    
                    $(".tr_numerodia_cadena").append(content);
                    
                    if ((parseInt(dia_semana)+1)==8)
                    {
                        dia_semana = 1;
                    }
                    else
                    {
                        dia_semana = parseInt(dia_semana) + 1;
                    }
                    
                    //fecha_actual = new Date();
                    
                    if (!enc)
                    {
                        /*
                         alert(dia_actual);
                                                 alert(mes_actual);
                                                 alert(anio_actual);
                                                 
                                                 alert(fecha_next.getDate());
                                                 alert(fecha_next.getMonth());
                                                 alert(fecha_next.getFullYear());
                         */
                        
                        if (fecha_next.getFullYear() == anio_actual && fecha_next.getMonth() == mes_actual-1 && fecha_next.getDate() == dia_actual )
                        {
                            enc = true;
                            fecha_next = new Date(anio,mes-1,dia);
                        }
                        else
                        {
                            fecha_next = new Date(anio,mes-1,dia);
                        }
                    }                    
                    else
                    {
                        fecha_next = new Date(anio,mes-1,dia);
                    }
                       
                    if (enc && i==1)
                    {
                        $('#btn_semana_prev').css('visibility','hidden');
                        $('#texto_semana_prev').css('visibility','hidden');    
                            
                        $('#btn_semana_prev_superior').css('visibility','hidden');
                        $('#texto_semana_prev_superior').css('visibility','hidden');
                    }
            
                        
        }
    }
    
    if (posicion == '' && ($('#ver_mas_citas').css("display") == 'none'))
        window.location = '#inicio_citas_online';
}

function verMasCitas()
{
    //if ($("#horas_citas_content").css("height") > 100+"px")
        //$("#horas_citas_content").css("height","100px"); 
        
    control_ver_mas_citas = false;
        
    for(i=1;i<8;i++)
    {
        if($('.cd'+i+' p').length > 5)
        {
            for(j=6;j<$('.cd'+i+' p').length+1;j++)
            {
                $('.cd'+i+'_'+j+'').css("display","none");
            }
            
            control_ver_mas_citas = true;
        }
    }
    
    if (!control_ver_mas_citas)
    {
        $("#ver_mas_citas").css("display","none");
    }   
}

function cambiaEstiloVerMas(tipo)
{
    if (tipo=="over")
        $('.btn_ver_mas_citas').attr("src","../img/ver_mas_over.png");
    else
        $('.btn_ver_mas_citas').attr("src","../img/ver_mas.png");
}

function verMasCitasAction()
{
    for(i=1;i<8;i++)
    {
        if($('.cd'+i+' p').length > 5)
        {
            for(j=6;j<$('.cd'+i+' p').length+1;j++)
            {
                $('.cd'+i+'_'+j+'').slideDown('slow').css("display","block");
            }
            
            $("#ver_mas_citas").css("display","none");
        }
    }
    
    $(".semanas_tabla_citas_superior").css("display","block");
}

function comprobarAcepto()
{
    if ($("input[name='usuLegales']").attr("checked"))
    {
        $("#citaonline").submit();
    }
    else
    {
        $("#mensajeError").show();
        $("#mensajeError").html("Debe aceptar los términos y condiciones de uso");     
    }
}

function comprobarContactarOrg()
{
    if ($("input[name='usuLegales']").attr("checked"))
    {
        email = $("#email").val();
        
        re = /^[^@ ]+@[^@ ]+.[^@ .]+$/;
        
        if (re.exec(email)!=null || email=='')
        {
            $("#contactar").submit();
        }
        else
        {
            $("#mensajeError").show();
            $("#mensajeError").html("Debe introducir un email válido");
            $("#email").addClass("highlight");
        }        
    }
    else
    {
        $("#mensajeError").show();
        $("#mensajeError").html("Debe aceptar los términos y condiciones de uso");     
    }
}

function comprobarContactarUsuario()
{
    if ($("input[name='usuLegales']").attr("checked"))
    {
        $("#contactar").submit();       
    }
    else
    {
        $("#mensajeError").show();
        $("#mensajeError").html("Debe aceptar los términos y condiciones de uso");     
    }
}

function actualizarVerTelefonoMedicos(idmedico)
{
    url = '';
    
    $.ajax({
		type: 'POST',
		data: 'idmedico=' + idmedico,
		url: url + '/especialistas/actualizarvertelefono',
	  	dataType:'json', 		  
	  	success: function(data){									
			
	  	} 		  	
	});
}

function actualizarVerTelefonoCentros(idcentro)
{
    url = '';
    
    $.ajax({
		type: 'POST',
		data: 'idcentro=' + idcentro,
		url: url + '/clinicas/actualizarvertelefono',
	  	dataType:'json', 		  
	  	success: function(data){									
			
	  	} 		  	
	});
}

function guardarVisitaMedicoRedSocial(idmedico)
{
    url = '';
    
    $.ajax({
		type: 'POST',
		data: 'idmedico=' + idmedico,
		url: url + '/especialistas/actualizarverrecomendacion',
	  	dataType:'json', 		  
	  	success: function(data){									
			
	  	} 		  	
	});
}

function guardarVisitaClinicaRedSocial(idcentro)
{
    url = '';
    
    $.ajax({
		type: 'POST',
		data: 'idcentro=' + idcentro,
		url: url + '/clinicas/actualizarverrecomendacion',
	  	dataType:'json', 		  
	  	success: function(data){									
			
	  	} 		  	
	});
}

/*
function direccion(direcciones, mostrarInfo) {
	
	
	for (clave in direcciones) {
	
		
		if (geocoder) {
			geocoder.geocode({
				'address': direcciones[clave][0]
			}, function(results, status){
								
				if (status == google.maps.GeocoderStatus.OK) {
					
					map = new google.maps.Map(document.getElementById(direcciones[clave][1]), myOptions);
					map.setCenter(results[0].geometry.location);
										
					var arrDireccion = direcciones[clave][0].split(' ,');
					var contentString = '<h1 class="gmaps">' + direcciones[clave][2] + '</h1><ul class="consulta"><li>' + arrDireccion[0] + '</li><li>' + arrDireccion[1] + '(' + arrDireccion[2] + ')</li></ul>';
					var infowindow = new google.maps.InfoWindow({
						content: contentString
					});
					
					
					var image = direcciones[clave][3];
					var marker = new google.maps.Marker({
						position: results[0].geometry.location,
						map: map,
						icon: image,
						title: direcciones[clave][2]
					});
					
					if (mostrarInfo) {
					
						google.maps.event.addListener(marker, 'click', function(){
							infowindow.open(map, marker);
						});
					}
					
				}
				else {
					$('#' + direcciones[clave][1]).html('No se ha podido ubicar la dirección.');
				}
			});
		}
		
	}
}
*/
