	document.oncontextmenu	= function () { alert('Annuaire Inversé Gratuit'); return false; };
	document.ondragstart	= function () { return false; };
	var abp				= null;
	var map_address		= '';
    var map_description = '';

    var map;
    var geocoder;

	function loadMyMap() {
		if (GBrowserIsCompatible()) {
			var divMap			= document.getElementById('gmap');
			divMap.style.width	= '500px';
			divMap.style.height	= '400px';
			map					= new GMap2(divMap); 
			geocoder			= new GClientGeocoder();
			map.enableScrollWheelZoom();
			map.addControl(new GLargeMapControl());
			map.addControl(new GMapTypeControl());                       
			centerMapOnAdress(map_address);
		} else alert('Votre navigateur ne permet pas l\'affichage de carte Google Maps');
    }

    function centerMapOnAdress(adresse) {
        if (!adresse.length) alert('Remplir la variable adresse');
        geocoder.getLatLng(
          adresse,
          function(point) {
            if (!point) {
//                alert('Adresse : ' + addresse + " introuvable");
            } else {
                map.setCenter(point, 13);
                var marker = new GMarker(point);
                var textePopUp = map_description;

                if (textePopUp.length) {               
                    GEvent.addListener(marker, "click", function() {
                        marker.openInfoWindowHtml(textePopUp);
                    });
                    map.addOverlay(marker);
                    marker.openInfoWindowHtml(textePopUp);
                }
                    else  map.addOverlay(marker); // Affiche le marqueur
                }
              }
        );
    }

	function debug(s)
	{
		if (window.console && window.console.firebug)
		{
			console.log(s);
		} else {
//			alert(s);
		}
	}

	function notification(text, stick)
	{
		if ((stick !== undefined) && (stick == 1))
		{
			$('#notification').jGrowl(text, { header: 'Annuaire Inversé Gratuit', sticky: true });
		} else {
			$('#notification').jGrowl(text, { header: 'Annuaire Inversé Gratuit', life: 5000 });
		}
	}

	function check_q(e) {
		var keyCode = e.which ? e.which : e.keyCode;
		if (keyCode == 9) return true;
		if (keyCode == 13) $('input#findit').click();
		var allowed = '0123456789';
		if (allowed.indexOf(String.fromCharCode(keyCode)) < 0) {
			return false;
		}
	}

	$().ready(function()
	{
		$.ajaxSetup({
			cache: false,
			error: function(x,e)
				{
					if (x.status == 0) {
						notification('Probleme de connexion internet...');
					} else if (x.status == 404) {
						notification('Erreur HTTP: 404.');
					} else if (x.status == 500) {
						notification('Erreur HTTP: 500.');
					} else if (e == 'parsererror') {
						notification('Erreur JavaScript.');
					} else if (e == 'timeout') {
						notification('Erreur: Temps d\'attente dépassé.');
					} else {
						notification('Erreur.\n'+ x.responseText);
					}
				}
		});

		$('input#q').focus();
		
		try {
			adblocktest();
			abp = 0;
		} catch (e){
			abp = 1;
			var txt = '<img src=\'/images/abp.png\' /><br /><br />Vous n\'affichez pas les publicités !<br />'+
			'Celles-ci participent à payer l\'hébergement,<br />'+
			'il serait donc sympa que vous désactiviez<br />'+
			'votre bloqueur de publicité pour <b>ce site</b>, Merci';
			notification(txt, 1);
			$('input#findit').attr('disabled', true);
		}
		
		$('input#findit').bind('click', function (e) {
			var num = $('input#q').val();
			
			$('div#localisation').fadeOut(function () { $('div#results').fadeOut(); });
			
			if ((num) && (num.length == 10)) {
				$.getJSON('/ajax/query.php', { q: num }, function (data) {
					if ((data.found == true) || (data.engine == 'book')) {
						var output = '<table>';
						output += '<h2>Resultats pour le numéro '+ data.tel +'</h2>';
						output += '<tr><td><b>Numéro:</b></td><td>'+ data.tel +'</td></tr>';
						output += '<tr><td><b>Nom:</b></td><td>'+ data.name +'</td></tr>';
						output += '<tr><td><b>Adresse:</b></td><td>'+ data.address +'</td></tr>';
						output += '<tr><td><b>Ville:</b></td><td>'+ data.city +'</td></tr>';
						output += '<tr><td><b>Code postal:</b></td><td>'+ data.zip +'</td></tr>';
						output += '<tr><td><b>Infos supplémentaires:</b></td><td>'+ data.extra +'</td></tr>';
						output += '</table><br />';
						map_address		= data.address +' '+ data.city;
						map_description = ''+
										'<table border="0" width="250" cellpadding="3" cellspacing="0">'+
										'<tr><td valign="top"><div style="color: blue; font-size: 14px; font-weight: bold;">'+ data.name +'</div><font color="black"><br />'+ data.address +'<br />'+ data.city +' '+ data.zip +'<br />'+ data.tel +'<br />'+
										'</td></tr></table>';
						loadMyMap();
						$('div#results').fadeIn(function () { $('div#localisation').fadeIn(); });
					} else {
						var output = '<b>Désolé, aucune reponse pour ce numéro.</b>';
						$('div#results').fadeIn();
					}
					$('div#results').html(output);
				});
			} else {
				$('div#results').html('<b>Le numéro doit contenir 10 chiffres.</b>');
				$('div#results').fadeIn();
			}
		});
	});

