
//Scripts au benchmark
function sendBrowserInfoToUnity() 
{
	var lBrowserInfo;
	lBrowserInfo = 'document.URL = '+document.URL+'\n';
	lBrowserInfo += 'location.hostname = '+location.hostname+'\n';
	lBrowserInfo += 'location.href = '+location.href+'\n';
	lBrowserInfo += 'navigator.appCodeName = '+navigator.appCodeName+'\n';
	lBrowserInfo += 'navigator.appName = '+navigator.appName+'\n';
	lBrowserInfo += 'navigator.appVersion = '+navigator.appVersion+'\n';
	lBrowserInfo += 'navigator.cookieEnabled = '+navigator.cookieEnabled+'\n';
	lBrowserInfo += 'navigator.language = '+((navigator.language)?navigator.language:navigator.userLanguage)+'\n';
	lBrowserInfo += 'navigator.platform = '+navigator.platform+'\n';
	lBrowserInfo += 'navigator.userAgent = '+navigator.userAgent+'\n';
	lBrowserInfo += 'navigator.javaEnabled = '+((navigator.javaEnabled())?'TRUE':'FALSE')+'\n';
	lBrowserInfo += 'history.length = '+history.length+'\n';
	if (DetectUnityWebPlayer())
		GetUnity().SendMessage('Corpus', 'setBrowserInfo', lBrowserInfo);
	else
		sendBenchRecordDirect("Warning: Javascript function sendBrowserInfoToUnity(): Unable to find unity web player","BROWSER");
}

//Demander à unity de faire un enregistrement § une ligne de benchmark
function sendBenchRecordByUnity(pTag)
{
	if (DetectUnityWebPlayer())
		GetUnity().SendMessage('Corpus', 'sendRecord', pTag);
	else
		sendBenchRecordDirect("Warning: Javascript function sendBenchRecordByUnity(): Unable to find unity web player","BROWSER");
}

//Envoyer un enregistrement sans passer par unity
//Les informations propres à unity ne sont pas enregistées
//Un peu d'ajax pour ne pas avoir à recharger la page
function sendBenchRecordDirect(pLog,pTag)
{
	var lHttpRequest;
	//créer l'objet lHttpRequest suivant le type de navigateur
    try {  lHttpRequest = new ActiveXObject('Msxml2.XMLHTTP');   }
    catch (e) 
    {
        try {   lHttpRequest = new ActiveXObject('Microsoft.XMLHTTP');    }
        catch (e2) 
        {
          try {  lHttpRequest = new XMLHttpRequest();     }
          catch (e3) {  lHttpRequest = false;   }
        }
     }
     //Lancer la requette
     if(lHttpRequest)
     {
     	var lHttpAcquitment = false;
     	lHttpRequest.onreadystatechange=function()
     	{
	        if (lHttpRequest.readyState == 4) /* 4 : état "complete" */
	        {
	           if (lHttpRequest.status == 200) /* 200 : code HTTP pour OK */
	           {
	              //alert("HttpAcquitment");
	              lHttpAcquitment = true;
	           }
	        }
	     }

     	//C'est la présence du champ frame qui indique à CcBenchSet.php que l'on doit réaliser un enregistrement
     	//ici -1 vu que l'on ne connait pas le numéro de frame unity
     	var lPostData = "frame=-1&log="+pLog+"&tag="+pTag;
     	lHttpRequest.open( "POST", "CcBenchSet.php",  true); 
     	lHttpRequest.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
  		lHttpRequest.send(lPostData); 
  		//alert("sendBenchRecordDirect END");
     }
}

//Envoyer un enregistrement spécifique pour le téléchargement
//sans paramètres pour ie6
function sendBenchDownloadStart()
{
	var installerPath = GetUnityInstallerPath();
	sendBenchRecordDirect('JavaScript: EmbedUnity - Start downloading: '+installerPath ,'DOWNLOAD START');
}