function updateTips(text){ alert(text); }

function checkLength(o,n,min,max) {
	if ( o.val().length > max || o.val().length < min ) {
		o.addClass('ui-state-error');
		updateTips(n + " debe tener entre "+min+" y "+max+" caracteres.");
		return false;
	} else {
		return true;
	}
}

function checkRegexp(o,regexp,n) {
	if(!(regexp.test(o.val()))){
		o.addClass('ui-state-error');
		updateTips(n);
		return false;
	}else{return true;}
}

function checkExt(o){
	if (o.val().length > 1){
		ext = (o.val().substring(o.val().lastIndexOf("."))).toLowerCase();
		if (ext != '.jpg'){
			o.addClass('ui-state-error');
			alert('La imagen debe ser un archivo jpg válido');
			return false;
		} else { return true; }
	} else { return true; }
}

function checkFile(o) {
	if (o.val().length < 1){
		o.addClass('ui-state-error');
		updateTips('Debe seleccionar un archivo');
		return false;
	} else { return true; }
}

function isChecked(o){
	if(o.attr('checked')){return true;}
	else{return false;}
}

function htmlentities(txt){
	txt.replace(/ñ/,'&ntilde;').replace(/Ñ/,'&Ntilde;').replace(/á/,'&aacute;').replace(/Á/,'&Aacute;').replace(/é/,'&eacute;').replace(/É/,'&Eacute;').replace(/í/,'&iacute;').replace(/Í/,'&Iacute;').replace(/ó/,'&oacute;').replace(/Ó/,'&Oacute;').replace(/ú/,'&uacute;').replace(/Ú/,'&Uacute;');
	return txt
	
}


function htmlentities_busqueda(txt){
		
	aux = txt.replace(/ñ/,'n').replace(/Ñ/,'N').replace(/á/,'a').replace(/Á/,'A').replace(/é/,'e').replace(/É/,'E').replace(/í/,'i').replace(/Í/,'I').replace(/ó/,'o').replace(/Ó/,'O').replace(/ú/,'u').replace(/Ú/,'U');
	
	return aux;
	
}



function buscar(options){
	var parametros = $.extend({
		autor1:'',
		autor2:'',
		autor3:'',
		editorial:'',
		titulo:'',
		palabraClave:'',
		categoria:'resultados',
		pagina:1,
		incluirDescripcion:1		
	},options||{});

	$.ajax({
		url:'./buscador/resultadoBusqueda.php',
		type:'POST',
		cache:false,
		data:{
			txtPalabraClave:htmlentities_busqueda(parametros.palabraClave.toLowerCase()),
			txtAutor1:htmlentities_busqueda(parametros.autor1.toLowerCase()),
			txtAutor2:htmlentities_busqueda(parametros.autor2.toLowerCase()),
			txtAutor3:htmlentities_busqueda(parametros.autor3.toLowerCase()),
			txtEditorial:htmlentities_busqueda(parametros.editorial.toLowerCase()),
			txtTitulo:htmlentities_busqueda(parametros.titulo.toLowerCase()),
			nroPagina:parametros.pagina,
			categoria:parametros.categoria,
			incluirDescripcion:parametros.incluirDescripcion
		},
		dataType:'html',
		success:function(html){			
			$('#resultado').html(html);
			if ($('#resultado').css('display') == 'none'){
				$('#divBusquedaAvanzada').slideUp('normal');
				$('#resultado').slideDown('normal');
			}
		},
		error:function(){ alert('Error al buscar');}
	});
}

function buscarXAutor(str){buscar({autor1:str});}
function buscarXTema(str){buscar({palabraClave:str});}
function buscarXEditorial(str){buscar({editorial:str});}
function buscarXYear(str){buscar({palabraClave:str});}
function buscarXPalabraClave(str){buscar({palabraClave:str});}


function verDestacado(){
	$.ajax({
		url:'./buscador/destacado.php',
		cache:false,
		success:function(html){
			$('#resultado').slideUp('normal',function(){
				$('#resultado').html(html);
				$('#resultado').slideDown('normal');
			});
		},
		error:function(){ alert('Error al buscar la página Destacados');}
	});
}


