/* conversion d'une chaine décimal en chaine hexadécimale */
var testVbScript = 1;
var resolutionX = screen.width;
var resolutionY = screen.height;
var resolutionUtileX = screen.availWidth;
var resolutionUtileY = screen.availHeight;
var couleurs = screen.colorDepth;
var resolution = resolutionX+"x"+resolutionY;

var flashInstalled=false;
var flashVersion;
var flashFilename;
var SVGInstalled=false;
var SVGVersion;
var SVGFilename;
var pdfInstalled=false;
var pdfVersion;
var pdfFilename;
var javaInstalled=false;

var fuseauHoraire=(new Date()).getTimezoneOffset( );

var nomNavigateur=null; 
var versionNavigateur;
var os;
var langue;
var gecko;
var geckoVersion;
var agentUser;
var xmlCompatible;
var spVersion;

try{
document.write('<scr'+'ipt type="text/vbscr'+'ipt">');
document.write('testVbScript=2');
document.write('</scr'+'ipt>');
}
catch(e){
}
var vbscriptEnabled=(testVbScript==2);
var cookiesEnabled=navigator.cookieEnabled;

function decToHex(chaine){
	var reste;
	var quotient;
	var resultat="";
	var chiffresHexa="0123456789ABCDEF";
	if(quotient=parseInt(chaine)){
		while(quotient>0){
			reste=(quotient%16);
			resultat=chiffresHexa.charAt(reste)+resultat;
			quotient=Math.floor(quotient/16);
		}
		return(resultat);
	}else{
		return(0);
	}
}

function detectIE(ClassID,versionInitiale,testVersion) {
//	if(!window.ActiveXObject)return("");
	var versionInit=1;
	if(versionInitiale!=null){
		versionInit=versionInitiale;
	}

	if(!vbscriptEnabled)return("");

	try{
		result = true;
		if(testVersion==null){
			myVersion = versionInitiale-1;
			while(result==true){
				result=false;
				myVersion++;
				document.write('<script LANGUAGE=VBScript>\n');
				document.write('on error resume next \n');
				document.write('result = IsObject(CreateObject("' + ClassID + '.'+myVersion+'"))\n');
				document.write('</script>\n'); 
//				objet=eval("new ActiveXObject('"+ClassID+"."+myVersion+"');");
//				if(objet){
//					result=true;
//				}
			}
			myVersion--;
			if(myVersion>=versionInit)
				return(myVersion);
			else{
				if(versionInitiale!=null){
					myVersion = versionInitiale;
					result=false;
					while((result==false)&&(myVersion>0)){
						result=false;
						myVersion--;
				document.write('<script LANGUAGE=VBScript>\n');
				document.write('on error resume next \n');
				document.write('result = IsObject(CreateObject("' + ClassID + '.'+myVersion+'"))\n');
				document.write('</script>\n'); 
//						objet=eval("new ActiveXObject('"+ClassID+"."+myVersion+"');");
//						if(objet){
//							result=true;
//						}
					}
					if(myVersion>0)
						return(myVersion);
					else{
						return('');
					}
				}else{
					return('');
				}
			}
		}else{
			document.write('<scri'+'pt type="text/vbscript">\n');
			document.write('on error resume next \n');
			document.write('dim obj\n\n');
			document.write('Set obj = CreateObject("' + ClassID + '.1")\n');
			document.write('result = IsObject(obj)\n');
			document.write('If result Then\n');
			document.write('  myVersion = '+testVersion+'\n');
			document.write('Else\n');
			document.write('  myVersion = 0\n');
			document.write('End If\n');
			document.write('</scrip'+'t>\n'); 
/*			alert("new ActiveXObject('"+ClassID+".1');");
			objet=eval("new ActiveXObject('"+ClassID+"."+myVersion+"');");
			if(objet){
				result=true;
				eval("myVersion="+testVersion+";");
			}else{
				result=false;
				myVersion=0;
			}*/
			if(myVersion>0){
				return(myVersion);
			}
			else return('');
		}
	}
	catch(e){
		return('');
	}
}

