var childMoveTimeout= setTimeout(updateChildMove, 500000);
var currentScoreTimeout=setTimeout(updateCurrentScore, 500000);
var stopUpdate=false; setTimeout(function(){stopUpdate=true;},120000);
var http = createRequestObject();
var http2= createRequestObject();
var http3= createRequestObject();
var http4= createRequestObject();
function ChargementCommentaire(id,user){http = createRequestObject();sndReq(id,user);}
function ChargementCommentaire(id){http = createRequestObject();sndReq(id);}

function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}



function sndReq(id,user) {
    http.open('get', 'AJAX/getComments.php?id='+id+'&user='+user);
    http.onreadystatechange = handleResponse;
    http.send(null);
}
function sndReq(id) {
    http.open('get', 'AJAX/getComments.php?id='+id);
    http.onreadystatechange = handleResponse;
    http.send(null);
}

function handleResponse() {
    if(http.readyState == 4){
        var response = http.responseText;
       var ans = document.getElementById('comment');
			ans.innerHTML=response;        
    }
}

function deleteComment(id,nodeid,user){
	http = createRequestObject();
	sndReqDelete(nodeid);
	wait(2);
	ChargementCommentaire(id,user);
}

function sndReqDelete(id) {
    http.open('get', 'AJAX/deleteComment.php?id='+id);
    http.onreadystatechange = handleResponse;
    http.send(null);
}

function ajoutCommentaire(){
	http = createRequestObject();
	var id = document.forms['ajout'].id.value;
	var user = document.ajout.user.value;
	var text  = document.ajout.text.value;
	var private = document.ajout.private.checked;
	
	sndReqAdd(id,user,private,text);
	wait(2);
	ChargementCommentaire(id,user);
	document.ajout.text.value="";
}


function sndReqAdd(id,user,private,text) {
	text  = text.replace(/String.fromCharCode(13)/gi,"<br>");
    http.open('get', 'AJAX/addComment.php?id='+id+'&user='+user+'&private='+private+'&text='+text);
    http.onreadystatechange = handleResponse;
    http.send(null);
}

function wait(millis){
var date = new Date();
var curDate = null;

do { curDate = new Date(); } 
while(curDate-date < millis*1000);
}

var upId;
var upLg;
var upnomenu;
var uppat;

function updateChildMove(id,lg,nomenu,pat) {
	var param = 'id='+id+'&lg='+lg+'&nomenu='+nomenu;
	uppat=pat;
    http3.open('post', 'AJAX/opening/ChildMove.php',true);
	http3.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http3.setRequestHeader("Content-length", param.length);
	http3.setRequestHeader("Connection", "close");
    http3.onreadystatechange = handleResponseChildMove;
    http3.send(param);
	
}


function updateChildMove(){
	var param = 'id='+upId+'&lg='+upLg+'&nomenu='+upnomenu;
	http3.open('post', 'AJAX/opening/ChildMove.php',true);
	http3.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http3.setRequestHeader("Content-length", param.length);
	http3.setRequestHeader("Connection", "close");
    http3.onreadystatechange = handleResponseChildMove;
    http3.send(param);
	clearTimeout(childMoveTimeout);
	if (!stopUpdate)
		childMoveTimeout =setTimeout(updateChildMove, 5000);
}

function updateCurrentScore(){
	var dataParam = 'id='+upId  ;
	$.get('/AJAX/opening/currentScore.php?id=' + upId, function(data) {
		  
		
		  if (data != "Error"){
			var ans = document.getElementById('CurrentScore');
			ans.innerHTML=data;
			
		}
	});
	 clearTimeout(currentScoreTimeout);
	 if (!stopUpdate)
		currentScoreTimeout=setTimeout(updateCurrentScore, 5000);
}

function handleResponseChildMove() {
    if(http3.readyState == 4){
        var response = http3.responseText;
		if (response != "Error"){
			var ans = document.getElementById('ChildMove');
			response = response.replace(/:path:/g, uppat)
			ans.innerHTML=response;
		}
		$('#ChildMove').trigger('cleanBoard');
    }
}

function lessPopUp(URL,id,lg,nomenu,pat) {
		
		$.get(URL, function(data) {
			if ( data.indexOf('error') ==  -1){
				Notifier.success(data);
			}else{
				Notifier.warning(data);
			}
		});
	    if (URL.indexOf("priority") != -1){
		    upId = id;
		    upLg = lg;
		    upnomenu = nomenu;
		    uppat = pat;
		    clearTimeout(childMoveTimeout);
		    clearTimeout(currentScoreTimeout);
		    childMoveTimeout=setTimeout(updateChildMove, 2000);
		    currentScoreTimeout=setTimeout(updateCurrentScore, 2500);
	    }
	    
	    if ( URL.indexOf("addToFavorite") != -1){
		 	document.getElementById('NFStar').style.visibility = "hidden";
		 	document.getElementById('Star').style.visibility = "visible";   
	    }
	    
	     if ( URL.indexOf("removeFavorite") != -1){
		 	document.getElementById('NFStar').style.visibility = "visible";
		 	document.getElementById('Star').style.visibility = "hidden";   
	    }
} 

function copyPaste(move){
			$('#copyPasteZone').html(move);
		}

