$(document).ready(function(){

	//$('#sorteo_id').change(function() {obtener_numeros('');});

	//ajustamos el tamaño de la capa de los listados
	var altoVentana = $(this).height();
	var alto_superior = $('#div_superior_izquierda').innerHeight();
	var alto_pie = $('#pie').innerHeight();

	var alto_buscador = $('#buscador').innerHeight();
	
	alto_inferior=parseInt(altoVentana)-(parseInt(alto_superior)+parseInt(alto_pie)+20);

	if ($('#cargar_numeros').length){
		$('#div_medio').height(alto_inferior+4);
	}	
	
	if ($('#cargar_contenido').length){
		$('#div_medio').height(alto_inferior);
	}	

	if ($('#cargar_numeros').length){//si existe la capa donde cargar los numeros los cargamos
	 	obtener_numeros('');
	}

 	$(".buscar_terminaciones").click(function(e) {
		e.preventDefault();

		filtro="____"+$(this).children("span").text();
		obtener_numeros(filtro);

	});

	$.validator.setDefaults({
		errorLabelContainer: $("#error_formulario"),
		wrapper: 'p'
	});

	$(".class_det_pedidos").live('click',function(e) {
		e.preventDefault();
		var currentId = $(this).attr('id');
		array_id=currentId.split('_');
	  	tr='#tr_'+array_id[1];
	  	tr_next='#verdetallepedido_'+array_id[1];
	  	if ($(tr_next).is(':visible')) {
		    $(tr_next).hide();
		    $(this).html('Detalles');
		} else {
		    $(tr_next).show();
		    $(this).html('Cerrar');
		}
	});

	$('#recuperar_pedidos').live('click',function(e) {
		e.preventDefault();

		if($("#form_recordar_datos").validate().form()){
			$.ajax({
				url: "ajax/recuperar_pedidos_cliente.php",
				data: $("#form_recordar_datos").serialize(),
				beforeSend: function(objeto){
					$('#div_formulario_pedidos').hide();
					$('#lista_pedidos').show();
					$('#lista_pedidos').html("<img id='cargando' src='imagenes/cargando.gif' />");
				},
				contentType: "application/x-www-form-urlencoded",
				dataType: "json",
				error: function(objeto, quepaso, otroobj){
					alert("Se ha producido un error");
					$('#lista_pedidos').html('');
					$('#div_formulario_pedidos').show();
					$('#lista_pedidos').hide();
				},
				global: true,
				success: function(datos){
					if(datos[0]['estado']=="ERROR"){//no se ha encontrado el email
						alert("Se ha producido un error "+datos[0]['error']);
						$('#lista_pedidos').html('');
						$('#div_formulario_pedidos').show();
						$('#lista_pedidos').hide();
					}
					else  if(datos[0]['estado']=="0"){//no se ha encontrado el email
						alert("El numero de Pedido no se ha realizado desde ese Email");
						$('#lista_pedidos').html('');
						$('#div_formulario_pedidos').show();
						$('#lista_pedidos').hide();
					}
					else if(datos[0]['estado']=="1"){//se ha encontrado el email, pero el numero de pedido no corresponde
						alert("No se han encontrado pedidos para este Email");
						$('#lista_pedidos').html('');
						$('#div_formulario_pedidos').show();
						$('#lista_pedidos').hide();
					}
					else if(datos[0]['estado']=="2"){//se ha encontado el cliente
						$('#lista_pedidos').html(datos[1]['dpedidos']);
					}
				},
				type: "POST"
			});
		}
	});

	$('#recordar_pedido').live('click',function(e) {
		e.preventDefault();
		$('#form_recordar_datos').validate().resetForm();//reseteamos el formulario
		if($("#form_recordar_datos").validate().element("#cemail_recordar")){
			$.ajax({
			url: "ajax/recordar_pedidos_cliente.php",
			data: $("#form_recordar_datos").serialize(),
			beforeSend: function(objeto){
				//se puede añadir algo para mostrar mientras se recuperand los datos
			},
			contentType: "application/x-www-form-urlencoded",
			dataType: "json",
			error: function(objeto, quepaso, otroobj){
				alert("Se ha producido un error");
			},
			global: true,
			success: function(datos){
				if(datos[0]['estado']=="ERROR"){
					alert("Se ha producido un error "+datos[0]['error']);
					}
				else  if(datos[0]['estado']=="0"){//no se ha encontrado el email
					alert("No se ha encontrado el email");
				}
				else  if(datos[0]['estado']=="1"){//no se ha encontrado el email
					alert("No se ha podido enviar el email, contacte con la administración para obtener informacion de su pedido");
				}
				else if(datos[0]['estado']=="2"){//se ha enviado el correo
					alert("Se ha enviado un Email con el numero de su ultimo pedido");
				}
			},
			type: "POST"
			});
		}
	});

	



	$("#recuperar_datos").click(function(e) {
			e.preventDefault();

      		if($("#form_recordar_datos").validate().form()){
      			$.ajax({
      			  url: "ajax/recuperar_datos_cliente.php",
			        data: $("#form_recordar_datos").serialize(),
			        beforeSend: function(objeto){
			            //se puede añadir algo para mostrar mientras se recuperand los datos

			        },
			        contentType: "application/x-www-form-urlencoded",
			        dataType: "json",
			        error: function(objeto, quepaso, otroobj){
			            alert("Se ha producido un error");
			        },
			        global: true,
			        success: function(datos){
			        	 if(datos[0]['estado']=="ERROR"){//no se ha encontrado el email
			        	 	alert("Se ha producido un error "+datos[0]['error']);
			        	 }
			          else  if(datos[0]['estado']=="0"){//no se ha encontrado el email
			           		alert("No se ha encontrado el email");
			           }
			           else if(datos[0]['estado']=="1"){//se ha encontrado el email, pero el numero de pedido no corresponde
			           		alert("Desde el email que ha indicado no se ha realizado el peido indicado, utilice recordar pedido");
			           }
			           else if(datos[0]['estado']=="2"){//se ha encontado el cliente
			           		$("#email_est").val(datos[1]['email_est']);
			           		$("#cnombre").val(datos[1]['nombre']);
									$("#cempresa").val(datos[1]['empresa']);
									$("#cmovil").val(datos[1]['telefono_movil']);
									$("#cfijo").val(datos[1]['telefono_fijo']);
									$("#cdireccion").val(datos[1]['direccion']);
									$("#cmunicipio").val(datos[1]['municipio']);
									$("#cprovincia").val(datos[1]['provincia_id']);
									$("#cpostal").val(datos[1]['cpostal']);
									$("#cemail").val(datos[1]['email']);
			           }
			        },
			        type: "POST"
				});
      	}
	});

	$("#form_compra").validate({
		errorLabelContainer: $(".error_formulario"),
		wrapper: 'p',
		messages:{
					total_unidades:"El pedido tiene que tener {0} décimos"
				}
	});



	$("#form_carrito_compra").submit(function(e) {
		e.preventDefault();
		//recorremos para ver los numeros que estan rellenos y si estan rellenos los añadiremos al formulario de carrito de la compra
		sorteo_id=$("#sorteo_id").val();

		precio=$("#form_numeros #precio").val();
		nombre_sorteo=$("#form_numeros #nombre_sorteo").val();
		var campo="";
		var verror=false;
		$.each($('#form_numeros input[name^=cantidad]'), function(i) {
    		if($(this).val()!=""){//si esta relleno lo añadimos al formulario
    			unidades=$(this).val();
    			var currentId = $(this).attr('id');
				array_id=currentId.split('_');
				numero=$("#form_numeros #numero_"+array_id[1]).val();
				disponible=$("#form_numeros #disponible_"+array_id[1]).val();
				
				if(parseInt(unidades)>parseInt(disponible))	{
					alert("Del numero, "+numero+" no puede solicitar mas unidades que las disponibles");
					verror=true;
					return false;
				}
    			campo=campo+'<input type="hidden" id="cantidad_detalle-'+numero+'_'+sorteo_id+'" name="cantidad[]" value="'+unidades+'"/><input type="hidden" name="unidades_disponibles[]" id="disponibles-'+numero+'_'+sorteo_id+'" value="'+disponible+'"><input type="hidden" name="numero[]" id="numero-'+numero+'_'+sorteo_id+'" value="'+numero+'"><input type="hidden" name="sorteo_id[]" id="sorteo_id-'+numero+'_'+sorteo_id+'" value="'+sorteo_id+'"><input type="hidden" name="precio[]" id="precio-'+numero+'_'+sorteo_id+'" value="'+precio+'"><input type="hidden" name="nombre_sorteo[]" id="precio-'+numero+'_'+sorteo_id+'" value="'+nombre_sorteo+'">';
			}
		});
		
		if(!verror){
			$("#form_carrito_compra").append(campo);
			this.submit();
		}
	});

	$('.class_numero').live('keyup', function (){$(this).val($(this).val().replace(/[^0-9]/g, ""));});//evitamos que se puedan introducir letras

	//$('.class_cantidad_carrito').live('keyup', function (){
	$('.class_cantidad_carrito').change(function() {
		unidades=$(this).val();
		var currentId = $(this).attr('id');
		array_id=currentId.split('-');
		id=array_id[1];

		unidades_disponibles=$('#disponibles-'+id).val();
		numero=$('#numero-'+id).val();

		if(parseInt(unidades)>parseInt(unidades_disponibles))	{
			alert("No se puedes solicitar mas unidades de las disponibles del numero, "+numero+".");
			//$(this).val(parseInt(unidades_disponibles));
			//unidades=parseInt(unidades_disponibles);
		}
		var verror=false;
		$.ajax({
      			  url: "ajax/actualizar_detalle_pedido.php",
			        data: "id_detalle="+id+"&cantidad="+parseInt(unidades),
			        contentType: "application/x-www-form-urlencoded",
			        dataType: "json",
			        error: function(objeto, quepaso, otroobj){
			            alert("Se ha producido un error al actualizar los datos en la sesion");
			            verror=true;
			        },
			        global: true,
			        success: function(datos){
			        	 if(datos[0]['estado']=="ERROR"){//no se ha encontrado el email
			        	 	alert("Se ha producido un error "+datos[0]['error']);
			        	 }
			        },
			        type: "POST"
				});

		if(!verror){
			precio=$('#precio-'+id).val();
			total_detalle=(unidades*precio).toFixed(0);
			$('#total_detalle-'+id).html('<div>'+total_detalle+' €</div>');
			$('#importe_detalle-'+id).val(total_detalle);
			recalc_total();
		}
	});


 	$("#buscar_numero").click(function(e) {//cuando se usa el boton para buscar numeros
   	e.preventDefault();
   	f_buscar_numero();
	});
	
	$("#buscar_numero_lupa").click(function(e) {//cuando se usa el boton para buscar numeros
   	e.preventDefault();
   	f_buscar_numero();
	});


	$("#boton_buscar_todos").live('click',function(e) {//cuando se usa el boton para buscar numeros
		e.preventDefault();
		obtener_numeros("_____");
	});

	$(".class_eliminar_detalle").live('click',function(e) {//cuando se usa el boton para buscar numeros
	   		e.preventDefault();
      		var currentId = $(this).attr('id');
      		array_id=currentId.split('-');
      		id_detalle=array_id[1];
      		
      		//llamamos a un ajax para eliminar el detalle de la sesion
      		verror = false;
      		$.ajax({
      			  url: "ajax/eliminar_detalle_pedido.php",
			        data: "id_detalle="+id_detalle,
			        contentType: "application/x-www-form-urlencoded",
			        dataType: "json",
			        error: function(objeto, quepaso, otroobj){
			            alert("Se ha producido un error");
			            verror = true;
			        },
			        global: true,
			        success: function(datos){
			        	 if(datos[0]['estado']=="ERROR"){//no se ha encontrado el email
			        	 	alert("Se ha producido un error "+datos[0]['error']);
			        	 	verror = true;
			        	 }
			        },
			        type: "POST"
				});
      		
      		if(!verror){
      			$('#tr'+array_id[1]).remove();
      			recalc_total();
      		}
	});

	$(".operaciones_numeros_carrito").live('click',function(e) {
		e.preventDefault();
      	var $button = $(this);

		var oldValue = $button.parent().find("input[type=text]").val();

      if ($button.text() == "+") {
      	if(oldValue==""){
      		oldValue=0;
      	}
			var newVal = parseFloat(oldValue) + 1;
		}
		else {
			if (oldValue>= 1) {
				var newVal = parseFloat(oldValue) - 1;
			}
		}
		$button.parent().find("input[type=text]").val(newVal);
	});
	
	$(".operaciones_numeros_carrito_detalle").live('click',function(e) {
		e.preventDefault();
		var $button = $(this);
		var oldValue = $button.parent().find("input[type=text]").val();

      if ($button.text() == "+") {
      	if(oldValue==""){
      		oldValue=0;
      	}
			var newVal = parseFloat(oldValue) + 1;
		}
		else {
			if (oldValue>= 1) {
				var newVal = parseFloat(oldValue) - 1;
			}
		}
		$button.parent().find("input[type=text]").val(newVal);
		$('.class_cantidad_carrito').change();
	});



	
});

	function obtener_numeros(filtro){
		var sorteo_id=$('#sorteo_id').val();
		$('.div_datos').hide();
		$('#cargar_numeros').show();
		$.ajax({
		url: "ajax/cargar_numeros.php",
		data: "filtro_numero="+filtro+"&sorteo_id="+sorteo_id,
		beforeSend: function(objeto){
			$('#cargar_numeros').html("<img id='cargando' src='imagenes/cargando.gif' />");
		},
		contentType: "application/x-www-form-urlencoded",
		dataType: "html",
		error: function(objeto, error, otroerror){
			$('#cargar_numeros').html("Se ha producido un error");
		},
		global: true,
		success: function(datos){
			$('#cargar_numeros').html(datos);
		},
		type: "POST"
	});


}

