/* On crée une variable qui contiendra l'objet XHR */
var requete = null;
function creerRequete() {
	try {
		/* On essaye de créer un objet XmlHTTPRequest */
		requete = new XMLHttpRequest();
	} catch (microsoft) {
		/* Si cela ne marche pas, on a peut-être affaire à un navigateur de Microsoft. On tente alors de créer un objet ActiveX */
			try {
				requete = new ActiveXObject('Msxml2.XMLHTTP');
			} catch(autremicrosoft) {
				/* Autre méthode si la première n'a pas marché */
				try {
					requete = new ActiveXObject('Microsoft.XMLHTTP');
				} catch(echec) {
				/* Si aucune méthode ne fonctionne, on laisse l'objet vide*/
					requete = null;
			}
		}
	}
	if(requete == null) {
		alert('Votre navigateur ne semble pas supporter les object XMLHttpRequest.');
	}
}

/*------------------------------------------------------------------------------------------*/
/*ENVOI DU FORMULAIRE A MAPPY */
/*------------------------------------------------------------------------------------------*/
function appli_terminal(){
  var frm = document.forms['formTerminal'];
  var str = jQuery(frm).serialize();
  var mess = '';
  if(frm.elements['ville'].value == "") mess += '- Vous devez renseigner votre ville\n';
  if(frm.elements['pays'].value == "0") mess += '- Vous devez s\351lectionner votre pays\n';

  var country = frm.elements['pays'].value;
  var town = frm.elements['ville'].value;
  var regexp = '90000';
  if(str.match(regexp)){
    var rayon = '90000';
  }else{
    var rayon = '265000';
  }
  alert(rayon);
  if(mess != ''){
    alert(mess);
    return false;
  }
  else{
    getOAjax();
    
    OAjax.onreadystatechange = function(){
      if (OAjax.readyState == 4 && OAjax.status == 200){
        document.getElementById('resultat').innerHTML = OAjax.responseText;
        document.getElementById('conteneur_loading').style.visibility = 'hidden';
        jQuery("a.inline").fancybox({'titleShow':true,'showCloseButton':true});
        jQuery("a#autostart").fancybox().trigger("click");

        // Envoi PAYS et Ville à Mappy
        var addr = new Mappy.api.geolocation.AddressLocation(country,town);

        var geo = new Mappy.api.geolocation.Geocoder();

        //FONCTION DE GEOCODAGE - MARKER DE L'INTERNAUTE
        geo.geocode(addr, function(results){
            for (var i = 0; i < results.length; i += 1){
              // Récupération de la Longitude et Latitude de la ville
              var lon = results[i].Placemark.Point.coordinates[0];
              var lat = results[i].Placemark.Point.coordinates[1];
            }

            // Construction de la carte
            var map = new Mappy.api.map.Map({
              container:'#mymap'
            });
            map.setCenter(new Mappy.api.geo.Coordinates(lon,lat),3);

            // Construction du Marqueur de la ville de l'internaute
            var markerLayer = new Mappy.api.map.layer.MarkerLayer(40);
            map.addLayer(markerLayer);
            var icon = new Mappy.api.ui.Icon(Mappy.api.ui.Icon.DEFAULT);
            icon.label = 'D';
            var marker = new Mappy.api.map.Marker(new Mappy.api.geo.Coordinates(lon,lat), icon);
            marker.addToolTip('Votre lieu de chargement');
            marker.addListener("click", function (){
                marker.openPopUp('Informations about marker A.');
            });
            markerLayer.addMarker(marker);
            alert(rayon);
            // Construction du Rayon de recherche
            var shapeLayer = new Mappy.api.map.layer.ShapeLayer(40);
            map.addLayer(shapeLayer);
            var circle = new Mappy.api.map.shape.Circle(new Mappy.api.geo.Coordinates(lon,lat), rayon);
            shapeLayer.addShape(circle);
            var newStyle = new Mappy.api.map.shape.ShapeStyle({
              lineWidth : 1,
              strokeStyle : "FFFF00FF",
              fillStyle : "FFFF00FF"
            });
            circle.setStyle(newStyle);

        //FONCTION D'AFFICHAGE DES TERMINAUX
            jQuery.getJSON("http://www.viacombi.eu/fr/wp-content/themes/viacombi/_fonctions/terminaux.php?depart_lon="+lon+"&depart_lat="+lat, function(data){

                    alert(lon);
            
                    for(var r in data){
                      var icon = new Mappy.api.ui.Icon(Mappy.api.ui.Icon.DEFAULT);
                      icon.label = data[r].terminal;
                      var marker = new Mappy.api.map.Marker(new Mappy.api.geo.Coordinates(data[r].longitude, data[r].latitude), icon);
                      marker.addToolTip('This is marker');
                      marker.addListener("click", function() {
                          marker.openPopUp('Informations');
                      });
                      markerLayer.addMarker(marker);
                    }
                    var arrPois = markerLayer.getMarkers();
                    for(var i=0; i < arrPois.length; i++) {
                      arrPois[i].show();
                    }
                }
            );
        });//FIN FONCTION DE GEOCODAGE
        
      }
      if (OAjax.readyState == 1){
        document.getElementById('conteneur_loading').style.visibility = 'visible';
        document.getElementById('conteneur_loading').innerHTML = '<div id="chargement">chargement...<br /><img src="http://www.viacombi.eu/image/chargement.gif" /></div>';
      }
    }

    OAjax.open("POST","http://www.viacombi.eu/fr/wp-content/themes/viacombi/decider/application/resultat_terminal.php",true);
    OAjax.setRequestHeader('Content-type','application/x-www-form-urlencoded');
    OAjax.send(str);
  }
}