function verDetalle(idLibro,returnToIndex){
	$.ajax({
		url:'./buscador/detalle.php',
		type:'POST',
		data:{id:idLibro,returnToIndex:returnToIndex},
		dataType:'html',
		cache:false,
		success:function(html){
			$('#resultado').slideUp('normal',function(){
				$('#resultado').html(html);
				$('#resultado').slideDown('normal');
			});
		},
		error:function(){ alert('Error al buscar detalle');}
	});
}

function volver(returnToIndex){
	if (returnToIndex){
		$.ajax({
			url:'./buscador/recomendados.php',
			dataType:'html',
			cache:false,
			success:function(html){
				$('#resultado').slideUp('normal',function(){
					$('#resultado').html(html);
					$('#resultado').slideDown('normal');
				});
			},
			error:function(){ alert('Error al buscar');}
		});
	}else{
		$.ajax({
			url:'./buscador/resultadoBusqueda.php',
			type:'POST',
			data:{ lastSearch:true },
			dataType:'html',
			cache:false,
			success:function(html){
				$('#resultado').slideUp('normal',function(){
					$('#resultado').html(html);
					$('#resultado').slideDown('normal');
				});
			},
			error:function(){ alert('Error al buscar');}
		});

	}
}

function enviarConsulta(){
	var valid = validarFormularioContacto();
	if (valid) {
		$('#frmContacto').ajaxSubmit({
			url:'./buscador/enviarConsulta.php',
			type:'post',
			dataType:'json',
			cache:false,
			success:function(result){
				alert(result.text);
				if (result.exito){
					volver(false);
				}
			},
			resetForm:true
		});
	}
}


function enviarFormularioCompra(){
	//alert('Entro');
	var valid = validarFormularioCompra();
	//alert('valid = ' + valid);
	if (valid){
		$('#frmCompra').ajaxSubmit({
			url:'./buscador/enviarFormularioCompra.php',
			type:'post',
			dataType:'json',
			cache:false,
			success:function(result){
				//alert('Y?');
				alert(result.text);
				if (result.exito){
					actualizarDetalleCarrito();
					volver(false);
				}
			},
			error:function(){
				alert('Ocurrio un error al intentar enviar el correo!')
			},
			resetForm:true
		});
	}
}

function consultar(id){
	$.ajax({
		url:'./buscador/contacto.php',
		type:'post',
		dataType:'html',
		cache:false,
		data:{idLibro:id},
		success:function(html){
			$('#resultado').slideUp('normal',function(){
				$('#resultado').html(html);
				$('#resultado').slideDown('normal');
			});
		},
		error:function(){ alert('Error al buscar la página de contacto');}
	});
}

function comoComprar(){
	$.ajax({
		url:'./buscador/comoComprar.php',
		dataType:'html',
		success:function(html){
			$('#resultado').slideUp('normal',function(){
				$('#resultado').html(html);
				$('#resultado').slideDown('normal');
			});
		},
		error:function(){ alert('Error al buscar la página');}
	});
}

function quienesSomos(){
	$.ajax({
		url:'./buscador/quienesSomos.php',
		dataType:'html',
		success:function(html){
			$('#resultado').slideUp('normal',function(){
				$('#resultado').html(html);
				$('#resultado').slideDown('normal');
			});
		},
		error:function(){ alert('Error al buscar la página');}
	});
}

function finalizarCompra(cantItems){
	
		$.ajax({
			url:'./buscador/formCompra.php',
			dataType:'html',
			success:function(html){
				$('#resultado').slideUp('normal',function(){
					$('#resultado').html(html);
					$('#resultado').slideDown('normal');
				});
			},
			error:function(){ alert('Error al buscar la página');}
		});
}

function validarFormularioContacto(){
	var valid = true;
	valid = valid && checkRegexp($('#txtEmail'),/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,"Debe ingresar un E-mail válido.\nEj.: nombre@dominio.com");

	return valid;

}


