// JavaScript Document

function inizializarAjax(){
	$.ajaxSetup({
	  type:"POST",
	  beforeSend:function(){
		  $("#destino div").html("<div id='cargaAjax' class='centrado'><img src='imagenes/ajax-loader.gif' alt='Cargando...' title='Cargando' /></div>");
		  },
	  error:function(objeto,datos){
		  location.reload();
		},
	  success:function(datos){
		  if(datos=="Recargar"){
			  location.reload();	
		  }else{
			  $("#destino").html(datos);
			  $("a.lightbox").lightBox();
			  $("form#busquedaLibros input[type='submit']").remove()
			  $("body").scrollTop(0);
			  $(".fecha").attr("readonly", "readonly");
				inicializarDatePicker();
				$("input.fecha").datepicker();
				
		  }
		  
	  },
	  complete:function(){
		  calcularAltura();
	  }
	});	
}
function asignarOyentes(){
	//
	$("#menuPrincipal a:not(p a.enlace):not(a.externo),#siteMap a,#oculto a:not(a.externo),.tituloNoticia a,#navegacion a,.posicionamientoCurso a:not(a.procesarCarrito),#biblioteca a,#diasCalendario a").live("click",function(e){
		var enlace=$(this).attr("href");
		if(enlace.toLowerCase().indexOf("http")!=-1){
			return;	
		}
		e.preventDefault();
		if(enlace=="#"){
			return;	
		}
		if(enlace==null){
			return;	
		}
		$.ajax({
			url:enlace,
			data:"esAjax='si'"
			});	
	});
	$("span.suma a,span.resta a").live("click",function(e){
		var enlace=$(this);
		if(enlace.attr("href").toLowerCase().indexOf("http")!=-1){
			return;	
		}
		e.preventDefault();
		if(enlace.attr("href")=="#"){
			return;	
		}
		if(enlace.attr("href")==null){
			return;	
		}
		$.ajax({
			url:enlace.attr("href"),
			data:"esAjax='si'",
			success:function(datos){
				if(datos=="no"){
					return;
				}
				unidades=parseInt(enlace.parent().siblings("span.unidades").text(),10);
				if(enlace.attr("href").indexOf("s=no")!=-1){
					unidades=unidades-1
					enlace.parent().siblings("span.unidades").text(unidades)
				}else{
					unidades=unidades+1
					enlace.parent().siblings("span.unidades").text(unidades)
				}
				sumar();
			},beforeSend:function(){
		  }
		});
	});
	$("span.mas a,span.menos a").live("click",function(e){
		var enlace=$(this);
		if(enlace.attr("href").toLowerCase().indexOf("http")!=-1){
			return;	
		}
		e.preventDefault();
		if(enlace.attr("href")=="#"){
			return;	
		}
		if(enlace.attr("href")==null){
			return;	
		}
		$.ajax({
			url:enlace.attr("href"),
			data:"esAjax='si'",
			success:function(datos){
				$("#calendario .subSeccion").html(datos);
			},beforeSend:function(){
		  }
		});
	});
	
	$("a.procesarCarrito").live("click",function(e){
		var enlace=$(this);
		if(enlace.attr("href").toLowerCase().indexOf("http")!=-1){
			return;	
		}
		
		e.preventDefault();
		if(enlace.attr("href")=="#"){
			return;	
		}
		if(enlace.attr("href")==null){
			return;	
		}
		$.ajax({
			url:enlace.attr("href"),
			data:"esAjax='si'",
			success:function(datos){
				if(datos=="no"){
					return;
				}
				if(enlace.text()==">>Quitar del Carrito"){
					enlace.attr('href',enlace.attr('href').replace("_procesarCarrito.asp?s=no", "_procesarCarrito.asp?s=si"));
					enlace.text(">>Añadir al Carrito")
					if($("#pagina").children("p.subTitulo").children("span").text()=="Carrito de la compra"){
						enlace.parent().parent().parent().next().remove();
						enlace.parent().parent().parent().remove();
					}
				}else{
					enlace.attr('href',enlace.attr('href').replace("_procesarCarrito.asp?s=si", "_procesarCarrito.asp?s=no"));
					enlace.text(">>Quitar del Carrito")
				}
				if(datos==-1){
					$("div#carrito").next().remove();
					$("div#carrito").remove();	
					if($("#pagina").children("p.subTitulo").children("span").text()=="Carrito de la compra"){
						location.reload();	
					}
				}else{	
					if($("div#carrito").text()==""){
						$("div#login").after(datos);
					}else{
						$("div#carrito").next().remove();
						$("div#carrito").remove();	
						$("div#login").after(datos);
					}
				}
				sumar();
			},beforeSend:function(){
		  }
		});	
	});
	$("#entrar[value*='Entrar']").live("click",function(e){
		e.preventDefault();
		if(!$(this).siblings(".obligatorio").validarColor()){
			ventanaError("Hay campos obliglatorios en blanco");
			return;
		}
		$.ajax({
			url:"Scripts/_login.asp",
			async:false,
			data:"esAjax='si'&"+$(this).parent().serialize(),
			success:function(datos){
				if(datos=="no"){
					ventanaError("Datos incorrectos");
					return;
				}else{
					location.reload();	
				}
			},
			beforeSend:function(){},
		});
	});
	$("input[value*='Enviar']:not(form[name='ne'] input)").live("click",function(e){
		e.preventDefault();
		if(!$("#leido").is(':checked')){
			ventanaError("No ha aceptado las condiciones.");
			return;
		}
		if(!$("form.contacto .obligatorio").validar()){
			ventanaError("Hay campos obligatorios en blanco");
			return;
			
		}
		if(!$(".dni2").dni2()){
			ventanaError("<h4>El DNI no es v&aacute;lido:</h4><h4> - Debe tener el formato 12345678-W</h4>");
			return;
		}
		$.ajax({
			url:$("form.contacto").attr("action"),
			data:"esAjax='si'&"+$("form.contacto").serialize(),
			success:function(datos){
			  $("#destino").html(datos);
			  $("form#busquedaLibros input[type='submit']").remove()
			  $("body").scrollTop(0);
			  if($("#pagina").children("p.subTitulo").children("span").text()=="Resultado proceso de pedido"){
				  $("div#carrito").next().remove();
				  $("div#carrito").remove();	
			  }
		  }
		});
	});
	$("input[value*='Votar']").live("click",function(e){
		e.preventDefault();
		$.ajax({
			url:$("form.contacto").attr("action"),
			data:"esAjax='si'&"+$("form.contacto").serialize()
		});
	});
		$("form#busquedaLibros input[type='text']").live("keyup",function(e){
		e.preventDefault();
		if($(this).val().length<3){
			return;
		}
		$.ajax({
			url:$("form#busquedaLibros").attr("action"),
			data:"esAjax='si'&"+$("form#busquedaLibros").serialize(),
			success:function(datos){
				$("#biblioteca").html(datos);
			},
			beforeSend:function(){}
		});
	});
	$("form#busquedaLibros select").live("change",function(e){
			
		if($("form#busquedaLibros input[type='text']").val().length<3){
			return;
		}
		$.ajax({
			url:$("form#busquedaLibros").attr("action"),
			data:"esAjax='si'&"+$("form#busquedaLibros").serialize(),
			success:function(datos){
				$("#biblioteca").html(datos);
			},
			beforeSend:function(){}
		});
	});
	$("form#busquedaVisados input[type='submit']").live("click",function(e){
		e.preventDefault();
		$.ajax({
			url:$("form#busquedaVisados").attr("action"),
			data:"esAjax='si'&"+$("form#busquedaVisados").serialize(),
			success:function(datos){
				$("div#impresion").html(datos);
			},
			beforeSend:function(){}
		});
	});
}