function detectPlugins(){
	var pluginlist="";
	if(window.navigator.plugins){
		if(window.navigator.plugins.length)
			for(var i=0;i<window.navigator.plugins.length;i++){
			plugin=window.navigator.plugins[i];
//			alert(plugin.name);
			if(plugin.name.indexOf("Shockwave")>-1){
				flashInstalled=true;
				flashVersion=plugin.description;
				flashFilename=plugin.filename;
				pluginFlash=plugin;
			}else{
				if(plugin.name.indexOf("Adobe Acrobat")>-1){
					pdfInstalled=true;
					pdfVersion=plugin.description;
					pdfFilename=plugin.filename;
				}
				if(plugin.name.indexOf("Adobe SVG Viewer")>-1){
					SVGInstalled=true;
					SVGVersion=plugin.description;
					SVGFilename=plugin.filename;
				}
				if(pluginlist.indexOf(plugin.description)<0){
					pluginlist+=plugin.name+" : "+plugin.description+"<br />";
				}
			}
		}
	}

/*	if(!directorInstalled)var pDirector = detectIE("SWCtl.SWCtl.1");
    var pQuicktime = plugIE("QuickTimeCheckObject.QuickTimeCheck.1");
    var pReal  = plugIE("rmocx.RealPlayer G2 Control.1");
    var pWinMedia = plugIE("MediaPlayer.MediaPlayer.1");*/
	
	/* plugin SVG */
	if(!SVGInstalled){
		SVGVersion=detectIE("Adobe.SVGCtl",12);
//		flashVersion=detectIE("ShockwaveFlash.ShockwaveFlash",null,"decToHex(objet.flashVersion()).charAt(0)");
		if(SVGVersion){
			SVGInstalled=true;
		}	
	}
	/* recherche de la version flash pour IE */
	if(!flashInstalled){
		flashVersion=detectIE("ShockwaveFlash.ShockwaveFlash",null,"Left(Hex(Int(obj.flashVersion)),1)");
//		flashVersion=detectIE("ShockwaveFlash.ShockwaveFlash",null,"decToHex(objet.flashVersion()).charAt(0)");
		if(flashVersion){
			flashInstalled=true;
		}	
	}else{
		flashVersion = flashVersion.replace(/^[^0-9]*([0-9]*.*)$/,"$1");
	}
	/* recherche de la version acrobat reader pour IE */
	if(!pdfInstalled){
		pdfVersion=detectIE("PDF.PdfCtrl",11); 
		if(pdfVersion){
			if(pdfVersion=="1")pdfVersion="4.0";
			pdfInstalled=true;
		}	
	}else{
		pdfVersion = pdfVersion.replace(/^[^0-9]*([0-9]*.*)$/,"$1");
	}
	javaInstalled=(navigator.javaEnabled());
	if(!javaInstalled){
		if((nomNavigateur="K-Meleon")&&(parseFloat(versionNavigateur)<0.82)){
			javaInstalled=null;
		}
	}
}


