/*******************************************************************************
____________________________ API DOCUMENTATION BEGIN ___________________________
````````````````````````````````````````````````````````````````````````````````
Sniffs browser.

````````````````````````````````````````````````````````````````````````````````
_____________________________ API DOCUMENTATION END ____________________________
*******************************************************************************/

//CLASS CONSTRUCTOR-- builds browser information object
function _browserInfo()
{
 var navAppName = navigator.appName.toLowerCase();
 var navUserAgent = navigator.userAgent.toLowerCase();
 if((navAppName.indexOf("microsoft")>=0) && !(navUserAgent.indexOf("opera")>=0)) //if IE
 {
  this.ie = true;
	var start_pos = navUserAgent.indexOf("msie") + 4;
	this.majorVersion = parseInt(navUserAgent.substring(start_pos));
 }
 else if((navUserAgent.indexOf("firefox")>=0)) //if Firefox
 {
  this.firefox = true;
	var start_pos = navUserAgent.indexOf("firefox/") + 8;
	this.majorVersion = parseInt(navUserAgent.substring(start_pos));
 }
 else if((navUserAgent.indexOf("safari")>=0) && !(navUserAgent.indexOf("chrome")>=0)) //if Safari
 {
  this.safari = true;
	var start_pos = navUserAgent.indexOf("version/") + 8;
	this.majorVersion = parseInt(navUserAgent.substring(start_pos));
 }
 else if((navUserAgent.indexOf("chrome")>=0) && (navUserAgent.indexOf("safari")>=0)) //if Chrome
 {
  this.chrome = true;
	var start_pos = navUserAgent.indexOf("chrome/") + 7;
	this.majorVersion = parseInt(navUserAgent.substring(start_pos));
 }
 else if(navUserAgent.indexOf("opera")>=0) //if Opera
 {
  this.opera = true;
	var start_pos = navUserAgent.indexOf("opera") + 6;
	this.majorVersion = parseInt(navUserAgent.substring(start_pos));
 }
 else if((navAppName.indexOf("netscape")>=0) && !(navUserAgent.indexOf("opera")>=0) && !(navUserAgent.indexOf("safari")>=0) && !(navUserAgent.indexOf("firefox")>=0)) //if Netscape 
 {
	this.ns = true;
 }

 //identify platform
 var browserPlatform = navigator.platform.toLowerCase();
 if(browserPlatform.indexOf("wince")>=0) this.isWinCE = true;
 else if(browserPlatform.indexOf("win")>=0) this.isWin = true;
 else if(browserPlatform.indexOf("mac")>=0) this.isMac = true;
 else this.isWin = true; //default to win platform if platform is not identified
}

gBrowser = new _browserInfo();