﻿// Création 30/07/2005
// Révision 12/01/2006
// Projet WonderLamp

// Recueillir, prétraiter, ordonner les informations de session
// et les transmettra à WonderLamp

CLogger.prototype = new CObject("CLogger");
// 12/01/2005 Constructeur
function CLogger()
{
//alert("logger javascript lancé");
// Mise à jour du suivi de version:
this.version = "0.10";
this.maj = "12/01/2006";

	// 30/07/2005 Renvoyer la signature sous forme litterale
	this.getSig = function()	
	{
		result = "";
		result = result + navigator.appName;
		result = result + "-" + navigator.platform;
		result = result + "-" + navigator.appMinorVersion;
		result = result + "-" + navigator.userAgent;
		result = result + "-" + navigator.mimeTypes.length.toString();	
		result = result + "-" + navigator.plugins.length.toString();
		result = result + "-" + screen.width.toString();	
		result = result + "-" + screen.height.toString();	
		return result;
	}

	// 30/07/2005 Renvoyer la signature sous forme compressée (nn-nnnnn)
	this.getCompSig = function()	
	{
		s =  this.getSig();
		n = 0;
		for (var i = 0; i < s.length; i++)
		{
			n = n + s.charCodeAt(i);
		}
		return s.length.toString() + "-" + n.toString();
	}	
	
	// 02/01/2005 Pour reconnaitre firefox
	this.getAppName = function()	
	{
		s = navigator.appName;
		if (s == "Netscape")
		{
			if (navigator.userAgent.indexOf("Firefox",0) > 0 )
				s = "Firefox" ;
		}
		return s;
	}
	
	// Rendre une chaine contenant les infos en xml
	this.toXml = function() 
	{
		// Créer une chaîne xml avec les éléments environnement javascript
		s = "";
		s += "<connect>";
		s += 	"<agent>";
		s += 		"<platform>" + navigator.platform + "</platform>";	
		s += 		"<appname>" + this.getAppName() + "</appname>";	
		s += 		"<signature>";	
		s += 			this.getCompSig();
		s += 		"</signature>";	
		s += 		"<lang>";		
		s += 		"</lang>";			
		s += 	"</agent>";
		s += 	"<screen>";
		s += 		"<width>";
		s += 			screen.width.toString();
		s += 		"</width>";
		s += 		"<height>";
		s += 			screen.height.toString();
		s += 		"</height>";
		s += 	"</screen>";
		s += 	"";
		s += "</connect>";
		return s;
	}
	
	return this.toXml();
}







	
	