function f_buscar_numero(){
	var filtro="";
	$('.class_buscar').each(function(){
		value=$(this).val();
		if(value=="" || value=="-"){
			filtro=filtro+"_";
		}
		else{
			filtro=filtro+value;
		}
	});
	obtener_numeros(filtro);
}

function recalc_total(){
	if ($('#gastos_envios').length){//si esta definido los gastos de envios los tenemos que actualizar
		unidades_pedido=$("[id^='cantidad_detalle-']").sum();
		if(unidades_pedido<=$('#unidades_gastos_envios_gratis').val()){

			$('#gastos_envios').val($('#importe_gastos_envios').val());
			$('#total_gastos_envios').html("<div>"+$('#importe_gastos_envios').val()+" €</div>");
		}
		else{
			$('#gastos_envios').val(0);
			$('#total_gastos_envios').html("<div>0 €</div>");
		}
	}

	if ($('#total_unidades').length){
		$('#total_unidades').val(unidades_pedido);
	}
	total=$("[id^='importe_detalle']").sum().toFixed(0);
	if(total>0){
		total_ge=parseInt(total)+parseInt($('#gastos_envios').val());
		total_ge=total_ge.toFixed(0);
		total_ge=$.formatNumber(total_ge, {format:"#,###", locale:"es"});
	}
	else{
		total_ge="0";
	}
	$("#total_compra").html("<div>"+total_ge+" €</div>");
}


function SWdisplay(id){
	if(this.document.getElementById(id).style.display=='none'){
		this.document.getElementById(id).style.display='inline'
		document.getElementById(id+"_options").src='imagenes/up.gif';
	}else{
		this.document.getElementById(id).style.display='none'
		document.getElementById(id+"_options").src='imagenes/down.gif';
	}
}

