// JavaScript Document
//Browser detection

	function getSysInfo(){
		var infoObj = getBrowserInfo();
		infoObj.os = getOsInfo();
		return infoObj;
	}

	function getBrowserInfo(){
		var nVer = navigator.appVersion;
		var nAgt = navigator.userAgent;
		var nameOffset;
		var verOffset;
		var ix;
		
		var brovserInfoObj ={};
		brovserInfoObj.browserName  = navigator.appName; 
		brovserInfoObj.fullVersion  = ''+parseFloat(navigator.appVersion); 
		brovserInfoObj.majorVersion = parseInt(navigator.appVersion,10);
	
		// In MSIE, the true version is after "MSIE" in userAgent
		if ((verOffset=nAgt.indexOf("MSIE"))!=-1) {
			brovserInfoObj.browserName = "Microsoft Internet Explorer";
			brovserInfoObj.fullVersion = nAgt.substring(verOffset+5);
		}
		// In Opera, the true version is after "Opera" 
		else if ((verOffset=nAgt.indexOf("Opera"))!=-1) {
			brovserInfoObj.browserName = "Opera";
			brovserInfoObj.fullVersion = nAgt.substring(verOffset+6);
		}
		// In Chrome, the true version is after "Chrome" 
		else if ((verOffset=nAgt.indexOf("Chrome"))!=-1) {
			brovserInfoObj.browserName = "Chrome";
			brovserInfoObj.fullVersion = nAgt.substring(verOffset+7);
		}
		// In Safari, the true version is after "Safari" 
		else if ((verOffset=nAgt.indexOf("Safari"))!=-1) {
			brovserInfoObj.browserName = "Safari";
			brovserInfoObj.fullVersion = nAgt.substring(verOffset+7);
		}
		// In Firefox, the true version is after "Firefox" 
		else if ((verOffset=nAgt.indexOf("Firefox"))!=-1) {
			brovserInfoObj.browserName = "Firefox";
			brovserInfoObj.fullVersion = nAgt.substring(verOffset+8);
		}
		// In most other browsers, "name/version" is at the end of userAgent 
		else if ( (nameOffset=nAgt.lastIndexOf(' ')+1) < (verOffset=nAgt.lastIndexOf('/')) ) {
			brovserInfoObj.browserName = nAgt.substring(nameOffset,verOffset);
			brovserInfoObj.fullVersion = nAgt.substring(verOffset+1);
			if (browserName.toLowerCase()==browserName.toUpperCase()) {
				brovserInfoObj.browserName = navigator.appName;
			}
		}
		// trim the fullVersion string at semicolon/space if present
		if ((ix=brovserInfoObj.fullVersion.indexOf(";"))!=-1) brovserInfoObj.fullVersion=brovserInfoObj.fullVersion.substring(0,ix);
		if ((ix=brovserInfoObj.fullVersion.indexOf(" "))!=-1) brovserInfoObj.fullVersion=brovserInfoObj.fullVersion.substring(0,ix);
	
		brovserInfoObj.majorVersion = parseInt(''+brovserInfoObj.fullVersion,10);
		if (isNaN(brovserInfoObj.majorVersion)) {
			brovserInfoObj.fullVersion  = ''+parseFloat(navigator.appVersion); 
			brovserInfoObj.majorVersion = parseInt(navigator.appVersion,10);
		}
		return brovserInfoObj;
	}
	
	function getOsInfo(){
		var osName="Unknown OS";
		if (navigator.appVersion.indexOf("Win")!=-1) osName="Windows";
		if (navigator.appVersion.indexOf("Mac")!=-1) osName="MacOS";
		if (navigator.appVersion.indexOf("X11")!=-1) osName="UNIX";
		if (navigator.appVersion.indexOf("Linux")!=-1) osName="Linux";
		return osName
	}