jQuery.fn.validarColor=function(){
	valido=true;
	$(this).each(function(){
		if($(this).css("color")==colorComprobacion){	
				valido= false;
		}
	});
	return valido;
}

jQuery.fn.validar=function(){
	valido=true;
	$(this).each(function(){
		if(jQuery.trim($(this).val())==""){	
				valido= false;
		}
	});
	return valido;
}

jQuery.fn.dni2=function(){
	valido=true;
	$(this).each(function(){
		if(!/^(X(-|\.)?0?\d{7}(-|\.)?[A-Z]|[A-Z](-|\.)?\d{7}(-|\.)? [0-9A-Z]|\d{8}(-)[A-Z])$/.test($(this).val())){	
			valido= false;
		}
	});
	return valido;
}

function ventanaError(mensaje){
	$("body").append("<div id='dialogo' title='Error'>"+mensaje+"</div>");
	$("#dialogo").dialog({
		autoOpen: false,
		modal:true,
		resizable: false,
		modal: true,
		buttons: {
		Aceptar: function() {
			$( this ).dialog( "close" );
			}
		},
		close:function(){
			$(this).remove();
		}
		})	.dialog("open");
		
}

function sumar(){
	sumatorio=0
				$("span.precio").each(function(){
					unidades=$(this).parent().parent().siblings("p.derecha").children("span.unidades").text();
					sumatorio=parseFloat(sumatorio)+(unidades*parseFloat($(this).text().replace(",",".")))
				});
				$("span#total").text(sumatorio+" €");
				$("span#total").text($("span#total").text().replace(".",","));	
}
