$(function() {
    $('#galeria a').lightBox();
});

$(document).ready(function() {
	
	function obtener_url(url_cat, url_prov) {
		var url=base_url;
		if (url_cat) 
			url+=url_cat;
		else 
			url+='anuncios';
		if (url_prov)
			url+='-en-'+url_prov;
		return url;		
	}

	
	//Al cambiar el valor de un select de los filtros, redireccionamos al filtrado.
	$('#categoria_s').change(function() {
		var url_cat=$(this, 'option:selected').val();
		var url_prov=$('#localizacion_s option:selected').val();
		
		window.location.href = obtener_url(url_cat, url_prov);
	}) 
	
	$('#subcategoria_s').live('change', function(){
		var url_cat=$(this, 'option:selected').val();
		if (!url_cat) {
			url_cat=$('#categoria_s option:selected').val();
		}			
		var url_prov=$('#localizacion_s option:selected').val();
		
		window.location.href = obtener_url(url_cat, url_prov);
	})

	$('#localizacion_s').change(function() {
		var url_cat=$('#subcategoria_s option:selected').val();
		//Si no hay una subcatgoría seleccionada, cogemos la categoría.
		if (!url_cat) {
			url_cat=$('#categoria_s option:selected').val();
		}
		var url_prov=$(this, 'option:selected').val();
		
		window.location.href = obtener_url(url_cat, url_prov);
	}) 
	
	//Al cambiar el valor de un select de categorías, recargamos las subcategorías.
	$('#categoria').change(function() {
		var id_categoria=$(this, 'option:selected').val();
		var options = '';			
		if (id_categoria > 0) {
			$.post(base_url+'jsonsubcategorias', {id_categoria: id_categoria}, function(data) {
				var subcategorias = $.parseJSON(data);
				$.each(subcategorias, function() {
			        options += '<option value="' + this.id_subcategoria + '">' + this.subcategoria + '</option>';
				})
      			$("select#subcategoria").html(options);								
			});
		} else {
			options='<option value="0">Subcategoría</option>';
      		$("select#subcategoria").html(options);							
		}
	});
	
	//Al pulsar un select de subcategorías, si no tiene elementos alertamos al usuario.
	$('#subcategoria').click(function() {
		if ($('option', this).size() == 1) {
			alert("Debe seleccionar antes una categoría");
		}
	});
	
	//Borrar anuncios desde el panel de usuario.
	$('.borrar_anuncio').click(function () {
		if (confirm("¿Seguro que desea eliminar este anuncio?")) {
			var id_anuncio=$(this).attr('rel');
			var contenedor_anuncio=$(this).parent().parent();
			$.post(base_url+"edicion/borrar/"+id_anuncio, function(data) {
				if (data == 0) {
					alert("Ocurrió un error al borrar el anuncio seleccionado");
				} else {
					//El anuncio ha sido borrado, así ocultamos el html que lo contiene
					contenedor_anuncio.toggle(500);
				}
			})
		}
		return false;
	});
	
	//Borrar imágenes desde el panel de usuario.
	$('.borrar_imagen').click(function() {
		if (confirm("¿Seguro que desea eliminar esta imagen")) {			
			var id_imagen=$(this).attr('rel');
			var contenedor_imagen=$(this).parent();
			$.post(base_url+"edicion/borrar_imagen/"+id_imagen, function(data) {
				if (data == 0) {
					alert("Ocurrió un error al borrar la imagen seleccionada");
				} else {
					//La imagen ha sido borrada, así ocultamos el html de la imagen.
					contenedor_imagen.toggle(500);
				}
			});			
		}
		return false;
	});
	
	$('.denunciar').click(function() {
		if (confirm("¿Realmente desea denunciar este anuncio?")) {
			var tipo=$(this).attr('rel');
			var id_anuncio=$(this).parent().attr('rel');
			$.post(base_url+"denunciar/"+id_anuncio, {tipo: tipo}, function(data) {
				if (data == 'ok') {
					alert("Su denuncia ha sido enviada.");
				} else {
					if (data == 'repe') {
						alert("Usted ya ha denunciado este anuncio.");
					} else {
						alert("Ocurrió un error al enviar la denuncia.");
					}
				}
			})
		}
		return false;
	})
	
	$('.orden').click(function() {
		var frm= $('#ordenfrm');
		var rel=$(this).attr('rel');
		var orden=$('#ordenlst');
		var direccion=$('#direccionlst');

		if (rel=='fechaasc') {
			orden.val('fecha');
			direccion.val('ASC');
		}

		if (rel=='fechadesc') {
			orden.val('fecha');
			direccion.val('DESC');
		}

		if (rel=='precioasc') {
			orden.val('precio');
			direccion.val('ASC');
		}

		if (rel=='preciodesc') {
			orden.val('precio');
			direccion.val('DESC');
		}
		if (orden.val() && direccion.val()) {
			frm.submit();
		}
		return false;
	});
	
	$('#mostrar_provincias').click(function() {
		$('.ocultable').toggle(500);
		if ($(this).html() == 'Mostrar todas las provincias') {
			$(this).html('Ocultar provincias');
		} else {
			$(this).html('Mostrar todas las provincias');
		}
		return false;
	})
	
	$('#cargar_no_validados').click(function() {
		var contenedor=$(this).parent();

		var url_cat=$('#subcategoria_s option:selected').val();

		if (!url_cat) {
			url_cat=$('#categoria_s option:selected').val();
		}
		var url_prov=$('#localizacion_s option:selected').val();
		
		$.post(base_url+"anuncios_no_validados", {categorizacion: url_cat, provincia: url_prov}, function(data) {
			if (data) {
				contenedor.html(data);
			}
		})

		return false;
	})
	
});