function detectBrowserAndOS(){
	var V=navigator.appVersion;
	
	spVersion = navigator.appMinorVersion;
	
	agentUser=navigator.userAgent;

	nomNavigateur=navigator.appName; 
	
	gecko=(typeof(navigator.product)!="undefined");
	if(gecko){
		geckoVersion=navigator.productSub;
		xmlCompatible=true;
	}
	if(window.navigator.userAgent.search(/[^a-z,A-Z]?Opera[^a-z,A-Z]?/i)>-1){
		nomNavigateur="Opera";
	}
	if(window.navigator.userAgent.search(/[^a-z,A-Z]?Firefox[^a-z,A-Z]?/i)>-1){
		nomNavigateur="Firefox";
	}
	if(window.navigator.userAgent.search(/[^a-z,A-Z]?K-Meleon[^a-z,A-Z]?/i)>-1){
		nomNavigateur="K-Meleon";
	}
	switch(nomNavigateur){
		case "Microsoft Internet Explorer":
			langue=navigator.systemLanguage;
			versionNavigateur=V.substring(V.indexOf("MSIE",0)+5,V.indexOf(";",V.indexOf("MSIE",0)));
			if (V.indexOf("Win",0)>0) {
				if ( V.indexOf(";",V.indexOf("Win",0)) > 0 ) {
					os=V.substring(V.indexOf("Win",0),V.indexOf(";",V.indexOf("Win",0)));
				} else {
					os=V.substring(V.indexOf("Win",0),V.indexOf(")",V.indexOf("Win",0)));
				}
			}
			if (V.indexOf("Mac",0)>0) {
				os="Macintosh";
				versionNavigateur=V.substring(V.indexOf("MSIE",0)+5,V.indexOf("?",V.indexOf("MSIE",0)));
			}
			break;
		case "Opera":
			langue=navigator.language;
			versionNavigateur=V.substring(0,V.indexOf("(",0));
			if(parseInt(versionNavigateur)>=4){
				xmlCompatible=true;
			}
			os=V.substring(V.indexOf("(",0)+1,V.indexOf(";",0));
			if(os=="compatible"){
				os=V.replace(/.*;([^;)]*)\).*/,"$1");
			}
			break;
		case "Firefox":
			langue=navigator.language;
			versionNavigateur=window.navigator.userAgent.replace(/(.*[^a-z,A-Z]?Firefox\/)([^ ]*)(.*)/i,"$2");
			xmlCompatible=true;
			os=V.substring(V.indexOf("(",0)+1,V.indexOf(";",0));
			if(os=="compatible"){
				os=V.replace(/.*;([^;)]*)\).*/,"$1");
			}
			break;
		case "K-Meleon":
			langue=navigator.language;
			versionNavigateur=window.navigator.userAgent.replace(/(.*[^a-z,A-Z]?K-Meleon\/)([^ ]*)(.*)/i,"$2");
			os=V.substring(V.indexOf("(",0)+1,V.indexOf(";",0));
			if((parseFloat(versionNavigateur)<0.82)&&(!javaInstalled)){
				javaInstalled=null;
			}
			break;
		case "Netscape":
			langue=navigator.language;
			versionNavigateur=(V.substring(0,V.indexOf("(",0)));
			if (navigator.vendor=="") { // Mozilla
				nomNavigateur="Mozilla";
				if (versionNavigateur==5) {
					versionNavigateur="1";
				}
			} else {	// NS 4 ou 6
				if (versionNavigateur==5) {
					versionNavigateur="6.0";
					if (navigator.vendorSub!="") {
						versionNavigateur=navigator.vendorSub;
					}
				}
			}
			if (V.indexOf("Mac",0)>0) {
				os="Macintosh";
			}
			if (V.indexOf("Linux",0)>0) {
				os="Linux";
			}
			if (V.indexOf("Win",0)>0) {
				os=V.substring(V.indexOf("Win",0),V.indexOf(";",V.indexOf("Win",0)));
			}
			if (navigator.oscpu) {
				os=navigator.oscpu;
			}
			break;
		}
	xmlCompatible=xmlCompatible?true:detectXML();
	if (navigator.oscpu) {
		os=navigator.oscpu;
	}
	os=os.replace(/winnt/ig,"Windows NT ");
}

function detectXML()
{
	var XMLDoc = "<"+"?xml version=\"1.0\"?"+"><IMR>My XML</IMR>"; //XML Document;
	var parsers= new Array("Microsoft.XMLDOM","Msxml2.DOMDocument.2.6","Msxml2.DOMDocument.3.0","Msxml2.DOMDocument.4.0");

	if(nomNavigateur==null)detectBrowserAndOS();
	if(xmlCompatible)return(true);
	if(!window.ActiveXObject){
		return(false);
		
	}

	ok=false;
	for(var i=0;(i<parsers.length)&&(!ok);i++){
     		try{
	    		var domDoc = new ActiveXObject(parsers[i]);
	    		domDoc.async=false;
  	    		if (domDoc.loadXML(XMLDoc))
  	    			ok=true;
		}
   		catch (e){};
	}
	return(ok);
}

detectBrowserAndOS();
//detectPlugins();
//detectXML();
window.document.write('<img width="700" height="500" src="/include/statistique.php?js=1&res='+resolution+'&nav='+nomNavigateur+'%20'+versionNavigateur+'&os='+os+'&tz='+fuseauHoraire+'" alt="" style="display:none" />');