function validarFormularioCompra(){
	$('.ui-state-error').removeClass('ui-state-error');


	var valid = true;
	valid = valid && checkRegexp($('#txtEmail'),/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,"Debe ingresar un E-mail válido.\nEj.: nombre@dominio.com");
	valid = valid && checkLength($('#txtApellido'),'Apellido',1,255);
	valid = valid && checkLength($('#txtNombre'),'Nombre',1,255);
	valid = valid && checkLength($('#txtCalle'),'Calle',1,255);
	valid = valid && checkLength($('#txtNro'),'Nro.',1,255);
	valid = valid && checkLength($('#txtCP'),'Código Postal',1,255);
	valid = valid && checkLength($('#txtLocalidad'),'Localidad',1,255);
	valid = valid && checkLength($('#txtProvincia'),'Provincia',1,255);
	
	if (valid) {
		var ok = isChecked($('#chkEfectivoContraReembolso'))   ||
					isChecked($('#chkTransferenciaBancaria')) ||
					isChecked($('#chkTarjetaCredito'))    ||
					isChecked($('#chkPagoFacil'))     ||
					isChecked($('#chkGiro'))     ||
					isChecked($('#chkLocal'));
		if (!ok){
			valid = false;
			alert('Debe seleccionar un modo de pago');
		}
	}
	
	if (valid){
		$('#txtEmail').val(htmlentities($('#txtEmail').val()));
		$('#txtApellido').val(htmlentities($('#txtApellido').val()));
		$('#txtNombre').val(htmlentities($('#txtNombre').val()));
		$('#txtCalle').val(htmlentities($('#txtCalle').val()));
		$('#txtNro').val(htmlentities($('#txtNro').val()));
		$('#txtCP').val(htmlentities($('#txtCP').val()));
		$('#txtLocalidad').val(htmlentities($('#txtLocalidad').val()));
		$('#txtProvincia').val(htmlentities($('#txtProvincia').val()));
		$('#txtNro2').val(htmlentities($('#txtNro2').val()));
		$('#txtNro3').val(htmlentities($('#txtNro3').val()));
		$('#txtTelefono').val(htmlentities($('#txtTelefono').val()));
	}

	return valid;
}



$(document).ready(function(){
	
	$(document).pngFix();
	
	$('#linkSociologia').click(function(){buscar({categoria:'sociologia'});return false;});
	$('#linkPsicologia').click(function(){buscar({categoria:'psicologia'});return false;});
	$('#linkPsiquiatria').click(function(){buscar({categoria:'psiquiatria'});return false;});
	$('#linkEducacion').click(function(){buscar({categoria:'educacion'});return false;});
	$('#linkFilosofia').click(function(){buscar({categoria:'filosofia'});return false;});
	$('#linkHistoria').click(function(){buscar({categoria:'historia'});return false;});
	$('#linkPolitica').click(function(){buscar({categoria:'politica'});return false;});
	$('#linkEconomia').click(function(){buscar({categoria:'economia'});return false;});
	$('#linkTrabajo').click(function(){buscar({categoria:'trabajo'});return false;});
	$('#linkComunicacion').click(function(){buscar({categoria:'comunicacion'});return false;});
	
	$('#btnBusquedaSimple').click(function(){
		buscar({
			palabraClave:$('#txtBusquedaSimple').val(),
			incluirDescripcion:0
		});
		return false;
	});

	$('#btnBusquedaAvanzada').click(function(){
		buscar({
			autor1:$('#txtAutor1').val(),
			autor2:$('#txtAutor2').val(),
			autor3:$('#txtAutor3').val(),
			editorial:$('#txtEditorial').val(),
			titulo:$('#txtTitulo').val(),
			palabraClave:$('#txtPalabraClave').val()
		});
		return false;
	});

	$('#btnIrABusquedaAvanzada').click(function(){
		$('#divBusquedaAvanzada').slideToggle('normal');
		$('#resultado').slideToggle('normal');
		return false;
	});

});