$(document).ready(function(){
	$('.auto').each(function(){
		$(this).autocomplete({
		    serviceUrl:'autocomplete.php',
		    minChars:2,
		    delimiter: /(,|;)\s*/, // regex or character
		    maxHeight:400,
		    width:300,
		    zIndex: 9999,
		    deferRequestBy: 0, //miliseconds
		    noCache: false, //default is false, set to true to disable caching
		    params: { input:$(this).attr('id') },
            onSelect: function(value, data){
                $('#operador_' + data).val('=');
            }
		});
	});

	$('#formBusqueda input')
		.css('color','#888888')
		.one('focus', function(){
			$(this)
				.css('color','')
				.val('');
		});

	$('#formBusqueda input').live('blur', function(){
		if (!$.trim($(this).val())){
            $(this).css('color','#888888').val($(this).attr('defaultValue'))
				.one('focus', function(){
					$(this).css('color','').val('');
				});
		}
	});
    
    
});

function limpiarCampo(elem, txt){
    if (elem.value = txt) {
        elem.value = '';
    }
}

function abrirMapa(nombre, direccion, localidad, coords){
    $.colorbox({
        width: "500px",
        height: "505px",
        inline: true,
        href: "#dialogoGooglemap",
        scrolling : false,
        onOpen:function(){
        	$('#cboxWrapper').children().first().hide();
        	$('#cboxWrapper').children().last().hide();
        	$('#cboxMiddleLeft,#cboxMiddleRight').hide();
        	$('#cboxOverlay').css('opacity','0.5');
        	$("#cboxClose").remove();
        },
        onComplete:function(){
        	$('#cboxOverlay').css('opacity','0.5');
            var arr_coords = coords.split(',');
            initialize(nombre, direccion, localidad, arr_coords[0], arr_coords[1]);
        }
    });
}

function abrirFormContacto(id_aviso){
	$.colorbox({
		scrolling : false,
        inline: true,
        href: "#dialogoAvisoContacto",
        onOpen:function(){
        	$('#cboxWrapper').children().first().hide();
        	$('#cboxWrapper').children().last().hide();
        	$('#cboxMiddleLeft,#cboxMiddleRight').hide();
        	$('#cboxOverlay').css('opacity','0.5');
        	$("#cboxClose").remove();
        	$('#dialogoAvisoContacto form').show();
        },
        onComplete:function(){
        	$('.campoForm').removeClass('errorBox');
        	$(".mensaje,.campoForm .errorElement, #mensajeError").hide();
        	$("#aviso_contacto_id").replaceWith('<input type="hidden" name="id_aviso" id="aviso_contacto_id" value="'+id_aviso+'"/>');
        	$(".campoForm input").val('');
        	$(".campoForm textarea").replaceWith('<textarea class="required sendData" name="consulta"></textarea>');
        	$(".campoForm:first input").focus();
        	$(".campoForm.titulo b").text($("#tituloAviso_"+id_aviso).text());
        	$.colorbox.resize();
        }
    });
}

function enviarConsultaAviso(){
	var errorElement = null;
	$('#mensajeError').hide();
	$('.campoForm').removeClass('errorBox');
	$(".campoForm .errorElement").css('display','none');
	$(".campoForm .required").each(function(){
		if ($.trim($(this).val()) == ''){
			errorElement = errorElement || $(this);
			$(this).parent().addClass('errorBox');
		} else {
			if (($(this).attr('name') == 'email')){
				if (!/[a-z0-9!#$%&\'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/.test($(this).val())){
					errorElement = errorElement || $(this);
					$(this).next().css('display','block');
					$(this).parent().addClass('errorBox');
				}
			}
		}
	})

	if (errorElement){
		$('#mensajeError').show();
		$.colorbox.resize();
		$(errorElement).focus();
		return false;
	} else {
		$('#dialogoAvisoContacto form').hide();
		$('#cboxLoadingGraphic').show();
		var data_to_send = 'id_aviso='+$("#aviso_contacto_id").val();
		$('.sendData').each(function(){
			data_to_send += '&'+$(this).attr('name')+'='+$(this).val();
		});
		$.ajax({
			url 	: "contactoAvisoEnviar.php",
			type	: "POST",
			data	: data_to_send,
		   	success	: function(data){
		   		$('#cboxLoadingGraphic').hide();

		   		if (data == 'OK'){
		   			$('#dialogoAvisoContacto .mensaje_ok').show();
		   		} else {
		   			$('#dialogoAvisoContacto .mensaje_error').show();
		   		}
		   		$.colorbox.resize();
		   	}
		});
	}
}

//	GOOGLE MAPS --------------------------------------------------------------------
function initialize(nombre, direccion, localidad, coords_x, coords_y) {
    var latlng = new google.maps.LatLng(coords_x, coords_y);
	var myOptions = {
    	zoom: 14,
      	center: latlng,
      	mapTypeId: google.maps.MapTypeId.ROADMAP,
		mapTypeControl: false,
		noClear : true
    }
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

	default_marker = new google.maps.Marker({
      	map: map,
		draggable: false,
		flat: false,
      	position: latlng
  	});

    var infoWindow = new google.maps.InfoWindow({
        content: '<div style="overflow:hidden"><b>'+nombre+'</b><br /><br />'+direccion+', '+localidad+'</div>',
        position: latlng
    });

    google.maps.event.addListener(default_marker, 'click', function() {
        infoWindow.open(map,default_marker);
    });

    google.maps.event.trigger(map, "resize");
    google.maps.event.trigger(default_marker, "click");
}

