// 09/10/2008 02:33am
var globs = "apikey=nicowebv3";
var uriBase = document.getElementById("urlIdentifier").getAttribute("content");
var uriWs = uriBase+"ws/Travelergame/";
var urls = new Array();
urls['ants'] = uriWs+"ants-0.1.php";
urls['antsc'] = uriWs+"antsc-0.1.php";
urls['antss'] = uriWs+"antss-0.1.php";

var timeoutID = null;
var updateTimerID = null;
var cpt_time = 0;

/* * initBoxes () * */
function initBoxes () {
	return true;	
}

/* * addNewTravelergameSession ( float lat , float lng ) */
function addNewTravelergameSession (lat,lng) {
	$('launchsessionbutton').style.display = 'none';
	
	var opts = { method : 'post' , parameters : globs,
		onSuccess : function (r) { //alert(r.responseText);
			// xml.parser
			var xml = r.responseXML;
			var message = xml.getElementsByTagName('message')[0].firstChild.nodeValue; $('serverResponse').innerHTML = message;
			var id_type_poi = xml.getElementsByTagName('id_type_poi')[0].firstChild.nodeValue; //alert(id_type_poi);
			var id_niveaudifficulte = xml.getElementsByTagName('id_niveaudifficulte')[0].firstChild.nodeValue;
			var id_poi = xml.getElementsByTagName('id_poi')[0].firstChild.nodeValue;
			var id_session = xml.getElementsByTagName('id_session')[0].firstChild.nodeValue;
			var titre_poi = xml.getElementsByTagName('titre_poi')[0].firstChild.nodeValue;
			var nb_point = xml.getElementsByTagName('nb_point')[0].firstChild.nodeValue;
			var titre_niveaudifficulte = xml.getElementsByTagName('titre_niveaudifficulte')[0].firstChild.nodeValue;
			var titre_type_poi = xml.getElementsByTagName('titre_type_poi')[0].firstChild.nodeValue;
			
			$('id_type_poi').value = id_type_poi;
			$('id_poi').value = id_poi;
			$('id_niveaudifficulte').value = id_niveaudifficulte;
			$('id_session').value = id_session;
			$('titre_poi').value = titre_poi;
			$('nb_point').value = nb_point;
			$('titre_niveaudifficulte').value = titre_niveaudifficulte;
			$('titre_type_poi').value = titre_type_poi;
			
			// button-info
			$('is_session_started').style.display = "inline";
			
			// gmaps.event
			retevent = GEvent.addListener(map, "click", function(overlay, point) {
			  var marker = new GMarker(point);
		    map.addOverlay(marker); //$('logData').value = point.lat()+","+point.lng()+";";
		    var ret0 = addNewTravelergameSessionCoup (point.lat(),point.lng());
		    TimerStop();
		    // button-info
				$('is_sessioncoup_started').style.display = "none";
			});
			
			Timer();
			// button-info
			$('is_sessioncoup_started').style.display = "inline";
			
			}
		/*onFailure : function (r) { alert(r.responseText); }, 
		, onComplete : function (r) {  alert(r.responseText); }*/
	}
	new Ajax.Request(urls['ants'],opts);

}


/* * addNewTravelergameSessionCoup ( float lat , float lng ) */
function addNewTravelergameSessionCoup (lat,lng) {
	// button-info
	$('is_sessioncoup_started').style.display = "none";
	
	var opts = { method : 'post' , parameters : globs+"&id_poi="+$('id_poi').value+"&lat="+lat+"&lng="+lng+"&id_session="+$('id_session').value,
		onSuccess : function (r) { //alert(r.responseText);alert(r.responseXML);
			// xml.parser
			var xml = r.responseXML;
			var message = xml.getElementsByTagName('message')[0].firstChild.nodeValue; $('serverResponse').innerHTML = message;
			var statut = xml.getElementsByTagName('status')[0].firstChild.nodeValue; //if(statut!="livesession") alert(statut);
			if(statut!="finished"){
				var id_type_poi = xml.getElementsByTagName('id_type_poi')[0].firstChild.nodeValue; //alert(id_type_poi);
				var id_niveaudifficulte = xml.getElementsByTagName('id_niveaudifficulte')[0].firstChild.nodeValue;
				var id_poi = xml.getElementsByTagName('id_poi')[0].firstChild.nodeValue;
				var id_session = xml.getElementsByTagName('id_session')[0].firstChild.nodeValue;
				var titre_poi = xml.getElementsByTagName('titre_poi')[0].firstChild.nodeValue;
				var nb_point = xml.getElementsByTagName('nb_point')[0].firstChild.nodeValue;
				var last_nb_point = xml.getElementsByTagName('last_nb_point')[0].firstChild.nodeValue;
				var titre_niveaudifficulte = xml.getElementsByTagName('titre_niveaudifficulte')[0].firstChild.nodeValue;
				var titre_type_poi = xml.getElementsByTagName('titre_type_poi')[0].firstChild.nodeValue;
				var last_distance = xml.getElementsByTagName('last_distance')[0].firstChild.nodeValue;
				
				$('id_type_poi').value = id_type_poi;
				$('id_poi').value = id_poi;
				$('id_niveaudifficulte').value = id_niveaudifficulte;
				$('id_session').value = id_session;
				$('titre_poi').value = titre_poi;
				$('nb_point').value = nb_point;
				$('last_nb_point').value = last_nb_point;
				$('titre_niveaudifficulte').value = titre_niveaudifficulte;
				$('titre_type_poi').value = titre_type_poi;
				$('last_distance').value = last_distance;
				
				// button-info
				$('is_session_started').style.display = "inline";
				
				// gmaps.event
				retevent = GEvent.addListener(map, "click", function(overlay, point) {
				  var marker = new GMarker(point);
			    map.addOverlay(marker); //$('logData').value = point.lat()+","+point.lng()+";";
			    var ret0 = addNewTravelergameSessionCoup (point.lat(),point.lng());
			    TimerStop();
			    // button-info
					$('is_sessioncoup_started').style.display = "none";
				});
				
				Timer();
				
				// button-info
				$('is_sessioncoup_started').style.display = "inline";
			}
			else if(statut=="finished"){
				// reinit
				$('map').style.display = 'none';
				$('hidewhenfinished').style.display = 'none';
				
				// button-info
				$('is_session_started').style.display = "none";
			}
			else if(statut=="aborted") {
				alert("ERREUR :: impossible de continuer la session.<br/>");
			}
			
			// map
			map.clearOverlays();
			
			}
		/*onFailure : function (r) { alert(r.responseText); }, 
		, onComplete : function (r) {  alert(r.responseText); }*/
	}
	new Ajax.Request(urls['antsc'],opts);
	var ret1 = GEvent.removeListener(retevent);
	
}

/* * Timer () * */
function Timer(){   // 5 secondes d'attente
   timeoutID = window.setTimeout("addNewTravelergameSessionCoup(0,0)",5000);
}

/* * TimerStop () * */
function TimerStop(){      //Arret de la boucle
   window.clearTimeout(timeoutID);
}

/* * addNewTravelergameSessionScore (  ) */
function addNewTravelergameSessionScore () {
	
	var opts = { method : 'post' , parameters : globs+"&nom="+$('nom').value+"&email="+$('email').value+"&site_web="+$('site_web').value+"&id_session="+$('id_session_score').value+"&nb_point="+$('nb_point_score').value,
		onSuccess : function (r) { 
			//$('boxTPLoad').style.display='none'; 
			}
		/*onFailure : function (r) { alert(r.responseText); }, 
		, onComplete : function (r) {  alert(r.responseText); }*/
	}
	new Ajax.Updater("serverResponse",urls['antss'],opts);
}

//## GMAPS ##
var map = null;
var retevent = null;
/* * gload () * */
function gload () {
	// init
	map = new GMap2($("map"));
	map.setCenter(new GLatLng(17,10));	// (val,val) (haut-bas,gauche-droite)
	map.setZoom(2);
	map.disableDragging();
}